下面教你如何使用Notion API实现搭建了一个MCP 服务器
安装
1. 在Notion中设置集成:
转到https://www.notion.so/profile/integrations并创建一个新的内部集成或选择一个现有的集成。
虽然我们限制了 Notion API 的公开范围(例如,您将无法通过 MCP 删除数据库),但将工作区数据暴露给 LLM 仍会带来不小的风险。注重安全的用户可能需要进一步配置集成的功能。
例如,您可以通过从“配置”选项卡仅授予“读取内容”访问权限来创建只读集成令牌:
2. 将 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 服务器。首先,构建 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-notion-mcp-server" ] } }}
别忘了ntn_****
用你的集成密钥替换它。你可以在集成配置选项卡中找到它:
图集
3. 将内容与集成连接起来:
确保相关页面和数据库已连接到您的集成。
为此,您需要访问该页面,单击 3 个点图标,然后选择“连接到集成”。
示例
- 使用以下指令
Comment "Hello MCP" on page "Getting started"
AI 将正确规划两个 API 调用,v1/search
和v1/comments
,以完成任务
- 类似地,以下指令将导致名为“Notion MCP”的新页面添加到父页面“Development”
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