首页
学习
活动
专区
圈层
工具
发布
MCP广场 >详情页
Notion MCP2026-10-23298分享添加福利群:解决AI开发者的「MCP实战痛点」
一个简单的模型上下文协议(MCP)服务器,通过 Claude 使用 Notion 的 API 来管理我的个人待办事项列表。
By danhilse
2026-10-23298
github
详情内容

Notion MCP 集成方案

这是一个简单的模型上下文协议(MCP)服务器,通过与Notion API集成,让我能够通过Claude管理个人待办事项列表。这是一个专门为我在Notion中的极简待办事项设置量身定制的基础实现。

重要说明

这是一个针对非常特定使用场景的个人项目:我的Notion待办事项列表只有三个属性:

  • 任务(标题)
  • 时间(仅两个选项的选择框:"今天"或"稍后")
  • 复选框(标记是否完成)

示例Notion数据库

虽然你可以将此项目作为自己Notion集成的起点,但你可能需要修改代码以匹配你的特定数据库结构和需求。

功能特点

  • 添加新的待办事项
  • 查看所有待办事项
  • 查看今天的任务
  • 将任务标记为已完成

前提条件

  • Python 3.10或更高版本
  • Notion账户
  • Notion集成(API密钥)
  • 与上述完全结构匹配的Notion数据库(或愿意为你的结构修改代码)

设置步骤

  1. 克隆仓库:
git clone https://github.com/yourusername/notion-mcp.git
cd notion-mcp
  1. 设置Python环境:
python -m venv .venv
source .venv/bin/activate  # Windows用户使用:.venv\Scripts\activate
uv pip install -e .
  1. 创建Notion集成:

    • 访问 https://www.notion.so/my-integrations
    • 创建新集成
    • 复制API密钥
  2. 与集成共享你的数据库:

    • 在Notion中打开你的待办事项数据库
    • 点击"..."菜单 → "添加连接"
    • 选择你的集成
  3. 创建.env文件:

NOTION_API_KEY=你的API密钥
NOTION_DATABASE_ID=你的数据库ID
  1. 配置Claude Desktop:
{
  "mcpServers": {
    "notion-todo": {
      "command": "/path/to/your/.venv/bin/python",
      "args": ["-m", "notion_mcp"],
      "cwd": "/path/to/notion-mcp"
    }
  }
}

运行服务器

服务器可以通过两种方式运行:

  1. 直接从命令行运行:
# 在项目目录中,虚拟环境已激活的情况下
python -m notion_mcp
  1. 通过Claude Desktop自动运行(推荐):
  • 如果在claude_desktop_config.json中正确配置,服务器将在Claude启动时自动启动
  • 无需手动管理服务器
  • Claude关闭时服务器会停止

注意:直接运行时,除非出现错误,否则服务器不会显示任何输出——这是正常的,因为它正在等待MCP命令。

使用方法

通过Claude的基本命令:

  • "显示我所有的待办事项"
  • "我今天的清单上有什么?"
  • "添加一个今天的待办事项:检查邮件"
  • "添加一个稍后的任务:审查项目"

局限性

  • 仅适用于特定的Notion数据库结构
  • 不支持复杂的数据库模式
  • 仅限于"今天"或"稍后"的任务调度
  • 不支持额外的属性或自定义字段
  • 基本的错误处理
  • 没有高级功能,如重复任务、优先级或标签

自定义

如果你想使用不同的数据库结构,你需要修改server.py文件,特别是:

  • create_todo()函数以匹配你的数据库属性
  • call_tool()中的待办事项格式化以处理你的数据结构
  • list_tools()中的输入模式(如果你想要不同的选项)

项目结构

notion_mcp/
├── pyproject.toml
├── README.md
├── .env                   # 不包含在仓库中
└── src/
    └── notion_mcp/
        ├── __init__.py
        ├── __main__.py
        └── server.py      # 主要实现

许可证

MIT许可证 - 使用风险自负

致谢

  • 专为与Claude Desktop配合使用而构建
  • 使用Notion的API
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档