MCP server
Add Joring to Claude Code, Codex, Cursor, Gemini CLI, VS Code, or any MCP client.
Joring hosts an MCP server at https://api.joring.ai/mcp (Streamable HTTP).
Authenticate with an API key as a bearer token, or,
for hosted connectors such as claude.ai and ChatGPT, sign in with OAuth.
The tools the agent sees depend on the scopes the credential carries.
Connect a client
claude mcp add --transport http joring https://api.joring.ai/mcp \
--header "Authorization: Bearer jor_api_..."For agents you build: the Anthropic Messages API takes
mcp_servers: [{ type: "url", url: "https://api.joring.ai/mcp", name: "joring", authorization_token: "jor_api_..." }],
and the OpenAI Responses API takes
tools: [{ type: "mcp", server_label: "joring", server_url: "https://api.joring.ai/mcp", authorization: "jor_api_..." }].
Tools
| Tool | Scope | What it does |
|---|---|---|
get_authoring_guide | read | The rules, field limits, supported AI tools, existing trails, and document schema. Call first. |
list_trails | read | Trails in the workspace, newest first, with status and text filters. |
get_trail | read | One trail: document, revision, and what still blocks publishing. |
list_versions | read | Published versions of a trail. |
create_trail | write | A new draft from a title or a full document. |
update_trail | write | Save the full document (and optionally visibility). Sends the revision it read; a stale revision returns the current document instead of overwriting. |
test_surfacing | write | Whether the trail would surface for one prompt, and which live trail wins otherwise. |
run_surfacing_examples | write | Run every trigger example and record the result. All must pass before publishing. |
restore_version | write | Replace the draft with an earlier version's document. |
publish_trail | publish | Make the draft live for employees. |
unpublish_trail | publish | Take a live trail back to draft. |
Tools the key cannot call are not listed. The server's instructions tell the agent to read the guide first, iterate until the examples pass, and ask you before publishing or unpublishing.
Errors the agent can act on
Validation problems, a stale revision, and a missing trail come back as tool
results with isError and a code (validation, revision_conflict,
not_found), plus the detail the agent needs to fix the call: the list of
issues, or the current revision and document. Protocol and server faults are
JSON-RPC errors.
Protocol details
MCP 2026-07-28 (stateless) with session mode for 2025-11-25 clients.
Requests are rate limited per key: 120 in a burst, then one per second. A
401 carries WWW-Authenticate: Bearer realm="joring", scope="trails:read trails:write trails:publish".