POST /mcp endpoint. Nine clients have a native install and browser OAuth; OpenHands and Replit Agent connect manually.
What each client gets
How each client waits for a long sandbox run is on Long runs and waking.
The same for every client
- The project comes from the credential and the call — agents pass
project_idexplicitly and never send a checkout path. - One OAuth grant with All my projects covers every project you’re a member of.
- The connection is plain HTTP; no local Merv runtime is needed. Byte transfers use the machine’s
curl, OpenSSH, andrsync. - The brain is the only source of tool schemas (
tools/list); there is no client-side catalog. Committed manifests contain the URL and no credential header, so a 401 starts OAuth discovery.
How the adapters are built
Codex, Claude Code, Copilot CLI, and Cursor read marketplace manifests onmain. Gemini, Qwen, Kilo, and OpenCode consume a generated merv-client branch that CI force-publishes after every change on main — nobody edits it by hand. Hermes gets a generated merv-hermes-client repo. Kilo and OpenCode fetch skills from a hosted, content-versioned catalog. Reviewer agent files carry only name and description frontmatter so every client that supports agents can load them.