loading…
Search for a command to run...
loading…
Better MCP server for Notion API with composite tools optimized for AI agents
Better MCP server for Notion API with composite tools optimized for AI agents
mcp-name: io.github.n24q02m/better-notion-mcp
Markdown-first Notion API server for AI agents -- 10 composite tools replacing 28+ endpoint calls
CI codecov npm Docker License: MIT
TypeScript Node.js Notion semantic-release Renovate
help toolWith AI Agent -- copy and send this to your AI agent:
Please set up @n24q02m/better-notion-mcp for me. Follow this guide: https://raw.githubusercontent.com/n24q02m/better-notion-mcp/main/docs/setup-with-agent.md
Manual Setup -- follow docs/setup-manual.md
| Tool | Actions | Description |
|---|---|---|
pages |
create, get, get_property, update, move, archive, restore, duplicate |
Create, read, update, and organize pages |
databases |
create, get, query, create_page, update_page, delete_page, create_data_source, update_data_source, update_database, list_templates |
Database CRUD and page management within databases |
blocks |
get, children, append, update, delete |
Read and manipulate block content |
users |
list, get, me, from_workspace |
List and retrieve user information |
workspace |
info, search |
Workspace metadata and cross-workspace search |
comments |
list, get, create |
Page and block comments |
content_convert |
markdown-to-blocks, blocks-to-markdown |
Convert between Markdown and Notion blocks |
file_uploads |
create, send, complete, retrieve, list |
Upload files to Notion |
setup |
status, start, reset, complete |
Credential setup via browser relay, status check, reset, re-resolve |
help |
- | Get full documentation for any tool |
| URI | Description |
|---|---|
notion://docs/pages |
Page operations reference |
notion://docs/databases |
Database operations reference |
notion://docs/blocks |
Block operations reference |
notion://docs/users |
User operations reference |
notion://docs/workspace |
Workspace operations reference |
notion://docs/comments |
Comment operations reference |
notion://docs/content_convert |
Content conversion reference |
notion://docs/file_uploads |
File upload reference |
No environment variables needed. On first start, the server opens a setup page in your browser:
npx, or Docker)Your credentials never leave your machine. The relay server only sees encrypted data.
For CI/automation, you can still use environment variables (see below).
| Variable | Required | Default | Description |
|---|---|---|---|
NOTION_TOKEN |
Yes (stdio) | - | Notion integration token |
TRANSPORT_MODE |
No | stdio |
Set to http for remote mode |
PUBLIC_URL |
Yes (http) | - | Server's public URL for OAuth redirects |
NOTION_OAUTH_CLIENT_ID |
Yes (http) | - | Notion Public Integration client ID |
NOTION_OAUTH_CLIENT_SECRET |
Yes (http) | - | Notion Public Integration client secret |
DCR_SERVER_SECRET |
Yes (http) | - | HMAC secret for stateless client registration |
PORT |
No | 8080 |
Server port |
You can self-host the remote server with your own Notion OAuth app.
Prerequisites:
https://your-domain.com/callbackclient_id and client_secretdocker run -p 8080:8080 \
-e TRANSPORT_MODE=http \
-e PUBLIC_URL=https://your-domain.com \
-e NOTION_OAUTH_CLIENT_ID=your-client-id \
-e NOTION_OAUTH_CLIENT_SECRET=your-client-secret \
-e DCR_SERVER_SECRET=$(openssl rand -hex 32) \
n24q02m/better-notion-mcp:latest
git clone https://github.com/n24q02m/better-notion-mcp.git
cd better-notion-mcp
bun install
bun run dev
MIT -- See LICENSE.
Add this to claude_desktop_config.json and restart Claude Desktop.
{
"mcpServers": {
"better-notion-mcp": {
"command": "npx",
"args": [
"-y",
"@n24q02m/better-notion-mcp"
]
}
}
}pro tip
Just installed Better Notion Mcp? Say to Claude: "remember why I installed Better Notion Mcpand what I want to try" — it'll save into your Vault.
how this works →