C

Notion MCP Server

Official MCP server for the Notion API, auto-generated from OpenAPI specification

Overall Score65/100

Score Breakdown

Server Info

Package
@notionhq/notion-mcp-server
Registry
npm
Maintainer
NotionVendor
Category
Project Management
Tags
docsdatabasesproductivity
Last Scanned
7 Apr 2026

Findings

3 issues

Authentication & Identity

HIGHNo per-request auth - requires instance-per-user

Stdio-only transport via StdioServerTransport. Auth via NOTION_TOKEN env var (converted to Bearer header with Notion-Version header) or OPENAPI_MCP_HEADERS env var (raw JSON headers object). No HTTP transport in the server itself. No MCP OAuth implementation. The proxy.ts parseHeadersFromEnv() metho... For multi-tenant deployment, the platform must spawn a separate server instance per user.

Remediation

Add HTTP/SSE transport to accept per-request Authorization headers, or implement the MCP OAuth spec.

Tool Schema Quality

HIGHRequired fields missing on 3 write operations

Write tools without required field declarations: API-post-page, API-create-a-comment, API-create-a-data-source.

Remediation

Add required arrays to all write/delete tool schemas.

MEDIUMOnly 0 of 22 schemas have parameter constraints

Most schemas lack maxLength, enum, or pattern constraints on string parameters.

Remediation

Add constraints to string parameters, especially on write operations.

Tools

22 total
NameDescriptionRisk
API-get-userNotion | Retrieve a userread
API-get-usersNotion | List all usersread
API-get-selfNotion | Retrieve your token's bot userread
API-post-searchNotion | Search by titleread
API-get-block-childrenNotion | Retrieve block childrenread
API-patch-block-childrenNotion | Append block childrenwrite
API-retrieve-a-blockNotion | Retrieve a blockread
API-update-a-blockNotion | Update a blockwrite
API-delete-a-blockNotion | Delete a blockadmin
API-retrieve-a-pageNotion | Retrieve a pageread
API-patch-pageNotion | Update page propertieswrite
API-post-pageNotion | Create a pagewrite
API-retrieve-a-page-propertyNotion | Retrieve a page property itemread
API-retrieve-a-commentNotion | Retrieve commentsread
API-create-a-commentNotion | Create commentwrite
API-query-data-sourceNotion | Query a data sourceread
API-retrieve-a-data-sourceNotion | Retrieve a data sourceread
API-update-a-data-sourceNotion | Update a data sourcewrite
API-create-a-data-sourceNotion | Create a data sourcewrite
API-list-data-source-templatesNotion | List templates in a data sourceread
API-retrieve-a-databaseNotion | Retrieve a databaseread
API-move-pageNotion | Move a pagewrite

Deploy Notion MCP Server securely

CompleteFlow adds per-user authentication, permission scoping, and audit logging to any MCP server out of the box.

Deploy on CompleteFlow