Notion MCP Server
Provides CRUD operations for Notion API access, enabling management of Notion workspaces, databases, and pages through OpenAPI tools.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Notion MCP Server
Connect Claude Desktop (and other MCP clients) directly to Notion using a real MCP server with SSE support.
No flaky local scripts. No tokens in URLs. Run it securely in the cloud.
🚀 Quick Start (Recommended)
The easiest way to run this securely 24/7 is on Apify.
Connect your MCP client
Base URL (Apify Container URL):
https://<run-id>.runs.apify.netSSE endpoint:
GET /sseClient-to-server messages:
POST /message?sessionId=...
Authentication is done via:
Authorization header:
Authorization: Bearer <SECRET_TOKEN>
Related MCP server: Notion MCP Server
✨ Features
MCP Protocol with SSE
Secure Bearer Authentication
Notion API access (CRUD via OpenAPI tools)
Rate-limiting & basic DDoS protection (
express-rate-limit)Security headers (
helmet)
💻 Local Development (For Geeks)
Install
npm installBuild
npm run buildRun
npm startDocker (optional)
If you use Docker locally:
docker build -t notion-mcp-server .
docker run -p 8080:8080 --env-file .env notion-mcp-server⚙️ Configuration
This project is designed to read configuration from environment variables (and Apify Actor input).
Required ENV variables
NOTION_TOKENYour Notion integration token.
SECRET_TOKENBearer token required to access
/sseand/message.
Optional (advanced):
NOTION_API_VERSION(default:2022-06-28)OPENAPI_MCP_HEADERS(JSON string of headers; overridesNOTION_TOKENwhen present)BASE_URL(override OpenAPI server base URL)
Claude Desktop configuration
Add (or merge) something like this into claude_desktop_config.json:
{
"mcpServers": {
"notion": {
"command": "node",
"args": ["/ABSOLUTE/PATH/TO/dist/start-apify.js"],
"env": {
"NOTION_TOKEN": "YOUR_NOTION_TOKEN",
"SECRET_TOKEN": "YOUR_SECRET_TOKEN"
}
}
}
}On Apify, you typically configure secrets via Actor input / secrets and use the Container URL as the server endpoint.
Security Notes
Never commit
.envfiles or Apifystorage/directories.Use a strong
SECRET_TOKENand rotate it if it leaks.
Contributing
PRs are welcome!
This server cannot be deployed
Maintenance
Related MCP Connectors
Hosted Notion MCP server for Claude, ChatGPT and Cursor, with each action switched per account.
Hosted Airtable MCP server for Claude, ChatGPT and Cursor, with each action switched per account.
Hosted PostgreSQL MCP server for Claude, ChatGPT and Cursor, with each action switched per account.
MCP server connecting AI agents to 100+ apps (Gmail, Slack, Notion, GitHub) via one-click OAuth.
Related MCP Servers
- AlicenseAqualityBmaintenanceMCP Server for the Notion API, enabling Claude to interact with Notion workspaces.311,535 npm924MIT
- AlicenseNot gradedqualityDmaintenanceA simple server that integrates with Claude to allow querying and manipulating Notion pages and databases through natural language prompts.4,610 npmMIT
- AlicenseNot gradedqualityDmaintenanceA server that connects to the Notion API and exposes functionality through Claude's Machine Context Protocol, enabling search, retrieval, querying, and creation of Notion pages and databases.4,610 npmMIT
- AlicenseNot gradedqualityAmaintenanceConnects MCP-capable AI clients such as Claude, Cursor, VS Code and Codex to Notion with a single token, letting them search, create and edit pages, query databases, comment and upload files in plain language. It supports headless and CI use, batched idempotent writes, markdown round-tripping, and low context overhead.4,610 npmMIT