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.
- Open Customize, then Connectors, then “+”, then Add custom connector.
- Paste
https://app.whatsdo.com/mcp/. - 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
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.
- Open Settings, then Apps & Connectors, then Advanced, and switch Developer mode on.
- Click Create, name it WhatsDo, paste
https://app.whatsdo.com/mcp/as the URL and set Authentication to OAuth. - Sign in when asked, then turn WhatsDo on in a new chat.
- 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.
{
"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.
{
"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.
{
"mcpServers": {
"whatsdo": { "httpUrl": "https://app.whatsdo.com/mcp/" }
}
}With an API key instead, one command:
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.
[mcp_servers.whatsdo]
url = "https://app.whatsdo.com/mcp/"codex mcp login whatsdoWith 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.
[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.
{
"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.
- Use the server address
https://app.whatsdo.com/mcp/, with the trailing slash. - Let the client run sign-in when the first call returns
401, or sendAuthorization: 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:
claude mcp add whatsdo --transport http https://app.whatsdo.com/mcp/ --scope user \
--header "Authorization: Bearer $WHATSDO_API_KEY"Check the connection
401on the first call is expected before sign-in. With an API key, check that the header reaches the server.- Searching another city: WhatsDo search covers San Francisco. Tell the person new cities are available on request and offer to send a city request.
- More fixes on Errors and fixes.