Install
$ agentstack add mcp-piskunproject-notion-mcp-server ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ● Environment & secrets Used
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Notion MCP Server
[](./LICENSE) [](https://www.typescriptlang.org/) [](https://apify.com/)
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://.runs.apify.net
- SSE endpoint:
GET /sse
- Client-to-server messages:
POST /message?sessionId=...
Authentication is done via:
- Authorization header:
Authorization: Bearer
✨ 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 install
Build
npm run build
Run
npm start
Docker (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_TOKEN- Your Notion integration token.
SECRET_TOKEN- Bearer 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!
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: piskunproject
- Source: piskunproject/notion-mcp-server
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.