notion-mcp-server
by TomokoRoss
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HOST | No | Bind address for HTTP transport; `0.0.0.0` exposes it externally (only with MCP_AUTH_TOKEN). | 127.0.0.1 |
| PORT | No | Listen port for HTTP transport (`0` = OS-assigned). | 3000 |
| HTTP_PROXY | No | Send all outbound HTTP traffic through this HTTP proxy. | |
| HTTPS_PROXY | No | Send all outbound HTTP(S) traffic through this HTTPS proxy. | |
| NOTION_TOKEN | Yes | Required. Notion Personal Access Token (`ntn_…`) or Internal Integration secret. Create a PAT at app.notion.com/developers/tokens (works on every plan, including Free), or an Internal Integration at app.notion.com/developers/connections (sees only pages explicitly Connected to it). | |
| MCP_TRANSPORT | No | Set to `http` to run the server as a Streamable HTTP endpoint instead of stdio. | stdio |
| MCP_AUTH_TOKEN | No | When set, every `/mcp` request must send `Authorization: Bearer <token>`. | |
| NOTION_PAGE_ID | No | Default parent for create_page / create_database when no `parent` is passed. Accepts a page URL or id. | |
| NOTION_FILE_URLS | No | `full` (default) or `ref`. `ref` replaces Notion's long signed file URLs in responses with short `notion-file:` refs that `get_file_url` and `get_image` resolve on demand. | full |
| NOTION_READ_ONLY | No | Set to `true` to disable every write operation. | |
| MCP_ALLOWED_HOSTS | No | Comma-list for the DNS-rebinding `Host` allowlist. Defaults to localhost plus the bound host. | |
| NOTION_RATE_LIMIT | No | Requests per second (Notion's documented limit). | 3 |
| NOTION_UPLOAD_ROOT | No | Confines `upload_file`'s local `path` source to one directory. | |
| MCP_ALLOWED_ORIGINS | No | Comma-list for the browser `Origin` allowlist. Defaults to localhost origins. | |
| NOTION_DAILY_LOG_PAGE_ID | No | Page id used only by the daily-log MCP prompt. | |
| NOTION_ALLOWED_OPERATIONS | No | Comma-separated allowlist of operation names or presets: `read`, `write`, `destructive` (archive, trash and delete), or a family (`pages`, `blocks`, `databases`, `data_sources`, `views`, `comments`, `users`, `files`). | |
| NOTION_BLOCKED_OPERATIONS | No | Comma-separated blocklist of operation names or presets (same values as NOTION_ALLOWED_OPERATIONS). The blocklist wins. | |
| NOTION_CONFIRM_DESTRUCTIVE | No | Set to `true` to be asked (via MCP elicitation) before a destructive operation runs instead of blocking it. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
No tools | |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
This server cannot be deployed
Maintenance
ActivityActive
ResponsivenessNo issues