MCP server
Recall exposes a Model Context Protocol (MCP) server, so AI assistants can manage your decks and cards in natural language. It runs on the same infrastructure as the REST API, supports OAuth and API-key authentication, and exposes a curated set of high-level tools rather than the full REST surface.
Endpoint
https://mcp.recall.cards/mcpThe server speaks Streamable HTTP. Point any MCP client at this URL.
If you connected before October 2026 with https://api.recall.cards/mcp, that URL keeps working, so there is no need to reconnect.
Authentication
The MCP server supports two ways to authenticate.
OAuth (recommended)
Most MCP clients like Claude or ChatGPT speak OAuth out of the box. Point the client at the endpoint with no credentials and it opens your browser so you can sign in to Recall and approve access. The client registers itself automatically (Dynamic Client Registration), so there is nothing to set up in advance, and Recall issues short-lived access tokens that refresh in the background.
Recall follows the MCP authorization spec: OAuth 2.1 with PKCE, Protected Resource Metadata for authorization-server discovery, and Dynamic Client Registration.
API key
For headless clients (CI jobs, scripts, servers) where a browser sign-in is impractical, authenticate with an API key as a Bearer token instead.
Authorization: Bearer YOUR_API_KEYRequests without a valid access token or API key are rejected with a 401 Unauthorized.
Treat your API key like a password: anyone with it can read and modify your decks and cards. You can revoke and rotate keys anytime in your settings.
Connecting a client
Claude Code
With OAuth, add the server with just its URL, then approve access in your browser:
claude mcp add --transport http recall https://mcp.recall.cards/mcpRun /mcp in a session: Claude Code opens a browser for you to sign in to Recall and approve access, then confirms the server is connected.
To use an API key instead — for example on a headless machine — pass it as a header:
claude mcp add --transport http recall https://mcp.recall.cards/mcp \ --header "Authorization: Bearer YOUR_API_KEY"Test it
Before wiring a client, you can smoke-test the server with the MCP Inspector:
npx @modelcontextprotocol/inspectorChoose Streamable HTTP, set the URL to the endpoint above, then connect. The Inspector walks you through the OAuth sign-in, or you can add an Authorization header with your API key instead.