使用说明

项目简介

'suekou_mcp-notion-server' 是一个基于 Model Context Protocol (MCP) 的服务器实现,它充当了大型语言模型 (LLM) 与 Notion API 之间的桥梁。通过这个 MCP 服务器,LLM 能够以结构化的方式访问和操作 Notion 工作空间中的内容,例如读取页面、创建数据库、更新 Block 等。这使得 LLM 可以利用 Notion 作为外部知识库或工作平台,扩展其能力边界。

主要功能点

  • 连接 Notion API: 通过 Notion 官方 API,安全地连接到用户指定的 Notion 工作空间。
  • 资源管理 (Resources): 虽然该仓库主要侧重于工具 (Tools) 的实现,但它通过工具间接管理 Notion 中的各种资源,如页面、数据库和Block。
  • 工具注册和执行 (Tools): 提供了丰富的工具集,允许 LLM 执行各种 Notion 操作,包括:
    • Block 操作: 追加子Block、检索Block信息、检索子Block、删除Block。
    • Page 操作: 检索页面信息、更新页面属性。
    • Database 操作: 创建数据库、查询数据库、检索数据库信息、更新数据库、在数据库中创建条目 (页面)。
    • User 操作: 列出所有用户、检索用户信息、检索 Bot 用户信息 (部分 User 操作可能需要 Notion Enterprise 计划)。
    • Comment 操作: 创建评论、检索评论。
    • 搜索: 在 Notion 中搜索页面或数据库。
  • Prompt 模板 (Prompts): 该仓库本身未显式定义 Prompt 模板,但其提供的工具为构建基于 Notion 数据的 Prompt 提供了基础,LLM 客户端可以根据这些工具灵活设计 Prompt 流程。
  • JSON-RPC 协议: 遵循 MCP 协议,使用 JSON-RPC 与客户端进行通信。
  • Stdio 传输协议: 支持 Stdio 作为传输协议,易于集成到各种 LLM 客户端,如 Claude Desktop。

安装步骤

  1. 创建 Notion 集成 (Integration):

    • 访问 Notion Integrations 页面
    • 点击 "New integration"。
    • 为你的集成命名,并选择合适的权限(例如 "Read content", "Update content")。
  2. 获取 Secret Key (Internal Integration Token):

    • 从你的集成设置页面复制 "Internal Integration Token"。
    • 此 Token 将用于服务器的身份验证。
  3. 邀请集成到 Notion 工作空间:

    • 打开你希望集成访问的 Notion 页面或数据库。
    • 点击页面右上角的 "分享" 按钮。
    • 点击 "邀请" 按钮,并选择你创建的集成。
  4. 安装 npm 包:

    • 确保你已安装 Node.js 和 npm。
    • 打开终端,运行命令全局安装 '@suekou/mcp-notion-server':
      npm install -g @suekou/mcp-notion-server

服务器配置

MCP 客户端 (例如 Claude Desktop) 需要配置 MCP 服务器的启动信息。以下是针对 'suekou_mcp-notion-server' 的配置示例,请添加到你的 'claude_desktop_config.json' 文件中:

{
  "mcpServers": {
    "notion": {
      "command": "npx", // 使用 npx 命令执行
      "args": ["@suekou/mcp-notion-server"], //  执行 @suekou/mcp-notion-server 包
      "env": {
        "NOTION_API_TOKEN": "YOUR_NOTION_INTEGRATION_TOKEN" // 替换为你的 Notion 集成 Token
      }
    }
  }
}

配置参数说明:

  • '"server name": "notion"': 为该 MCP 服务器配置命名为 "notion",客户端可以通过这个名称引用它。
  • '"command": "npx"': 指定启动服务器的命令为 'npx',它会查找并执行全局或项目本地安装的 npm 包。
  • '"args": ["@suekou/mcp-notion-server"]': 'npx' 命令的参数,指定要执行的 npm 包为 '@suekou/mcp-notion-server'。
  • '"env": { "NOTION_API_TOKEN": "YOUR_NOTION_INTEGRATION_TOKEN" }': 设置环境变量,'NOTION_API_TOKEN' 用于存储你的 Notion 集成 Token,请务必替换 '"YOUR_NOTION_INTEGRATION_TOKEN"' 为你实际的 Token

基本使用方法

配置完成后,MCP 客户端 (如 Claude Desktop) 应该能够自动连接到 'suekou_mcp-notion-server'。LLM 可以通过调用服务器提供的工具来与 Notion 进行交互。

例如,在 Claude 中,你可以指示它使用 'notion_retrieve_page' 工具来获取指定 Notion 页面的内容,或者使用 'notion_create_database_item' 工具在 Notion 数据库中创建新的条目。

具体的工具名称和参数请参考仓库 'README.md' 文件中 "Tools" 部分的详细描述。在与 LLM 交互时,你需要根据工具的输入要求,提供正确的 'block_id', 'page_id', 'database_id' 等参数。

信息

分类

生产力应用