Notion API服务

Notion MCP Server是一个为Notion API设计的服务,使Claude能够与Notion工作区进行交互,支持块操作、页面管理、数据库查询等功能。

  • by Akira-Papa
  • TypeScript
  • 本地部署
  • 4 星标
  • 更新于
在 GitHub 查看 akira-papa/akirapapa-mcp-notion-server

使用说明

MCP服务器概念

用于Notion API的MCP服务器,使Claude能够与Notion工作空间进行交互。

工具

  1. notion_append_block_children

    • 将子块附加到父块。
    • 所需输入:
      • block_id (string):父块的ID。
      • children (array):要附加的块对象数组。
    • 返回:有关附加块的信息。
  2. notion_retrieve_block

    • 检索特定块的信息。
    • 所需输入:
      • block_id (string):要检索的块的ID。
    • 返回:有关块的详细信息。
  3. notion_retrieve_block_children

    • 检索特定块的子对象。
    • 所需输入:
      • block_id (string):父块的ID。
    • 可选输入:
      • start_cursor (string):下一页结果的光标。
      • page_size (数字,默认值:100,最大值:100):要检索的块数。
    • 返回:子块列表。
  4. notion_delete_block

    • 删除特定块。
    • 所需输入:
      • block_id (string):要删除的块的ID。
    • 返回:确认删除。
  5. notion_retrieve_page

    • 检索特定页面的信息。
    • 所需输入:
      • page_id (string):要检索的页面的ID。
    • 返回:关于页面的详细信息。
  6. notion_update_page_properties

    • 更新页面的属性。
    • 所需输入:
      • page_id (string):要更新的页面的ID。
      • properties (对象):要更新的属性。
    • 返回:有关更新页面的信息。
  7. notion_create_database

    • 创建新数据库。
    • 所需输入:
      • parent (object):数据库的父对象。
      • title (array):作为富文本数组的数据库标题。
      • properties (object):数据库的属性架构。
    • 返回:有关创建的数据库的信息。
  8. notion_query_database

    • 查询数据库。
    • 所需输入:
      • database_id (string):要查询的数据库的ID。
    • 可选输入:
      • filter (object):过滤条件。
      • sorts (array):排序条件。
      • start_cursor (string):下一页结果的光标。
      • page_size (数字,默认值:100,最大值:100):要检索的结果数。
    • 返回:查询结果列表。
  9. notion_retrieve_database

    • 检索特定数据库的信息。
    • 所需输入:
      • database_id (string):要检索的数据库的ID。
    • 返回:有关数据库的详细信息。
  10. notion_update_database

    • 更新有关数据库的信息。
    • 所需输入:
      • database_id (string):要更新的数据库的ID。
    • 可选输入:
      • title (array):数据库的新标题。
      • description (array):数据库的新描述。
      • properties (对象):已更新属性架构。
    • 返回:有关已更新数据库的信息。
  11. notion_create_database_item

    • 在Notion数据库中创建新项目。
    • 所需输入:
      • database_id (string):要将项目添加到的数据库的ID。
      • properties (object):新项目的属性。这些应该与数据库架构匹配。
    • 返回:有关新创建项目的信息。

设置

以下是对以下文章中提到的步骤的详细解释:

  • 英文版本:https://dev.to/suekou/operating-notion-via-claude-desktop-using-mcp-c0h
  • 日文版本:https://qiita.com/suekou/items/44c864583f5e3e6325d9
  1. 创建概念集成:

    • 访问 注意您的集成页面.
    • 单击“新建集成”。
    • 命名您的集成并选择适当的权限(例如,“读取内容”、“更新内容”)。
  2. 检索密钥:

    • 从您的集成中复制“内部集成令牌”。
    • 此令牌将用于身份验证。
  3. 将集成添加到工作区:

    • 在Notion中打开要集成访问的页面或数据库。
    • 单击右上角的导航按钮。
    • 单击“连接到”按钮并选择您的集成。
  4. 配置Claude桌面: 将以下内容添加到您的 claude_desktop_config.json:

    {
      "mcpServers": {
        "notion": {
          "command": "node",
          "args": ["your-built-file-path"],
          "env": {
            "NOTION_API_TOKEN": "your-integration-token"
          }
        }
      }
    }
    

故障排除

如果遇到权限错误:

  1. 确保集成具有所需的权限。
  2. 验证是否邀请集成到相关页面或数据库。
  3. 确认令牌和配置已正确设置 claude_desktop_config.json.

许可证

此MCP服务器根据MIT许可证获得许可。这意味着您可以根据MIT许可证的条款和条件自由使用、修改和分发软件。有关更多详细信息,请参阅项目存储库中的LICENSE文件。