Notion DB MCP Helper
Provides tools for querying and updating Notion database rows by exact property filters, ensuring safe single-row selection and updates without relying on semantic search.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Notion DB MCP Helperupdate task No 38 status to Done"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Notion DB MCP Helper
Precise Notion data source tools for querying and updating Notion database rows by exact property filters. The lookup path is property-based and never relies on semantic search for row selection.
This project provides:
A CLI helper for local scripts.
A stdio MCP server for local MCP clients.
A Streamable HTTP MCP server for remote MCP clients.
Generic source metadata so one installation can manage many Notion databases/tables.
A local all-in-one
npxsetup where MCP clients can start the server directly.
Why
Common Notion workflows like “update row 38” can become unreliable if an agent first uses semantic search to find a page. This helper does the safer flow:
Query a specific Notion
data_source_idwith an exact property filter.Require exactly one matching page.
Block not-found or duplicate matches.
Update the exact
page_idreturned by the query.
Quick Links
MCP server installation:
docs/server.mdMCP client installation:
docs/client.mdAI agent client installer guide:
docs/ai-install-client.mdConfiguration guide:
docs/configuration.md
Tools
Source Metadata Tools
Use these when you configure named Notion sources in config.json.
notion_source_listnotion_source_schemanotion_source_get_by_keynotion_source_update_by_keynotion_source_update_status_by_key
Generic Data Source Tools
Use these for raw data_source_id or simple aliases.
notion_db_schemanotion_db_querynotion_db_get_by_propertynotion_db_update_pagenotion_db_update_by_property
CLI Examples
npm install
cp config.example.json config.json
export NOTION_API_TOKEN='<your-notion-token>'
./bin/db.js schema example_tasks
./bin/db.js get example_tasks No 38
./bin/db.js update example_tasks No 38 Status Done
./bin/db.js update-props example_tasks No 38 Summary="Done: verified"Local MCP via npx
Codex can start the stdio MCP server directly without cloning this repository manually:
codex mcp add notion_db -- \
npx --yes --package github:trisetiohidayat/notion-mcp \
notion-mcp serveClaude Code can use the same local server command:
claude mcp add notion_db -- \
npx --yes --package github:trisetiohidayat/notion-mcp \
notion-mcp serveAuth Model
The helper can read Notion bearer tokens from:
NOTION_TOKENNOTION_API_TOKENNOTION_API_KEYNOTION_ACCESS_TOKENOfficial
ntnfile-based auth, when available
For remote MCP deployments, see docs/server.md and docs/client.md. The recommended remote model is dual-header auth:
Authorization: Bearer <mcp-access-token>protects the MCP bridge.X-Notion-Token: <notion-token>supplies the caller's Notion token per request.
Safety Behavior
No matching row: returns a clear not-found error.
Multiple matching rows: returns a duplicate-match error and blocks updates.
Unknown property: returns a schema error.
Invalid
select/statusoption: validates against schema when options are available.
Development
npm install
npm run checkLicense
MIT
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/trisetiohidayat/notion-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server