How to Connect Notion Remote MCP to Windsurf
Add Notion Labs's remote MCP server to Windsurf in about a minute.
Step-by-step
- Edit mcp_config.jsonAdd the
serverUrlconfig above to~/.codeium/windsurf/mcp_config.jsonand refresh in Cascade. - AuthorizeOn first use your client opens a Notion Labs OAuth consent screen โ approve it and tools become available.
- VerifyVerify in the browser: paste
https://mcp.notion.com/mcpinto remotemcp.net/inspector and run initialize + tools/list.
Troubleshooting OAuth / 401
- A
401 Unauthorizedon first connect is normal โ the endpoint is OAuth-protected; let Windsurf finish the browser consent flow. - If the consent window never opens, remove and re-add the server, then retry.
- Check the exact challenge at our OAuth debugger.
- Run the live endpoint through the online inspector to see the raw JSON-RPC exchange.
Legacy SSE endpoint
Or add to ~/.cursor/mcp.json:
{
"mcpServers": {
"notion": {
"url": "https://mcp.notion.com/mcp"
}
}
}claude mcp add --transport http notion https://mcp.notion.com/mcp
Or add to .vscode/mcp.json:
{
"servers": {
"notion": {
"type": "http",
"url": "https://mcp.notion.com/mcp"
}
}
}- Open Settings โ Connectors (Integrations) โ Add Custom Connector.
- Paste the endpoint URL:
https://mcp.notion.com/mcp - Complete the browser OAuth 2.1 login flow when prompted.
Bridge the remote endpoint into stdio with mcp-remote in claude_desktop_config.json:
{
"mcpServers": {
"notion": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.notion.com/mcp"
]
}
}
}Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"notion": {
"serverUrl": "https://mcp.notion.com/mcp"
}
}
}Tools exposed by Notion MCP (5)
| Tool | Safety | Description | Parameters |
|---|---|---|---|
| notion_search | ๐ข Read | Search pages and databases across your Notion workspace. | query*: stringfilter: string |
| notion_retrieve_page | ๐ข Read | Retrieve a Notion page's properties and content. | pageId*: string |
| notion_create_page | ๐ Write | Create a new page under a parent page or database. | parentId*: stringtitle*: stringcontent: string |
| notion_append_block_children | ๐ Write | Append blocks (paragraphs, todos, headings) to a Notion page. | blockId*: stringchildren*: array |
| notion_query_database | ๐ข Read | Query a Notion database with filters and sorts. | databaseId*: stringfilter: objectsorts: array |
Connect Notion MCP to another client
Other servers for Windsurf
GitHub's official remote MCP server hosted at api.githubcopilot.com. Gives AI agents first-party access to repositories, issues, pull requests and code search.
Linear's official remote MCP server. Agents can search, create and update issues and query your team's workflow over Streamable HTTP or SSE.
Figma's official remote MCP server. Agents can pull design context, variables, Code Connect mappings and screenshots from your Figma files.
Stripe's official remote MCP server at mcp.stripe.com. Agents can query customers, payment intents and subscriptions and invoke Stripe API operations with OAuth.
Cloudflare's free, authless documentation MCP server. Agents can search the full Cloudflare docs corpus โ no account or token required.
Cognition Devin's free DeepWiki MCP. Ask questions and read AI-generated wiki documentation for any public GitHub repository โ no auth required.