CCM
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Claude Code Marketplaces

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Skill index
  • MCP index
  • Marketplace index
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by mertbuilds.com

Independent project, not affiliated with Anthropic
n24q02m avatar

Better Notion Mcp

n24q02m/better-notion-mcp
31authSTDIO, HTTPregistry active
Summary

A Notion integration that replaces low-level API calls with composite tools that speak Markdown instead of JSON blocks. The 9 tools expose 39+ actions across pages, databases, blocks, users, comments, and file uploads. Instead of chaining multiple endpoints to query a database then update properties, you call one tool with readable parameters. The server handles pagination and bulk operations internally, cutting token usage by about 77% through compressed descriptions. Ships with dual transport: stdio for local Claude Desktop use or streamable HTTP with OAuth 2.1 for remote setups. Useful when you want AI agents to manage Notion workspaces without wrestling with block arrays and manual cursor handling.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Lid closed, agents working
Lid closed, agents working
Keeps your Mac awake while Claude Code, Codex or Cursor works. Lets it sleep when they are done.
Try free for 7 days →
Block distraction from your iPhone for freeBlock distraction from your iPhone for free
Block distraction from your iPhone for free
Block distracting apps from your iPhone permanently without a 3rd party app. Free and open source.
Block now (100% free) →
Granola, the best AI meeting recorder
Granola, the best AI meeting recorder
Notes, actions and memory. Without a meeting bot. First month 100% off.
Download for free →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
Open Steps
Open Steps
Free an open-source skills that make AI coding agents easier to understand, verify, and control.
Download for free →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
Agent, connect blockchain
Agent, connect blockchain
Connect your Claude agent to live crypto prices and trading routes via 1inch
Get the MCP →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Lid closed, agents working
Lid closed, agents working
Keeps your Mac awake while Claude Code, Codex or Cursor works. Lets it sleep when they are done.
Try free for 7 days →
Block distraction from your iPhone for freeBlock distraction from your iPhone for free
Block distraction from your iPhone for free
Block distracting apps from your iPhone permanently without a 3rd party app. Free and open source.
Block now (100% free) →
Granola, the best AI meeting recorder
Granola, the best AI meeting recorder
Notes, actions and memory. Without a meeting bot. First month 100% off.
Download for free →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
Open Steps
Open Steps
Free an open-source skills that make AI coding agents easier to understand, verify, and control.
Download for free →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
Agent, connect blockchain
Agent, connect blockchain
Connect your Claude agent to live crypto prices and trading routes via 1inch
Get the MCP →

notion

mcp-name: io.github.n24q02m/better-notion-mcp

Markdown-first Notion for AI agents -- pages, databases, blocks, and comments in one call.

Mode CI codecov npm Docker License: Apache-2.0

TypeScript Node.js Notion semantic-release Renovate

