create_pageLABSCO SUMMARY
Reach you grant page by page — and a fork the README points at.
The permission model is the thing to plan around: the integration only sees pages explicitly connected to it, so access grows deliberately instead of covering the workspace by default. One thing to read before you clone — the README credits sweir1/notion-server with the enhanced markdown support, the database operations and the improved error handling, and gives the clone command for that repository as an alternative to this one.
What it is
A Node MCP server for Notion that lets a model search a workspace, read pages back as clean markdown, create new pages from markdown, update existing ones, work at block level, handle comments, and create and query databases. It is built from source and run as build/index.js; the package declares the name notionmcp (1.0.0) with a notion binary.
What you get
- Workspace search, page reads with clean formatting, page creation from rich markdown content, and updates to existing pages
- Block-level operations — update and delete individual blocks rather than rewriting the page
- Comments both ways: add them and retrieve them
- Markdown that survives the round trip — H1 to H3 headings, code blocks with language, todo items with checkbox states, multi-line blockquotes, horizontal dividers, images with captions and nested bullet points
- Database work: create and manage databases, add and update items, and query with filters and sorting
- Database property types including title, rich text, number, select, multi-select, date and checkbox
- Page creation taking a parent page ID, title and markdown body, and database queries taking a database ID with filter and sort objects —
create_page,query_database
Requirements
Node.js v16 or higher, a Notion API key in NOTION_API_KEY, and an MCP-compatible client. Create the integration at Notion → My integrations and give it Content read/update/insert, Comments read/create and User information read. Then connect each page you want reachable from its "..." menu → Connections — the integration sees nothing you have not connected, so repeat it for every page or parent you intend to use. Installation is from source — clone the repository, npm install, npm run build, then point the client's command at the absolute path of build/index.js with the key in its env block. MIT licensed.
Setup effort
Build from source — git clone https://github.com/v-3/notion-server.git
USE CASES
Turning a conversation into a Notion page
Write markdown straight into a new page under a parent you name — headings, code blocks, todos and nested lists all come through.
Pulling a database view into the session
Query the database with a filter and sort, for example status equals In Progress, and read the matching items back.
Editing part of a page without rewriting it
Use the block-level update and delete operations so the rest of the page stays exactly as it was.
Catching up on discussion around a page
Retrieve the page's comments, and add a reply from the same session.
2 tools
Listed in project docs. Your client may show a different list.
query_databaseBEFORE YOU INSTALL
What to know first
Tools you get
2 tools named in the project's documentation.
Requires
- Node.js
- NOTION_API_KEY in your environment
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
You clone and build this one yourself.
Server setup
git clone https://github.com/v-3/notion-server.git
cd notion-server
npm install
npm run buildMCP Clients
Claude Desktop
{
"mcpServers": {
"notion": {
"command": "node",
"args": [
"<YOUR_PATH_TO_NOTION_SERVER>/build/index.js"
],
"env": {
"NOTION_API_KEY": "<YOUR_NOTION_API_KEY>"
}
}
}
}