Prepare the server locally
Run this once before adding it to Claude Code.
git clone https://github.com/acckkiie/mcp-notion
cd mcp-notion
npm installRegister it in Claude Code
claude mcp add -e "NOTION_API_KEY=${NOTION_API_KEY}" -e "HOST_WORKSPACE_PATH=${HOST_WORKSPACE_PATH}" mcp-notion -- node /path/to/mcp-notion/build/index.jsReplace any placeholder paths in the command with the real path on your machine.
NOTION_API_KEYHOST_WORKSPACE_PATHMake your agent remember this setup
mcp-notion's config, env vars, and the gotchas you hit — recalled in every future Claude Code, Cursor, and Codex session.
npx conare@latestFree · one command · indexes the sessions already on disk. Set up in the browser instead →
What it does
- Full CRUD support for Notion pages and databases
- File-based operations to reduce LLM token usage
- Response extraction to optimize context window efficiency
- Docker-ready for secure and isolated execution
Tools 5
searchSearch for Notion pages and databases.retrieveRetrieve content from a specific Notion page or database.createCreate a new page or database entry in Notion.updateUpdate an existing Notion page or database entry.append_blockAppend new blocks to a Notion page.Environment Variables
NOTION_API_KEYrequiredYour Notion integration secret key.HOST_WORKSPACE_PATHrequiredLocal path for file-based operations to save/load page content.Try it
Original README from acckkiie/mcp-notion
MCP Server for Notion
This tool provides the Notion API as an MCP (Model Context Protocol) server. It enables AI agents to search, view, create, and update Notion pages, as well as operate on databases.
Features
Page & Database Operations
Supports major operations such as search, retrieval, creation, updates, and appending blocks.
File-based Operations
Drastically reduces LLM token usage by saving/loading page content (JSON) to/from files.
Response Extraction (extract)
Optimizes context size by extracting only the necessary properties from the API response.
Quick Start
Local Development Environment
Install:
git clone https://github.com/acckkiie/mcp-notion cd mcp-notion npm installConfigure: Copy
.env.exampleto create.envand set your Notion API key.cp .env.example .env # Edit .env: NOTION_API_KEY=secret_...Run:
npm run dev
Image Build
npm run build
docker build -t mcp-notion:latest .
MCP Client Configuration
Via Docker (Recommended)
Using Docker reduces environment dependencies and enables security control via proxy.
{
"mcpServers": {
"mcp-notion": {
"disabled": false,
"command": "bash",
"args": [
"-c",
"docker compose -f /path/to/mcp-notion/docker-compose.yml down 2>/dev/null; docker compose --env-file /path/to/mcp-notion/.env -f /path/to/mcp-notion/docker-compose.yml run --rm -i mcp-notion"
],
"env": {
"HOST_WORKSPACE_PATH": "/path/to/your/workspace"
}
}
}
}
Local Execution
{
"mcpServers": {
"notion": {
"command": "node",
"args": [
"/path/to/mcp-notion/build/index.js"
],
"env": {
"NOTION_API_KEY": "secret_...",
"HOST_WORKSPACE_PATH": "/path/to/your/workspace"
}
}
}
}