drio
Open app

Notion MCP Server

Source

A Model Context Protocol (MCP) server implementation for Notion integration, providing a standardized interface for interacting with Notion's API.

Catalog onlyCatalog onlySTDIO

Overview

Notion MCP Server is a Model Context Protocol server implementation that allows developers to integrate with Notion's API, providing a standardized interface for database management and interaction.

To use the Notion MCP Server, clone the repository, set up a virtual environment, install dependencies, and configure it with your Notion integration token. Follow the provided setup instructions to run the server and integrate with Claude Desktop.

  • List and query Notion databases - Create and update pages - Search across the Notion workspace - Full async/await support - Type-safe utilizing Pydantic models - Robust error handling
  1. Automating data entry and management in Notion databases.
  2. Building custom applications that leverage Notion's organizational features.
  3. Integrating Notion with other platforms for enhanced collaboration.

Add to your AI client

Use these steps to connect Notion MCP Server in Cursor, Claude, VS Code, and other MCP-compatible apps. The same JSON appears in the Use with menu above for one-click copy.

Cursor

Add this to your .cursor/mcp.json file in your project root, then restart Cursor.

.cursor/mcp.json

{
  "mcpServers": {
    "notion-mcp-ccabanillas": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-notion-mcp-ccabanillas"
      ]
    }
  }
}

Claude Desktop

Add this server entry to the mcpServers object in your Claude Desktop config, then restart the app.

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)

{
  "mcpServers": {
    "notion-mcp-ccabanillas": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-notion-mcp-ccabanillas"
      ]
    }
  }
}

Claude Code

Add this to your project's .mcp.json file. Claude Code will detect it automatically.

.mcp.json (project root)

{
  "mcpServers": {
    "notion-mcp-ccabanillas": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-notion-mcp-ccabanillas"
      ]
    }
  }
}

VS Code (Copilot)

Add this to your .vscode/mcp.json file. Requires the GitHub Copilot extension with MCP support enabled.

.vscode/mcp.json

{
  "servers": {
    "notion-mcp-ccabanillas": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-notion-mcp-ccabanillas"
      ]
    }
  }
}

Windsurf

Add this to your Windsurf MCP config file, then restart Windsurf.

~/.codeium/windsurf/mcp_config.json

{
  "mcpServers": {
    "notion-mcp-ccabanillas": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-notion-mcp-ccabanillas"
      ]
    }
  }
}

Cline

Open Cline settings, navigate to MCP Servers, and add this server configuration.

Cline MCP Settings (via UI)

{
  "mcpServers": {
    "notion-mcp-ccabanillas": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-notion-mcp-ccabanillas"
      ]
    }
  }
}

FAQ

What is required to run Notion MCP Server?

You need Python, a Notion integration token, and the necessary dependencies installed.

How do I secure my Notion token?

Store your Notion integration token in a `.env` file and never share it publicly.

Can this server be used with other frameworks?

Yes! While it is designed to work with Claude Desktop, you can integrate it with other frameworks that support API calls.7:["$","div",null,{"className":"container mx-auto flex flex-col gap-4","children":["$L26","$L27",["$","$L28",null,{"currentProject":{"id":381,"uuid":"afb0ef6b-4ded-4da2-bda9-d76ac3a554b7","name":"notion-mcp","title":"Notion MCP Server","description":"A Model Context Protocol (MCP) server implementation for Notion integration, providing a standardized interface for interacting with Notion's API.","avatar_url":"https://avatars.githubusercontent.com/u/981635?v=4","created_at":"2024-12-13T13:26:28.580Z","updated_at":"2024-12-13T15:09:10.175Z","status":"created","author_name":"ccabanillas","author_avatar_url":"https://avatars.githubusercontent.com/u/981635?v=4","tags":"[]","category":"developer-tools","is_featured":false,"sort":1,"url":"https://github.com/ccabanillas/notion-mcp","target":"_self","content":"$29","summary":"$2a","img_url":null,"type":null,"metadata":"{\"star\":\"77\",\"license\":\"MIT license\",\"language\":\"Python\",\"is_official\":false,\"latest_commit_time\":\"2025-04-09 18:45:37\"}","user_uuid":null,"tools":null,"sse_url":null,"sse_provider":null,"sse_params":null,"is_official":false,"server_command":null,"server_params":null,"server_config":null,"allow_call":false,"is_innovation":false,"is_dxt":false,"dxt_manifest":null,"dxt_file_url":null,"is_audit":false},"randomProjects":[],"currentServerKey":"$undefined"}]]}]