LABSCO SUMMARY
Notion access that asks before it changes anything.
The read side is unremarkable — databases, schemas, pages, recent updates. The write side is where it differs: creates, updates and deletes each sit behind their own confirmation flag and pages are backed up first, which makes granting edit rights a smaller decision.
What it is
A Notion integration server that exposes the workspace as MCP resources — databases and their schemas, database contents, individual pages and recent updates — plus the tools to modify them. Create, update and delete each sit behind their own confirmation switch, on by default, and pages are backed up before they change.
What you get
- Every database in the workspace listed, and a database's schema read
- All pages in a database retrieved
- A page's content read by ID
- Recent updates and changes across the workspace
- Confirmation required before create, update and delete, each toggled separately
- Page backups written to a backup directory, kept for a retention window and capped per page
- Block nesting depth capped, and an update polling interval you set
Requirements
Node.js v16 or higher, and a Notion API key from your Notion integrations page, supplied in the environment. The workspace has to be connected to that integration with the permissions you intend to use. The repository is cloned, built with npm run build, and started with npm start.
Setup effort
Build from source — git clone https://github.com/ghubnerr/Notion-MCP.git
USE CASES
01
Answering a question from a Notion database
Read the schema first, then the contents, so the query is asked against fields that actually exist.
02
Catching up on what changed
Read the recent updates across the workspace rather than opening each page to check.
03
Letting an agent edit, but not freely
Leave the confirmation flags on for create, update and delete, so every write is approved as it happens.
04
Recovering from a bad edit
Backups are written before a page changes and kept for a retention window, capped at a set number per page.
BEFORE YOU INSTALL
What to know first
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
TERMINAL
git clone https://github.com/ghubnerr/Notion-MCP.git
cd Notion-MCP
npm installCreate a .env file in the root directory with your Notion API key (NOTION_API_KEY=...)
TERMINAL
npm run buildMCP Clients
Claude Desktop
CLAUDE DESKTOP · JSON
{
"mcpServers": {
"notion": {
"command": "node",
"args": [
"<YOUR_PATH_TO_NOTION_MCP>/build/index.js"
],
"env": {
"NOTION_API_KEY": "<YOUR_NOTION_API_KEY>"
}
}
}
}<YOUR_PATH_TO_NOTION_MCP> is the full path of your clone, and <YOUR_NOTION_API_KEY> is your Notion integration token.