Cursor and Claude Desktopyour space, inside the tools you already use.

Connect Cursor, Claude Desktop or any other MCP client to a Wakato Space, and control which tools the client sees.

Wakato's MCP server, space-mcp, gives any MCP client the tools of one Space: contacts, tables, pages, forms, mail, social, tasks, apps, automations and more. It speaks JSON-RPC over HTTP POST (the streamable HTTP transport, answered in the POST body) and authenticates with a Space API key.

Server URLhttps://api.wakato.io/functions/v1/space-mcp
AuthAuthorization: Bearer wks_live_… (or x-api-key: wks_live_…)

Make a key first: Space → Settings → API Keys → New API key. See Keys and scopes for what to tick. For Claude Code, see Use with Claude Code.

Cursor

Cursor connects to an HTTP MCP server directly. Add it to the project's .cursor/mcp.json (or your global ~/.cursor/mcp.json):

.cursor/mcp.json
{
  "mcpServers": {
    "wakato": {
      "url": "https://api.wakato.io/functions/v1/space-mcp",
      "headers": { "Authorization": "Bearer ${env:WAKATO_SPACE_KEY}" }
    }
  }
}

Export WAKATO_SPACE_KEY in the shell Cursor starts from, so the token stays out of the file. Open Settings → MCP to check the server is green and to see its tools.

Claude Desktop

Claude Desktop starts local MCP servers from its config file, so it reaches a remote server through the mcp-remote bridge (it needs Node.js). Open Settings → Developer → Edit Config and add:

claude_desktop_config.json
{
  "mcpServers": {
    "wakato": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://api.wakato.io/functions/v1/space-mcp",
        "--header",
        "Authorization:${WAKATO_AUTH}"
      ],
      "env": { "WAKATO_AUTH": "Bearer wks_live_YOUR_TOKEN" }
    }
  }
}

Restart Claude Desktop. The tools appear under the tools menu in a new chat.

Why the header is split

Writing Authorization:${WAKATO_AUTH} with no space and putting Bearer … in env avoids a known problem where some clients split arguments at spaces. The shorter form, "--header", "Authorization: Bearer wks_live_…", works where that is not an issue.

Any other MCP client

Any client that can reach an HTTP MCP server needs only the URL and the header. Clients that only start local processes use the same mcp-remote command as Claude Desktop. If your client tries the old SSE transport first, add "--transport", "http-only" to the mcp-remote arguments: the server answers POST only, and a GET gets 405.

To check a key by hand:

curl -s https://api.wakato.io/functions/v1/space-mcp \
  -H "Authorization: Bearer $WAKATO_SPACE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

What the client sees

The list is filtered by scope. tools/list returns only tools the key may call. A tool behind a scope you did not grant is not listed, and nothing says it is missing. If the client "can't" do something, edit the key's scopes; the token does not change.

Related tools are grouped into families. To keep the list readable, related tools are listed as one family tool with an action argument, for example manage_job with { "action": "create", … }. Only the actions your key may call are offered. The server turns a family call back into the single tool before any check, so scopes, approvals and the activity log are exactly those of that tool, and every tool stays callable by its own name too.

Two tools are always there:

  • search_tools searches the Space's whole catalog by words and by meaning, and answers with matching tools and their input schemas. Tools outside the key's scopes come back marked as not yours, so you know they exist.
  • call_tool calls any tool by name: { "name": "<tool>", "arguments": { … } }. Every check applies exactly as for a direct call.

Every tool or everyday tools

Each key has a tool catalog setting, under Edit on the key:

  • Every tool (the default for keys you make): the client is handed every tool its scopes allow. Fine for a client that picks tools well with a long list.
  • Everyday tools: the client gets a core set, plus tools it called in the last 30 days, and finds the rest through search_tools and call_tool. Permissions do not change. Agents pick tools more reliably from a short list, and it uses far fewer tokens per turn.

The Space's own agents always run in Everyday tools mode.

Tell the client what the Space is for

Most clients read a project rules file. A few lines save a lot of guessing:

.cursor/rules/wakato.md
The "wakato" MCP server is our Marketing Space.
Drafts are fine. Ask me before anything that goes live:
publishing a page, sending email or SMS, posting to social.
If a tool seems missing, use search_tools before saying it can't be done.

When something goes wrong

SymptomLikely cause
401 Invalid Space API keyWrong token, or a stray space or quote in the header
401 … has been revoked / has expiredMake a new key
A tool you expect is not listedThe key lacks that scope, or Everyday tools mode: try search_tools
A call answers with a refusal sentenceRead it: a missing scope or a rule of the Space

Next: browse the MCP tools by category, or hear what happens in the Space.

On this page