Notion
STDIOMCP server for Notion integration providing database queries, page management, and workspace search capabilities.
MCP server for Notion integration providing database queries, page management, and workspace search capabilities.
A Model Context Protocol (MCP) server implementation for Notion integration, providing a standardized interface for interacting with Notion's API. Compatible with Claude Desktop and other MCP clients.
To install Notion Integration Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @ccabanillas/notion-mcp --client claude
git clone https://github.com/ccabanillas/notion-mcp.git cd notion-mcp
uv venv source .venv/bin/activate # On Windows: .venv\Scripts\activate uv pip install -e .
Alternatively, using standard venv:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate pip install -e .
.env file in the project root:NOTION_API_KEY=your_notion_integration_token
python -m notion_mcp
claude_desktop_config.json file (located at ~/Library/Application Support/Claude/claude_desktop_config.json on macOS):{ "servers": { "notion-mcp": { "command": "/Users/username/Projects/notion-mcp/.venv/bin/python", "args": ["-m", "notion_mcp"], "cwd": "/Users/username/Projects/notion-mcp" } } }
Be sure to replace /Users/username/ with your actual home directory path.
notion-mcp/
├── src/
│   └── notion_mcp/
│       ├── models/
│       │   ├── __init__.py
│       │   └── notion.py      # Pydantic models for Notion objects
│       ├── __init__.py        
│       ├── __main__.py        # Entry point
│       ├── client.py          # Notion API client
│       └── server.py          # MCP server implementation
├── .env                       # Environment variables (add your Notion API key here)
├── .gitignore
├── pyproject.toml             # Project dependencies
└── README.md
pytest
The server requires a Notion integration token. To set this up:
.env file in the project root directory:NOTION_API_KEY=your_notion_integration_token
git checkout -b feature/amazing-feature)git commit -m 'Add some amazing feature')git push origin feature/amazing-feature)MIT License - Use at your own risk