🧠 What is notion-mcp?
notion-mcp is a Python-based Model Context Protocol (MCP) server that acts as a bridge between Claude and the Notion API. It enables Claude to perform tasks such as creating, updating, and querying content in your Notion workspace.
⚙️ Prerequisites
- Claude for Desktop (macOS or Windows)
- Python 3.10 or higher
- A Notion account
- A Notion integration with an internal token
- Claude Pro or Work plan (MCP support)
✨ Step-by-Step Setup
1. Clone the notion-mcp Repository
git clone https://github.com/ccabanillas/notion-mcp.git
cd notion-mcp
2. Set Up the Python Environment
python -m venv .venv
# macOS/Linux:
source .venv/bin/activate
# Windows:
.venv\Scripts\activate
pip install -r requirements.txt
3. Create a Notion Integration
- Go to Notion Integrations
- Click “New Integration”
- Name it (e.g., “Claude MCP”), select your workspace
- Choose “Internal Integration”
- Submit and copy the integration token
4. Configure Claude for Desktop
To open the configuration file directly from Claude Desktop:
- Open Claude Desktop
- Click on the ⚙️ (gear) icon in the bottom left
- Select “Advanced” > “Open configuration file”
This will open the claude_desktop_config.json
file. Add the following MCP server configuration:
{
"mcpServers": {
"notion": {
"command": "python",
"args": ["-m", "notion_mcp"],
"env": {
"NOTION_API_TOKEN": "your_notion_api_token"
}
}
}
}
Replace your_notion_api_token
with the integration token you copied earlier.
5. Share Notion Pages with the Integration
- Open a Notion page
- Click the “…” menu > “Add connections”
- Select your integration (e.g., “Claude MCP”)
6. Restart Claude for Desktop
After saving the config file, return to the Claude app and click “Restart Claude” in the same settings menu. When Claude restarts, a hammer icon should appear in the chat input box—this indicates MCP tools are available.
✅ Testing the Integration
Open Claude for Desktop and try:
- “Show my tasks for today.”
- “Add a new task to my Notion to-do list.”
- “Mark ‘Submit report’ as complete.”
Claude should now read and write to Notion using the notion-mcp server.