Jern Cloud docs

MCP server and API tokens.

Jern Cloud is an MCP server. Claude Code, Cursor, or an agent of your own can start governed sessions here, follow them, and read their receipts, from where you already work, with a workspace API token that acts as you.

API tokens

An admin creates tokens under Settings, Members. A token is shown once and only its hash is kept. It acts as the member who created it: every call runs under that member's standing and the workspace's approval requirement, concurrency limit, allowances, cap per attempt, plan, and provider keys, exactly as the dashboard would. Revoke it there at any time; it also stops when its creator leaves the workspace. Creation, revocation, and every session started with it are in the audit log.

Connecting a client

The server is https://cloud.jern.ai/mcp, streamable HTTP, one request per call, with Authorization: Bearer <token>. In Claude Code:

claude mcp add --transport http jern-cloud https://cloud.jern.ai/mcp --header "Authorization: Bearer jern_…"

In Cursor or any client that reads a JSON configuration:

{
  "mcpServers": {
    "jern-cloud": {
      "url": "https://cloud.jern.ai/mcp",
      "headers": { "Authorization": "Bearer jern_…" }
    }
  }
}

Tools

ToolWhat it does
list_repositoriesThe repositories connected to the workspace.
list_sessionsRecent sessions with their status and pull request.
start_sessionOpens a session on a repository with a task as its first message; the model and cap default to the workspace's trigger settings. Returns the session id and link.
send_messageThe session's next turn, which becomes a new attempt on a fresh machine and updates the pull request.
get_sessionThe session with its messages, attempts, and receipts: tokens against the cap, estimated spend, files touched, services started, hosts contacted, the receipt check.
get_policyThe baseline a session on the repository would run under.

A refused call, for instance because the workspace has no key for the requested provider or an attempt is already running, comes back as a tool result that says why, so the calling agent can act on it rather than fail.

What stays the same

A session started this way is a session like any other: the repository's pinned baseline, the isolated machine with loopback-only networking, the receipt as a check on the pull request, and the audit trail. The dashboard shows it, and follow-up messages can come from either side.