Prerequisite
Sign in once at 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 gets401 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
Every client needs the same two facts — the namepome and the URL
https://mcp.pome.sh/mcp. No headers and no keys: auth is OAuth, handled by the
client’s own consent flow. This is the page that carries the per-client wiring;
the rest of the docs link here rather than repeating it.
- Claude Code
- Cursor
- Claude Desktop / claude.ai
- Another client
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 callget_started. A 401 means the interactive
mint needs to be redone.
Verify the connection
The first thing the agent should do is callget_started, then
get_platform_context to confirm identity, team, and quota headroom. Quota
exhaustion returns HTTP 402, never 429.
Disconnecting
What you can do yourself: remove thepome server from your MCP client. That
is the whole of the client side — the entry goes, the client stops calling, and
nothing on your machine holds a Pome credential afterwards, because the OAuth
flow never gave you a key to store.
What you have to ask us for: revoking the grant itself. The authorization is
an OAuth grant held by our Clerk instance, and today there is no self-serve
surface for it — app.pome.sh has no “authorized applications” page, and it has no
member-removal screen either. So a grant you want destroyed rather than unused is
support@pome.sh, naming the account.
The practical difference is small and worth knowing: an unused grant authorizes
nothing on its own. It is exercised only by a client that holds the refresh
token, so removing the server entry ends the access in every case except a token
you have already copied somewhere else.
This MCP is the coach surface. It does not run twins itself. See
Evaluate an agent over MCP for how the coach launches an examinee.