MCP server
Connect Claude, ChatGPT or Cursor to your brands.
Updated on January 1, 1970
Privacy and analytics
We use necessary technical cookies and, only with your consent, analytics and marketing pixels to improve the website and measure campaigns.
Connect Claude, ChatGPT or Cursor to your brands.
Updated on January 1, 1970
Nömad runs a single MCP server for all your brands at https://app.nomad.ooo/api/mcp. When connecting you choose which brands and scopes to grant; the tools are the same capabilities Nödo uses.
Status. Available for clients authorized one by one. A single server at /api/mcp, one connection for every brand you open in the consent; its tools come from the registry and take brand. The old per-brand path keeps working.
Progressive catalogue. The tool list carries the main capabilities; everything else you can do in Nömad (every action of every screen) is found with nomad_find (search by what you want to do), read with nomad_describe (input, output, permission and whether it waits for approval) and run with nomad_call, behind the same permission gate and agent policy. The list never grows with the app and the agent always sees the current contract.
Clients admitted from day one: Claude (claude.ai, Claude Desktop, Claude Code), ChatGPT (chatgpt.com, ChatGPT desktop), Cursor (Cursor editor), Visual Studio Code (GitHub Copilot agent mode). Other clients are added after review.
{
"mcpServers": {
"nomad": { "url": "https://app.nomad.ooo/api/mcp" }
}
}401 with WWW-Authenticate so clients discover where to authorize.Authorization header and is audience-bound to this server (RFC 8707); tokens for another audience are rejected and never passed through.403 insufficient_scope listing every required scope at once.agent_write_blocked.server/discover.works_list), valid in every client and in voice.inputSchema; output goes in structuredContent and as JSON text for older clients. Each tool's output schema is in this reference and does not travel in tools/list, so the model does not pay for it on every turn; the server validates every answer against it.429 with Retry-After. A result above 25,000 tokens is refused with result_too_large: ask for fewer items, the concise format or the next page with cursor.readOnlyHint on reads, destructiveHint on what deletes or disconnects, idempotentHint, and openWorldHint when leaving Nömad. They are client hints, not security: the permission gate is.isError: true with a message the model can act on; protocol errors are JSON-RPC errors.structuredContent.status = "approval_required" with the link where the person decides. The agent says so and does not resend it; it runs once when approved.tasks/get.nomad://brand/{brand}/genome: the Genome summary another agent can read, on single-brand connections granted genome.read.brand-brief to prepare a brief from the brand context you are allowed to see.