notion-proxy
Enables reading and writing Notion pages as a guest using browser cookies, bypassing the official API's limitations.
README
notion-proxy
An MCP server that proxies Notion's internal API using your browser cookies. This lets Claude Code (or any MCP client) read and write Notion pages where you're a guest — something the official Notion API and Notion MCP integration cannot do.
Why?
The official Notion API only works with pages in workspaces where you have an integration installed. If you're a guest on someone else's workspace, you can't:
- Use the Notion API (no integration access)
- Use the official Notion MCP plugin (requires OAuth to a workspace you don't own)
This proxy solves that by using your browser session cookies directly, giving you the same access you have in the browser.
Features
- read-page — Read page content as markdown (with block IDs for editing)
- read-comments — Read all discussions/comments with authors and timestamps
- add-comment — Create new discussions or reply to existing ones
- edit-block — Update any text block's content
- add-block — Append new blocks to a page
- delete-block — Remove blocks from a page
- add-image — Add an image (external URL or local file upload)
- create-page — Create a child page
Setup
1. Install dependencies
npm install
2. Cookie authentication
The server automatically reads cookies from your Firefox browser's cookie store. Just be logged into Notion in Firefox — no manual cookie export needed.
Cookies are cached for 60 seconds and re-read from Firefox's cookies.sqlite on each refresh, so session renewals are picked up automatically.
Fallback: If Firefox isn't available, create a .env file:
NOTION_COOKIE=<full cookie header string from browser devtools>
3. Register as a global MCP server
Add to ~/.claude.json under mcpServers:
{
"mcpServers": {
"notion-proxy": {
"command": "node",
"args": ["/path/to/notion-proxy/server.mjs"],
"type": "stdio"
}
}
}
Restart Claude Code. The notion-proxy tools will be available in every project.
Usage
Once configured, ask Claude Code to interact with any Notion page by URL:
Read this page: https://www.notion.so/My-Page-abc123...
Block IDs are included in read-page output (e.g. [block:uuid]), so you can reference specific blocks for editing or commenting.
Limitations
- macOS + Firefox only for auto cookie refresh (reads
~/Library/Application Support/Firefox/Profiles/*/cookies.sqlite) - Cookies expire when your Firefox session expires — just log in again
- Write access depends on your actual Notion permissions (guest with read-only can only read)
Platform support
Auto cookie refresh currently only works on macOS. On other platforms, use the .env fallback.
Firefox stores cookies.sqlite at different paths per OS:
| OS | Path |
|---|---|
| macOS | ~/Library/Application Support/Firefox/Profiles/*/cookies.sqlite |
| Linux | ~/.mozilla/firefox/*/cookies.sqlite |
| Windows | %APPDATA%\Mozilla\Firefox\Profiles\*\cookies.sqlite |
Adding cross-platform support is a small change to findFirefoxProfile() in server.mjs — just detect process.platform and use the appropriate path.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.