> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pome.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# Connect to the MCP

> How to add and authenticate the Pome MCP.

## Prerequisite

Sign in once at [app.pome.sh](https://app.pome.sh). This provisions your Pome
user and workspace/team. Runs, quota, and billing land on that team.

## Auth model

Auth is **Clerk MCP OAuth — there is no manual API key to paste**. An
unauthenticated request gets `401` with a `WWW-Authenticate` header pointing
at the OAuth protected-resource metadata. Modern clients discover this,
self-register (dynamic client registration is enabled), and pop the Clerk
consent screen. After you consent, the tools appear.

## Interactive clients

Claude Code, Claude Desktop, and claude.ai only need the server URL:

```json theme={null}
{
  "mcpServers": {
    "pome": {
      "type": "http",
      "url": "https://mcp.pome.sh/mcp"
    }
  }
}
```

No headers or keys are needed — auth is OAuth, handled by the client's
consent flow. The Claude Code CLI equivalent:

```bash theme={null}
claude mcp add --transport http pome https://mcp.pome.sh/mcp
```

## Headless / managed agents

If there's no browser available, complete the OAuth flow once, interactively,
with the target Pome account. Store the resulting OAuth credentials/refresh
token in the agent platform's credential vault, scoped to the Pome connector.

Verify by having the agent call `get_started`. A `401` means the interactive
mint needs to be redone.

## Verify the connection

The first thing the agent should do is call `get_started`, then
`get_platform_context` to confirm identity, team, and quota headroom. Quota
exhaustion returns HTTP `402`, never `429`.

## Revocation

Authorization is the Clerk OAuth grant. To disconnect:

* Revoke the OAuth application/grant in the Clerk dashboard, or
* Remove the user from the Pome team (\~30s cache TTL).

<Warning>
  Revoking the managed `pme_` key in app.pome.sh does **not** disconnect the
  MCP — the server re-mints it on the next call.
</Warning>

<Note>
  This MCP is the coach surface. It does not run twins itself. See
  [Workflow](/docs/mcp/workflow) for how the coach launches an examinee.
</Note>
