An MCP (Model Context Protocol) server implementation for seamless integration between Claude AI and Notion workspaces, enabling read and write capabilities.
This project aims to build an MCP server that connects Claude AI to Notion workspaces, allowing Claude to:
- Read content from Notion databases and pages
- Update existing content
- Search across your Notion workspace
- Query and filter database entries
- Retrieve detailed page content and database schemas
- Node.js (v16+)
- Notion API key
- Claude Desktop
- Create a Notion integration at https://www.notion.so/my-integrations
- Name your integration (e.g. "Claude MCP Integration")
- Set the integration type to "Internal"
- Copy your API key
- Share your Notion pages and databases with the integration by clicking the "..." menu in the top right of any page/database and selecting "Add connections"
npm install
Create a .env
file in the project root with your Notion API key:
NOTION_API_KEY=your_api_key_here
This step is only needed if you're developing the server.
Build the server, ready to be used by Claude.
npm run build
If you're developing the server, you can run npm run dev
or npm run inspect
.
Open claude_desktop_config.json
(navigate to Settings > Developer
and click Edit Config
) and add the following:
"notion": {
"command": "node",
"args": [
"path/to/mcp-server-notion/dist/index.js"
],
"env": {
"NOTION_API_KEY": "your_notion_api_key_here"
}
}
Restart Claude and you should be good to go!
The MCP server provides the following tools:
search_notion
: Search across your Notion workspace using a query stringget_notion_page
: Retrieve detailed content from a specific Notion pageget_notion_database
: Retrieve metadata and schema of a Notion databasequery_notion_database
: Search and filter entries in a Notion database with support for complex queries
- Official Notion API Documentation
- Model Context Protocol Specification
- Example MCP Server Implementations
- Claude Developer Documentation
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.