Sister projects from n24q02m (click to expand)
ProjectTaglineTag
agent-chat-pluginPeer AI agents chat in a shared folder — no human relay, no orchestrator, wor...Tooling
better-code-review-graphKnowledge graph for token-efficient code reviews -- semantic search and call-...MCP
better-drive2-way Google Drive sync with .driveignore filter — rclone engine, Windows trayTooling
better-email-mcpIMAP/SMTP email for AI agents -- read, send, organize folders, and manage att...MCP
better-godot-mcpComposite MCP server for Godot Engine -- 17 composite tools for AI-assisted g...MCP
better-notion-mcpMarkdown-first Notion for AI agents -- pages, databases, blocks, and comments...MCP
better-semantic-releaseDrop-in python-semantic-release fork with built-in release-safety guards (orp...Tooling
better-telegram-mcpTelegram for AI agents -- messages, chats, media, and contacts across both bo...MCP
better-workspace-mcpGoogle Workspace MCP server (Docs/Drive/Calendar/Gmail/Sheets/Slides/Tasks/Ch...MCP
claude-pluginsClaude Code plugin marketplace for the n24q02m MCP servers -- install web sea...Marketplace
imagine-mcpImage and video understanding + generation for AI agents -- across Gemini, Op...MCP
jules-task-archiverChrome Extension for bulk operations on Jules tasks via batchexecute API -- a...Tooling
mcp-coreShared foundation for building MCP servers -- Streamable HTTP transport, OAut...MCP
mnemo-mcpPersistent AI memory with hybrid search and embedded sync. Open, free, unlimi...MCP
qwen3-embedLightweight Qwen3 text embedding and reranking via ONNX Runtime and GGUFLibrary
skretSecrets without the server.CLI
tacetA self-distilling neuro-symbolic cascade that amortises LLM cost across knowl...Tooling
web-coreShared web infrastructure package for search, scraping, HTTP security, and st...Library
wet-mcpOpen-source MCP server for AI agents: web search, content extraction, and lib...MCP

Table of contents

  • Features
  • Install
  • CLI
  • Remote (HTTP mode)
  • Smithery
  • Status
  • Documentation
  • Tools
  • Configuration
  • Comparison
  • Security
  • Build from Source
  • Trust Model
  • License
Better Notion MCP server

Features

  • Markdown in, Markdown out -- human-readable content instead of raw JSON blocks
  • 8 composite tools, 39 actions -- one call instead of chaining 2+ atomic Notion endpoints (plus config, help, and a relay-setup tool)
  • Auto-pagination and bulk operations -- no manual cursor handling or looping
  • Tiered token optimization -- ~77% reduction via compressed descriptions + on-demand help tool
  • Dual transport -- local stdio (integration token) or remote HTTP (OAuth 2.1, no token to paste)

Install

Run with npx (Node.js >= 24) and a Notion integration token from https://www.notion.so/my-integrations (starts with ntn_):

// MCP client config (e.g. .mcp.json / Claude Code / Cursor)
{
  "mcpServers": {
    "notion": {
      "command": "npx",
      "args": ["--yes", "@n24q02m/notion@latest"],
      "env": { "NOTION_TOKEN": "ntn_your_token_here" }
    }
  }
}

The package is @n24q02m/notion (formerly @n24q02m/better-notion-mcp; old package receives one final release then freezes). The MCP Registry id stays io.github.n24q02m/better-notion-mcp, and the legacy better-notion-mcp command is kept as an alias of notion.

Or run the published Docker image (stdio):

docker run --rm -i -e NOTION_TOKEN=ntn_your_token_here n24q02m/notion:latest

Install matrix

ClientInstall
Claude Code/plugin marketplace add n24q02m/claude-plugins + /plugin install better-notion-mcp@n24q02m-plugins (stdio; prompts for NOTION_TOKEN), or an mcpServers entry in .mcp.json / client settings
Codex CLI[mcp_servers.notion] block in ~/.codex/config.toml (stdio command/args or HTTP type/url)
OpenCodemcpServers block in opencode.json
Cursor / Windsurf / Gemini CLI / any MCP clientmcpServers JSON in the client's config — same shape as the example above

Full per-client walkthroughs: mcp.n24q02m.com/servers/better-notion-mcp/setup/. See the Documentation section for per-client setup (Claude Code, Codex, Gemini CLI, Cursor, Windsurf) and HTTP/OAuth mode.

CLI

Installing the package exposes a notion binary (plus the legacy better-notion-mcp alias; run it with npx or after a global install). It has no subcommands -- running it starts the MCP server and speaks the protocol over stdin/stdout, so it is normally launched by an MCP client rather than by hand.

# Start the stdio server (default transport; requires NOTION_TOKEN)
NOTION_TOKEN=ntn_your_token_here npx --yes @n24q02m/notion@latest

# Start the remote HTTP server (OAuth 2.1) instead of stdio
npx --yes @n24q02m/notion@latest --http
Argument / envEffect
(none)stdio transport (default); requires NOTION_TOKEN
--httpHTTP transport with OAuth 2.1 (equivalent to TRANSPORT_MODE=http / MCP_TRANSPORT=http)

See Configuration for the full environment-variable reference.

Remote (HTTP mode)

Deployed with the HTTP transport, the server is a remote endpoint gated by OAuth 2.1 -- no integration token to paste. Point an MCP client that supports remote HTTP servers at the host you deployed it on:

// MCP client config -- remote HTTP (OAuth 2.1)
{
  "mcpServers": {
    "notion": {
      "type": "http",
      "url": "https://<your-host>/mcp"
    }
  }
}

On first connect the client opens Notion's OAuth consent screen; per-user access tokens are held in-process only (see Trust Model). To stand up such an instance, see Self-Hosting (Remote Mode).

Smithery

The repo ships a smithery.yaml config for Smithery. Smithery launches the server over stdio (npx -y @n24q02m/notion) and requires no install-time config -- provide your Notion credentials at runtime through the server's own setup flow (NOTION_TOKEN env, or the relay form; see Configuration).

Status

2026-05-02 -- Architecture stabilization update

Past months saw significant churn around credential handling and the daemon-bridge auto-spawn pattern. This caused multi-process races, browser tab spam, and inconsistent setup UX across plugins. The architecture is now stable: 2 clean modes (stdio + HTTP), no daemon-bridge layer, no auto-spawn from stdio.

Apologies for the instability period. If you encountered issues with prior versions, please update to the latest release and follow the current Setup guide -- most prior workarounds are no longer needed.

Related plugins from the same author:

  • wet -- Web search + content extraction
  • mnemo -- Persistent AI memory
  • imagine-mcp -- Image/video understanding + generation
  • email -- Email management
  • telegram -- Telegram
  • better-godot-mcp -- Godot Engine
  • crg -- Code review knowledge graph

All plugins share the same architecture -- install once, learn pattern transfers.

Documentation

Full docs at mcp.n24q02m.com/servers/better-notion-mcp/:

  • Setup -- install methods for Claude Code, Codex, Gemini CLI, Cursor, Windsurf, mcp.json
  • Modes overview -- stdio (local, integration token) and HTTP (remote, OAuth 2.1)
  • Multi-user setup -- per-JWT-sub credential model (HTTP mode)

Install with AI agent -- paste this to your AI coding agent:

Install MCP server notion following the steps at https://raw.githubusercontent.com/n24q02m/claude-plugins/main/plugins/better-notion-mcp/setup-with-agent.md

Tools

Eight composite Notion tools (39 actions) plus three infrastructure tools (config, config__open_relay, help):

ToolActionsDescription
pagescreate, get, get_property, update, move, archive, restore, duplicateCreate, read, update, and organize pages
databasescreate, get, query, create_page, update_page, delete_page, create_data_source, update_data_source, update_database, list_templatesDatabase CRUD and page management within databases
blocksget, children, append, update, deleteRead and manipulate block content
userslist, get, me, from_workspaceList and retrieve user information
workspaceinfo, searchWorkspace metadata and cross-workspace search
commentslist, get, createPage comments and discussion replies
content_convertmarkdown-to-blocks, blocks-to-markdownConvert between Markdown and Notion blocks (uses a direction parameter)
file_uploadscreate, send, complete, retrieve, listUpload files to Notion (single or multi-part)
configstatus, setup_status, setup_start, setup_reset, setup_complete, set, cache_clearInspect and manage credential state and configuration lifecycle
config__open_relay-Open the relay configuration form in the browser and return the relay URL + credential state
help-Get full documentation for any composite tool (tool_name parameter)

MCP Resources

URIDescription
notion://docs/pagesPage operations reference
notion://docs/databasesDatabase operations reference
notion://docs/blocksBlock operations reference
notion://docs/usersUser operations reference
notion://docs/workspaceWorkspace operations reference
notion://docs/commentsComment operations reference
notion://docs/content_convertContent conversion reference
notion://docs/file_uploadsFile upload reference

Configuration

VariableRequiredDefaultDescription
NOTION_TOKENYes (stdio)-Notion integration token
TRANSPORT_MODE / MCP_TRANSPORTNostdioSet either to http for remote mode (or pass --http)
PUBLIC_URLNo (http)-Server's public URL for OAuth redirect links
NOTION_OAUTH_CLIENT_IDYes (http)-Notion Public Integration client ID (or --oauth-client-id=<id> CLI flag, which overrides the env var)
NOTION_OAUTH_CLIENT_SECRETYes (http)-Notion Public Integration client secret (or --oauth-client-secret=<secret> CLI flag, which overrides the env var)
MCP_AUTH_DISABLENo (http)-Set to 1 to skip Bearer JWT verification when behind an external auth gateway
PORTNo0 (OS-assigned)Server port; set explicitly (e.g. 8080) to bind a fixed port
HOSTNo-Bind address (http mode)

Self-Hosting (Remote Mode)

You can self-host the remote server with your own Notion OAuth app.

Prerequisites:

  1. Create a Public Integration at https://www.notion.so/my-integrations
  2. Set the redirect URI to https://your-domain.com/callback
  3. Note your client_id and client_secret
docker run -p 8080:8080 \
  -e TRANSPORT_MODE=http \
  -e PORT=8080 \
  -e PUBLIC_URL=https://your-domain.com \
  -e NOTION_OAUTH_CLIENT_ID=your-client-id \
  -e NOTION_OAUTH_CLIENT_SECRET=your-client-secret \
  n24q02m/notion:latest

Docker Compose (loopback)

docker-compose.http.yml builds the http image target and publishes it on the host loopback interface only (127.0.0.1:8081), so the server is never reachable from other machines directly:

export NOTION_OAUTH_CLIENT_ID=your-client-id
export NOTION_OAUTH_CLIENT_SECRET=your-client-secret
export CREDENTIAL_SECRET=$(openssl rand -hex 32)
export PUBLIC_URL=https://your-domain.com
docker compose -f docker-compose.http.yml up

The server listens on http://localhost:8081/mcp. To expose it, put your own TLS reverse proxy in front of the loopback port and set PUBLIC_URL to the public origin (the Notion redirect URI is <PUBLIC_URL>/callback). Set CREDENTIAL_SECRET: it derives a deterministic OAuth signing key, so user identity survives a container recreate.

Per-user Notion access tokens are held in-process only and are cleared on restart. Do NOT set MCP_AUTH_DISABLE on a shared/public deployment -- it collapses all users into a single token bucket.

Release images are published multi-arch (amd64 + arm64) to Docker Hub (n24q02m/notion) and GHCR (ghcr.io/n24q02m/notion). There is no n24q02m-hosted HTTP endpoint.

Comparison

How notion stacks up against direct competitors in each pillar:

Capabilitynotionmakenotion/notion-mcp-serversuekou/mcp-notion-serverawkoy/notion-mcp-server
Markdown in / outYes (round-trip on pages + blocks)No (raw Notion JSON)partial (experimental, append + opt-in convert)Yes (round-trip + GFM)
Composite tool designYes (8 composite tools, 39 actions)No (22 endpoint-mapped tools)partial (simplified + raw JSON tools)Yes (2 dispatch tools, 35+ ops)
File uploads to NotionYes (file_uploads, single + multi-part)NoNoYes (upload_file, single + multi-part)
CommentsYes (comments: list/get/create)YesYesYes
Remote HTTP + OAuth 2.1 transportYes (per-JWT-sub multi-user)partial (HTTP + bearer token, no OAuth)No (stdio token only)No (stdio token only)
Self-hostableYes (Docker, own OAuth app)YesYesYes
LicenseApache-2.0?MITMIT

Security

  • OAuth 2.1 + PKCE S256 -- Secure authorization with code challenge
  • Rate limiting -- 120 req/min/IP on HTTP transport
  • Session owner binding -- IP check + TTL for pending token binds
  • Null safety -- Handles Notion API quirks (comments.list 404, undefined rich_text)

Build from Source

git clone https://github.com/n24q02m/notion.git
cd notion
bun install
bun run dev

Trust Model

This plugin implements TC-NearZK (in-memory, ephemeral). See the trust model reference for full classification.

ModeStorageEncryptionWho can read your data?
HTTP self-hostIn-memory Map<sub, OAuthToken>In-process onlyServer process (cleared on restart); the operator running it
stdio (local)config.enc in the OS config dir (%APPDATA%\mcp\Config\config.enc on Windows, ~/.config/mcp/config.enc on Linux/macOS)AES-GCM, machine-bound keyOnly your OS user

License

Apache-2.0 -- See LICENSE.

Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Lid closed, agents working
Lid closed, agents working
Keeps your Mac awake while Claude Code, Codex or Cursor works. Lets it sleep when they are done.
Try free for 7 days →
Block distraction from your iPhone for freeBlock distraction from your iPhone for free
Block distraction from your iPhone for free
Block distracting apps from your iPhone permanently without a 3rd party app. Free and open source.
Block now (100% free) →
Granola, the best AI meeting recorder
Granola, the best AI meeting recorder
Notes, actions and memory. Without a meeting bot. First month 100% off.
Download for free →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
Open Steps
Open Steps
Free an open-source skills that make AI coding agents easier to understand, verify, and control.
Download for free →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
Agent, connect blockchain
Agent, connect blockchain
Connect your Claude agent to live crypto prices and trading routes via 1inch
Get the MCP →

Configuration

NOTION_TOKEN*secret

Notion integration token. Create at https://www.notion.so/my-integrations

Categories
Documents & Knowledge
Registryactive
Package@n24q02m/better-notion-mcp
TransportSTDIO, HTTP
AuthRequired
UpdatedJun 9, 2026
View on GitHub

More from n24q02m

  • Better Code Review Graph53
  • Better Godot Mcp24
  • Better Email Mcp21
  • Wet Mcp9
  • Better Telegram MCP8
  • Mnemo Mcp7
  • Imagine Mcp2

Related Documents & Knowledge MCP Servers

View all →
grey-iris avatar
Easy Notion

io.github.misterwigglesworth/easy-notion

Markdown-first Notion MCP server — 92% fewer tokens, 26 tools, round-trip fidelity.
30
combjellyshen avatar
Zotero Bridge

combjellyshen/zoterobridge

MCP Server for Zotero SQLite Database - collection, tagging, PDF reading and more.
10
sweir1 avatar
Obsidian Brain

sweir1/obsidian-brain

Obsidian MCP server: semantic search, knowledge graph, and vault editing. No plugin required.
7
gigabrainobserver avatar
Google Docs Mcp Server

gigabrainobserver/google-docs-mcp-server

Google Docs MCP server with full tab support, markdown extraction, and batch updates.
4
mrslbt avatar
Pdf It

mrslbt/pdf-it

Native PDF renderer for AI markdown. Cover, TOC, page-numbered footer. No Chrome dependency.
1
seynurmammad0v avatar
Obsidian MCP

seynurmammad0v/obsidian-mcp

Turns Obsidian vaults into AI-queryable knowledge graphs with 12 tools
1