Allows searching across a Notion workspace, retrieving/creating/updating pages, creating/querying/updating databases, and managing database entries with custom properties.
Notion MCP Server
A Model Context Protocol server for Notion integration, allowing Claude and other LLMs to interact with your Notion workspace.
Features
Search Notion: Search across your entire Notion workspace
Get Page: Retrieve content from a specific Notion page
Create Page: Create new pages in your Notion workspace
Update Page: Update existing pages with new content or titles
Create Database: Create new databases with custom properties
Query Database: Query databases with filters and sorting
Update Database Entry: Update properties of database entries
Create Database Row: Add new rows to existing databases with custom properties
Setup
Clone this repository
Install dependencies
npm installConfigure your Notion API key
Create an integration in the Notion Developers portal
Copy your API key
You can either:
Edit the
.env
file and replaceyour_notion_api_key_here
with your actual API key, orPass it directly in the Claude for Desktop configuration (recommended, see below)
Build the server
npm run buildRunning the server
npm start
Setting up with Claude for Desktop
Install Claude for Desktop (if not already installed)
Open your Claude for Desktop App configuration:
On macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Create the file if it doesn't exist
Add the Notion server to your configuration:
{ "mcpServers": { "notion": { "command": "node", "args": [ "/Users/shaheerahmad/Documents/notion-mcp-server/dist/index.js", "--notion-api-key=YOUR_ACTUAL_API_KEY_HERE" ] } } }Replace:
/Users/shaheerahmad/Documents/notion-mcp-server
with the full path to your project directoryYOUR_ACTUAL_API_KEY_HERE
with your actual Notion API key
Restart Claude for Desktop
Using the Server
Once connected to Claude for Desktop, you can use the server by asking Claude questions like:
"Search for meeting notes in my Notion workspace"
"Get the content of my project planning page" (you'll need the page ID)
"Create a new page in Notion with a list of tasks"
"Update my Notion page with ID 1aaada269d1b8003adceda69cf7bcd97 with content 'Here is some new content to add to the page.'"
"Create a new database in my Notion page with ID 1aaada269d1b8003adceda69cf7bcd97"
"Query my Notion database with ID 1aaada269d1b8003adceda69cf7bcd97 for items with status 'Completed'"
Claude will automatically use the appropriate tools based on your request.
Tool Usage Examples
Search Notion
Get Page Content
Create a New Page
Update an Existing Page
You can also update the title:
Create a New Database
Query a Database
You can also add sorting:
Update Database Entry
Update properties of an existing database entry (page within a database).
The properties
parameter should match the structure expected by the Notion API for the specific property types in your database. Different property types (text, select, date, etc.) require different formats.
Create Database Row
Add a new row to an existing database with custom properties.
The properties
parameter must include all required properties for the database and follow the Notion API structure for each property type.
Troubleshooting
If tools aren't showing up, check the Claude for Desktop logs:
tail -n 20 -f ~/Library/Logs/Claude/mcp*.logMake sure your Notion API key is correctly set and that your integration has been granted access to the pages you want to interact with.
If you see "Unexpected token" errors in the logs, it's likely that console.log statements are interfering with the MCP protocol. This version of the server has been updated to avoid those issues.
Future Improvements
Add database query capabilities
Implement better content formatting
Add support for more block types
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
A Model Context Protocol server that enables Claude and other LLMs to interact with Notion workspaces, providing capabilities like searching, retrieving, creating and updating pages, as well as managing databases.
Related Resources
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server that integrates with Notion's API to manage personal todo lists, allowing users to view, add, and update tasks directly from Claude.Last updated -26MIT License
- -securityAlicense-qualityA Model Context Protocol server that provides a standardized interface for interacting with Notion's API, enabling users to list databases, create pages, and search across their Notion workspace.Last updated -110MIT License
- AsecurityFlicenseAqualityA Model Context Protocol server that connects Claude and other AI assistants to your Notion workspace, allowing AIs to interact with databases, pages, and blocks.Last updated -12011
- AsecurityFlicenseAqualityA Model Context Protocol server that connects AI assistants like Claude to Notion workspaces, enabling them to view, search, create, and update Notion databases, pages, and content blocks.Last updated -122381