Notion MCP server — search, export, and import pages as markdown
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"notion": {
"env": {
"NOTION_TOKEN": "your_token_v2_value",
"NOTION_USER_ID": "your_user_id",
"NOTION_SPACE_ID": "your_space_id"
},
"args": [
"@shck-dev/notion-mcp"
],
"command": "bunx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Notion MCP Server — search, export, and import pages as markdown
No automated test available for this server. Check the GitHub README for setup instructions.
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
No package registry to scan.
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in productivity
Dynamic problem-solving through sequential thought chains
Persistent memory using a knowledge graph
mini cli search engine for your docs, knowledge bases, meeting notes, whatever. Tracking current sota approaches while being all local
Local-first AI memory with knowledge graphs and hybrid search. 17+ AI tools via MCP. Free.
MCP Security Weekly
Get CVE alerts and security updates for Notion MCP Server and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
Notion MCP Server — search, export, and import pages as markdown
No workspace admin. No OAuth. No page sharing.
Just paste 3 values from your browser and go.
npx @shck-dev/notion-mcp init: paste a browser "Copy as cURL" and it extracts + saves your credentialsnotion_setup prompt and a notion://guide resource for in-client onboarding| Tool | Description |
|---|---|
notion_search | Full-text search across all pages in your workspace |
notion_export_page | Export any Notion page as markdown; image links resolve to viewable CDN URLs (pass image_dir to download images locally instead) |
notion_import_page | Write markdown to a Notion page — replaces all existing content |
notion_import_page_from_file | Write a local .md file to a page — replaces all content |
notion_append_to_page | Append markdown to the end of a page (non-destructive) |
notion_append_to_page_from_file | Append a local .md file to the end of a page (non-destructive) |
notion_create_page | Create a new sub-page, optionally prefilled with markdown |
notion_create_page_from_file | Create a new sub-page from a local .md file |
notion_add_image | Append an image to the end of a page — local file is uploaded to Notion, http(s) URL is referenced as-is |
notion_list_comments | List open discussion threads on a page |
notion_add_comment | Start a new discussion — inline (anchored to text) or block-level |
notion_reply_comment | Reply to an existing discussion thread |
notion_init | Paste a browser "Copy as cURL" to extract & save credentials |
| This MCP server | Official Notion API | |
|---|---|---|
| Setup | Paste 3 values from DevTools | Create integration, get admin approval, share pages |
| Page access | Everything you can see | Only explicitly shared pages |
| Markdown | Bidirectional (export + import) | Read-only blocks API |
| Auth | Cookie (token_v2) | OAuth / integration token |
Trade-off: The internal API is undocumented and may change. Token expires periodically (re-grab from browser).
npx @shck-dev/notion-mcp init
Open Notion in Chrome → DevTools (F12) → Network → click any request to notion.so/api/v3/… → right-click → Copy as cURL, then paste it and press Ctrl-D. Your token, user id, and works