Skip to content

Connect your agent

Add WhatsDo to Claude, ChatGPT or any other MCP client.

https://app.whatsdo.com/mcp/

Claude, Claude Code and ChatGPT connect by the address alone: the client opens a WhatsDo sign-in. Cursor, Gemini CLI and Codex take sign-in or an API key. VS Code and your own scripts use an API key.

After connecting, name WhatsDo in your first request: “Use WhatsDo to find a table for two in the Mission tonight.”

Claude

Web and desktop.

  1. Open Customize, then Connectors, then “+”, then Add custom connector.
  2. Paste https://app.whatsdo.com/mcp/.
  3. Click Connect and sign in.

On Team and Enterprise plans an owner adds the connector once in Organization settings, then members click Connect.

Claude Code

bash
claude mcp add --transport http whatsdo https://app.whatsdo.com/mcp/

Then run /mcp inside Claude Code and sign in.

ChatGPTPlugin soon

Until the plugin is listed, add WhatsDo as a custom connector. Developer mode is available on paid ChatGPT plans.

  1. Open Settings, then Apps & Connectors, then Advanced, and switch Developer mode on.
  2. Click Create, name it WhatsDo, paste https://app.whatsdo.com/mcp/ as the URL and set Authentication to OAuth.
  3. Sign in when asked, then turn WhatsDo on in a new chat.
  4. Start requests with “Use WhatsDo to …”. Without the name, ChatGPT can answer with its own search and skip WhatsDo.

Cursor

Add the server to ~/.cursor/mcp.json, or .cursor/mcp.json in a project. Cursor opens the sign-in on first use.

json
{
  "mcpServers": {
    "whatsdo": { "url": "https://app.whatsdo.com/mcp/" }
  }
}

With an API key instead, add headers. Keep a file with a key out of version control.

json
{
  "mcpServers": {
    "whatsdo": {
      "url": "https://app.whatsdo.com/mcp/",
      "headers": { "Authorization": "Bearer <your API key>" }
    }
  }
}

Gemini CLI

Add the server to ~/.gemini/settings.json, then run /mcp auth whatsdo inside Gemini CLI.

json
{
  "mcpServers": {
    "whatsdo": { "httpUrl": "https://app.whatsdo.com/mcp/" }
  }
}

With an API key instead, one command:

bash
gemini mcp add --transport http -s user \
  --header "Authorization: Bearer $WHATSDO_API_KEY" whatsdo https://app.whatsdo.com/mcp/

Codex

Add the server to ~/.codex/config.toml, then sign in from the terminal.

toml
[mcp_servers.whatsdo]
url = "https://app.whatsdo.com/mcp/"
bash
codex mcp login whatsdo

With an API key instead, name the environment variable that holds it. Codex sends it as Authorization: Bearer, and the key stays out of the file.

toml
[mcp_servers.whatsdo]
url = "https://app.whatsdo.com/mcp/"
bearer_token_env_var = "WHATSDO_API_KEY"

VS Code

VS Code connects with an API key. Create a key, then add .vscode/mcp.json. VS Code asks for the key once and stores it outside the file.

json
{
  "inputs": [
    { "type": "promptString", "id": "whatsdo-key", "description": "WhatsDo API key", "password": true }
  ],
  "servers": {
    "whatsdo": {
      "type": "http",
      "url": "https://app.whatsdo.com/mcp/",
      "headers": { "Authorization": "Bearer ${input:whatsdo-key}" }
    }
  }
}

Other MCP clients

Any client that speaks MCP over Streamable HTTP.

  1. Use the server address https://app.whatsdo.com/mcp/, with the trailing slash.
  2. Let the client run sign-in when the first call returns 401, or send Authorization: Bearer <your API key> on every request.

A client that prefers a key over sign-in can pass it as a header, for example in Claude Code:

bash
claude mcp add whatsdo --transport http https://app.whatsdo.com/mcp/ --scope user \
  --header "Authorization: Bearer $WHATSDO_API_KEY"

Check the connection

  • 401 on the first call is expected before sign-in. With an API key, check that the header reaches the server.
  • Empty results: WhatsDo covers San Francisco. Other cities return an empty list with no error.
  • More fixes on Errors and fixes.