Notion MCP Server

Notion MCP Server

site icon
2025.04.13 92
TypeScriptNotion 集成自然语言交互内容管理交流协作开发效率
Notion MCP Server 是一个基于 Model Context Protocol (MCP) 的服务实现,旨在通过自然语言交互使 AI 助手能够与 Notion API 进行交互。该服务器提供了一套完整的工具和端点,用于读取、创建和修改 Notion 内容,支持数据库操作、页面管理、块操作、评论管理以及用户管理等功能。
View on GitHub

Overview

基本能力

产品定位

Notion MCP Server 是一个连接 AI 助手与 Notion 平台的中间件,通过 MCP 协议实现自然语言驱动的 Notion 内容管理。

核心功能

  • Notion 集成:与 Notion 数据库、页面和块进行交互
  • 数据检索:从 Notion 页面、块和数据库中获取信息
  • 内容创建:创建和更新 Notion 页面和块
  • 块管理:在 Notion 页面中追加、更新和删除块
  • 数据库操作:创建、查询和更新数据库
  • 批处理操作:在单个请求中执行多个操作
  • 归档与恢复:归档和恢复 Notion 页面
  • 搜索功能:按标题搜索 Notion 页面和数据库
  • 评论管理:获取、创建和回复页面和讨论的评论
  • 用户管理:检索工作区用户和用户信息

适用场景

  • 通过自然语言指令管理 Notion 内容
  • 自动化 Notion 页面和数据库的创建与更新
  • 批量处理 Notion 内容操作
  • 集成到 AI 助手或开发工具中增强 Notion 交互能力

工具列表

页面操作

  • create_page:创建新页面
  • update_page_properties:更新页面属性
  • archive_page:归档页面
  • restore_page:恢复页面
  • search_pages:按标题搜索页面

数据库操作

  • create_database:创建新数据库
  • query_database:查询数据库
  • update_database:更新数据库

块操作

  • retrieve_block:检索块
  • retrieve_block_children:检索块的子块
  • append_block_children:追加子块
  • update_block:更新块内容
  • delete_block:删除块

批处理操作

  • batch_append_block_children:批量追加子块
  • batch_update_blocks:批量更新块
  • batch_delete_blocks:批量删除块
  • batch_mixed_operations:混合操作

评论操作

  • get_comments:获取评论
  • add_page_comment:添加页面评论
  • add_discussion_comment:添加讨论评论

用户操作

  • get_list_users:获取用户列表
  • get_user:获取用户信息
  • get_bot_user:获取当前机器人用户

常见问题解答

  • 认证错误:确保 Notion token 有正确权限且集成已启用
  • 页面访问问题:确保集成已添加到尝试访问的页面
  • 速率限制:使用批处理操作优化请求

使用教程

使用依赖

  1. 安装 Node.js 和 npm
  2. 获取 Notion API 密钥

安装教程

  1. 克隆仓库
git clone https://github.com/awkoy/notion-mcp-server.git
cd notion-mcp-server
  1. 安装依赖
npm install
  1. 设置环境变量 创建 .env 文件并添加:
NOTION_TOKEN=your_notion_api_key
NOTION_PAGE_ID=your_notion_page_id
  1. 构建项目
npm run build
  1. 运行检查器
npm run inspector

调试方式

  1. 检查环境变量是否正确设置
  2. 验证 Notion 集成是否已添加到目标页面
  3. 使用检查器调试操作
npm run inspector

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。