关于 Notion
这是 Notion API MCP 服务的一个分支,将传输方式从 Stdio 改为 Server-Sent Events(SSE)。它让 MCP 客户端访问已连接的 Notion 页面和数据库,并有意限制开放的 API 范围。
主要功能
- 01通过 MCP 访问 Notion API
- 02SSE 传输方式
- 03读取和创建页面内容
- 04为页面添加评论
- 05支持 npm 和 Docker 部署
适用场景
- 01按 ID 获取 Notion 页面
- 02在父页面下创建页面
- 03为 Notion 页面添加评论
MCP 相关
向 MCP 客户端开放部分 Notion API 功能。此分支使用 Server-Sent Events(SSE)而非 Stdio,可通过 npm 或 Docker 配置集成。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
在 ContexaAI 上部署,几分钟即可开始使用
重要说明
This repository is a fork of the official Notion MCP server available on NPM.
The primary modification is the replacement of the transport mechanism from Stdio to Server-Sent Events (SSE).
Notion MCP 服务
此项目为 Notion API 实现了一个 MCP 服务。
安装
1. 在 Notion 中设置集成:
访问 https://www.notion.so/profile/integrations,创建新的内部集成或选择已有集成。

虽然我们限制了所开放的 Notion API 范围(例如,你无法通过 MCP 删除数据库),但向大模型开放工作区数据仍存在一定风险。注重安全的用户可以进一步配置集成的_功能_。
例如,你可以在“Configuration”选项卡中仅授予“Read content”权限,以创建只读集成令牌:

2. 将内容连接到集成:
确保相关页面和数据库已连接到你的集成。
为此,你需要访问相应页面,点击 3 个点,然后选择“Connect to integration”。

3. 将 MCP 配置添加到客户端:
使用 npm:
将以下内容添加到 .cursor/mcp.json 或 claude_desktop_config.json(MacOS:~/Library/Application\ Support/Claude/claude_desktop_config.json)
{
"mcpServers": {
"notionApi": {
"command": "npx",
"args": ["-y", "@notionhq/notion-mcp-server"],
"env": {
"OPENAPI_MCP_HEADERS": "{\"Authorization\": \"Bearer ntn_****\", \"Notion-Version\": \"2022-06-28\" }"
}
}
}
}
使用 Docker:
使用 Docker 运行 MCP 服务有两种方式:
选项 1:使用官方 Docker Hub 镜像:
将以下内容添加到 .cursor/mcp.json 或 claude_desktop_config.json:
{
"mcpServers": {
"notionApi": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e", "OPENAPI_MCP_HEADERS",
"mcp/notion"
],
"env": {
"OPENAPI_MCP_HEADERS": "{\"Authorization\":\"Bearer ntn_****\",\"Notion-Version\":\"2022-06-28\"}"
}
}
}
}
此方式:
- 使用官方 Docker Hub 镜像
- 通过环境变量妥善处理 JSON 转义
- 提供更可靠的配置方式
选项 2:在本地构建 Docker 镜像:
你也可以在本地构建并运行 Docker 镜像。首先,构建 Docker 镜像:
docker-compose build
然后,将以下内容添加到 .cursor/mcp.json 或 claude_desktop_config.json:
{
"mcpServers": {
"notionApi": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e",
"OPENAPI_MCP_HEADERS={\"Authorization\": \"Bearer ntn_****\", \"Notion-Version\": \"2022-06-28\"}",
"notion-mcp-server"
]
}
}
}
别忘了将 ntn_**** 替换为你的集成密钥。你可以在集成配置选项卡中找到它:
示例
- 使用以下指令
Comment "Hello MCP" on page "Getting started"
AI 将正确规划两次 API 调用,即 v1/search 和 v1/comments,以完成任务
- 类似地,使用以下指令会在父页面“Development”下创建一个名为“Notion MCP”的新页面
Add a page titled "Notion MCP" to page "Development"
- 你也可以直接引用内容 ID
Get the content of page 1a6b35e6e67f802fa7e1d27686f017f2
开发
构建
npm run build
执行
npx -y --prefix /path/to/local/notion-mcp-server @notionhq/notion-mcp-server
发布
npm publish --access public
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。