loading…
Search for a command to run...
loading…
Markdown-first Notion MCP server with 9 composite tools and 39 actions. ~77% token reduction via tiered docs. Auto-pagination and bulk operations.
Markdown-first Notion MCP server with 9 composite tools and 39 actions. ~77% token reduction via tiered docs. Auto-pagination and bulk operations.
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": {
"n24q02m-better-notion-mcp": {
"command": "npx",
"args": []
}
}
}Read and write pages in your workspace
Issues, cycles, triage — from Claude
Search and read your Drive files
Connect and unify data across various platforms and databases with [MindsDB as a single MCP server](https://docs.mindsdb.com/mcp/overview).