Token-efficient, markdown-first Notion MCP server — agents write markdown, never touch raw Notion JSON
If you already use Easy Notion MCP, the easy notion mcp mcp server is the piece that lets your assistant work with it directly. Token-efficient, markdown-first Notion MCP server — agents write markdown, never touch raw Notion JSON.
Agents write markdown — easy-notion-mcp converts it to Notion's block API and back again.
Installation goes through your MCP client rather than a global install: point it at easy-notion-mcp on npm and it is fetched when the client starts. The copy-paste blocks for Claude Desktop, Claude Code and Cursor are further down this page.
The toolset is worth reading before you wire it up, because it tells you what the integration is really for:
Variable — RequiredNOTION_TOKEN — YesNOTION_ROOT_PAGE_ID — NoNOTION_TRUST_CONTENT — Nocreate_page — Create a page from markdowncreate_page_from_file — Create a page from a local markdown file (stdio only)read_page — Read a page as markdownread_section — Read one section by heading nameread_block — Read one block by ID, including nested children for containersread_toggle — Read one toggle or toggleable heading by titlesearch_in_page — Search raw block text in a page or one toggleappend_content — Append markdown to a pageConfiguration is passed through the environment: NOTION_TOKEN, NOTION_ROOT_PAGE_ID, NOTION_WORK_READONLY, NOTION_WORK_WRITE, NOTION_MCP_BEARER, PAGE_ID, ARCHIVED_BLOCK_ID, NOTION_OAUTH_CLIENT_ID. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.
Among the planning and project tracking options, the useful question is rarely "what can it do" but "what does it cost you to run" — permissions, credentials, and how much of your context its toolset consumes. Easy Notion MCP's toolset — Variable, NOTION_TOKEN, NOTION_ROOT_PAGE_ID and 11 more — is a fair guide to whether it matches your workflow. It is maintained by grey-iris; worth a glance at recent repository activity before you build anything load-bearing on it.
SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.
| Tool | What it does |
|---|---|
| Variable | Required |
| NOTION_TOKEN | Yes |
| NOTION_ROOT_PAGE_ID | No |
| NOTION_TRUST_CONTENT | No |
| create_page | Create a page from markdown |
| create_page_from_file | Create a page from a local markdown file (stdio only) |
| read_page | Read a page as markdown |
| read_section | Read one section by heading name |
| read_block | Read one block by ID, including nested children for containers |
| read_toggle | Read one toggle or toggleable heading by title |
| search_in_page | Search raw block text in a page or one toggle |
| append_content | Append markdown to a page |
| replace_content | Replace all page content atomically (preserves block IDs of matched blocks) |
| update_section | Update a section by heading name; optional heading-preserving body replacement (destructive; duplicate_page first for irreplaceable content) |
{
"mcpServers": {
"easy-notion-mcp": {
"command": "npx",
"args": ["-y", "easy-notion-mcp"],
"env": {
"NOTION_TOKEN": "ntn_your_integration_token",
"NOTION_ROOT_PAGE_ID": "your_root_page_id"
}
}
}
}Configuration as documented by the project. Restart the client after saving.
| Variable | Description | Required |
|---|---|---|
| NOTION_TOKEN | Credential the server authenticates with. | Yes |
| NOTION_ROOT_PAGE_ID | Configuration value read at startup. | Optional |
| NOTION_WORK_READONLY | Configuration value read at startup. | Optional |
| NOTION_WORK_WRITE | Configuration value read at startup. | Optional |
| NOTION_MCP_BEARER | Configuration value read at startup. | Optional |
| PAGE_ID | Configuration value read at startup. | Optional |
| ARCHIVED_BLOCK_ID | Configuration value read at startup. | Optional |
| NOTION_OAUTH_CLIENT_ID | Configuration value read at startup. | Optional |
Your workspace, on speaking terms with AI — search, read and write Notion pages and databases.
Issue tracking at the speed of conversation — Linear's official hosted server with OAuth and zero install.
Search and read your Drive — Docs, Sheets and files become context your assistant can actually use.
Your assistant inside the workspace — read channels, search history, post messages and tame the noise.
Metabase ships its own MCP endpoint — search your BI content, build and run queries, and save questions and dashboards without leaving the chat.
Stop letting your assistant hallucinate n8n node parameters — this server hands it the real schemas, templates and validation.