使用说明

项目简介

本项目是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在桥接 LLM 客户端(如 Claude)与 Notion API。通过此服务器,LLM 可以利用一系列预定义的工具,安全、便捷地操作 Notion 工作空间中的页面、块、数据库等资源,实现内容的创建、查询、更新和删除等功能。

主要功能点

  • 工具集成: 提供了一系列工具,对应 Notion API 的常用操作,例如:
    • 页面操作:创建、检索、更新页面属性、归档页面。
    • 块操作:追加子块、检索块信息、检索子块、删除块。
    • 数据库操作:创建数据库、查询数据库、检索数据库信息、更新数据库、创建数据库条目。
  • MCP 协议支持: 遵循 Model Context Protocol 协议,通过 JSON-RPC 格式处理客户端请求和响应,实现与 MCP 客户端的标准化通信。
  • Stdio 传输: 使用 Stdio 作为默认传输协议,方便本地部署和集成。
  • 能力声明: 服务器启动时会声明自身提供的工具列表,供 MCP 客户端发现和调用。

安装步骤

  1. 创建 Notion 集成:
    • 访问 Notion Your Integrations 页面
    • 点击 "New Integration" 创建一个新的集成,为你的集成命名,并选择必要的权限(例如,"Read content"、"Update content" 等,根据你的使用需求选择)。
  2. 获取密钥:
    • 在你的集成设置页面,复制 "Internal Integration Token" (也称为 "Secret key")。这个密钥将用于服务器连接 Notion API 的身份验证。
  3. 关联工作空间:
    • 在 Notion 中,打开你希望 LLM 客户端访问的页面或数据库。
    • 点击页面右上角的 "分享" 按钮,在弹出的窗口中,点击 "邀请",搜索并选择你创建的集成名称,点击 "邀请" 以关联集成到该页面或数据库。
  4. 安装 Node.js:
    • 确保你的计算机上已安装 Node.js 运行环境。你可以从 Node.js 官网 下载并安装。
  5. 下载代码:
  6. 安装依赖:
    • 打开终端,进入项目代码根目录 'akirapapa-mcp-notion-server'。
    • 运行 'npm install' 或 'yarn install' 命令安装项目所需的依赖包。
  7. 构建项目:
    • 在终端中,运行 'npm run build' 或 'yarn build' 命令编译 TypeScript 代码。构建成功后,会在项目根目录下生成 'dist' 目录,其中包含编译后的 JavaScript 文件 'index.js'。

服务器配置

为了让 MCP 客户端(例如 Claude Desktop)能够连接到这个 Notion MCP 服务器,你需要配置客户端的 'claude_desktop_config.json' 文件。在 'mcpServers' 字段中添加以下配置信息:

{
  "mcpServers": {
    "notion": {
      "command": "node",
      "args": ["dist/index.js"],  //  指向构建后的服务器入口文件路径
      "env": {
        "NOTION_API_TOKEN": "<your-integration-token>" // 替换为你之前复制的 Notion 集成密钥
      }
    }
  }
}

配置参数说明:

  • 'server name': 'notion' - 服务器名称,可以自定义,用于在客户端中标识该服务器。
  • 'command': 'node' - 启动服务器的命令,这里使用 Node.js 运行环境。
  • 'args': '["dist/index.js"]' - 命令参数,指向构建后 'index.js' 文件的相对路径。请根据实际情况调整路径,确保指向正确的入口文件。
  • 'env': '{ "NOTION_API_TOKEN": "<your-integration-token>" }' - 环境变量配置,'NOTION_API_TOKEN' 用于存储你的 Notion 集成密钥,请务必替换 '<your-integration-token>' 为你真实的密钥

基本使用方法

  1. 确保已完成安装步骤并正确配置 MCP 客户端。
  2. 启动 Notion MCP 服务器。由于配置中使用的是 Stdio 传输,服务器会在后台运行,并将日志输出到控制台。
  3. 启动 MCP 客户端(如 Claude Desktop)。客户端会根据配置文件连接到 Notion MCP 服务器。
  4. 在 LLM 客户端中,你可以指示 LLM 使用已声明的 Notion 工具来操作你的 Notion 工作空间。例如,你可以向 Claude 提问: "帮我查询一下 Notion 数据库 ID 为 'xxxx' 的内容" 或 "创建一个新的 Notion 页面,标题为 '会议纪要'"。LLM 客户端会根据你的指令,调用相应的 Notion 工具来执行操作。

注意:

  • 首次运行前请务必正确配置 'NOTION_API_TOKEN' 环境变量。
  • 确保 Notion 集成已正确关联到你希望访问的 Notion 页面或数据库。
  • 请参考仓库 README 和代码注释了解更多工具的详细信息和使用方法。

信息

分类

生产力应用