Notion MCP
一个简单的模型上下文协议(MCP)服务器,它与 Notion 的 API 集成,以便通过 Claude 管理我的个人待办事项列表。
README
Notion MCP 集成
一个简单的模型上下文协议 (MCP) 服务器,与 Notion 的 API 集成,通过 Claude 管理我的个人待办事项列表。 这是一个基本的实现,专门为我在 Notion 中极简的待办事项列表设置而定制。
<p align="center"> <img src="assets/demo.gif" width="600"/> </p>
重要提示
这是一个个人项目,专为非常特定的用例而设计:我简单的 Notion 待办事项列表,只有三个属性:
- 任务(标题)
- 时间(选择,只有两个选项:“今天”或“稍后”)
- 复选框(标记是否完成)
虽然你可以将其用作你自己的 Notion 集成的起点,但你可能需要修改代码以匹配你特定的数据库结构和要求。
功能
- 添加新的待办事项
- 查看所有待办事项
- 查看今天的任务
- 将任务标记为完成
前提条件
- Python 3.10 或更高版本
- 一个 Notion 帐户
- 一个 Notion 集成(API 密钥)
- 一个与上述完全匹配的 Notion 数据库结构(或者愿意修改代码以适应你的结构)
设置
- 克隆存储库:
git clone https://github.com/yourusername/notion-mcp.git
cd notion-mcp
- 设置 Python 环境:
python -m venv .venv
source .venv/bin/activate # 在 Windows 上使用:.venv\Scripts\activate
uv pip install -e .
-
创建一个 Notion 集成:
- 转到 https://www.notion.so/my-integrations
- 创建新的集成
- 复制 API 密钥
-
与集成共享你的数据库:
- 在 Notion 中打开你的待办事项数据库
- 单击“...”菜单 → “添加连接”
- 选择你的集成
-
创建一个
.env
文件:
NOTION_API_KEY=your-api-key-here
NOTION_DATABASE_ID=your-database-id-here
- 配置 Claude Desktop:
{
"mcpServers": {
"notion-todo": {
"command": "/path/to/your/.venv/bin/python",
"args": ["-m", "notion_mcp"],
"cwd": "/path/to/notion-mcp"
}
}
}
运行服务器
服务器可以通过两种方式运行:
- 直接从命令行:
# 从激活虚拟环境的项目目录中
python -m notion_mcp
- 通过 Claude Desktop 自动运行(推荐):
- 如果在
claude_desktop_config.json
中正确配置,服务器将在 Claude 启动时启动 - 无需手动服务器管理
- 关闭 Claude 时服务器停止
注意:直接运行时,服务器不会显示任何输出,除非出现错误 - 这是正常的,因为它正在等待 MCP 命令。
用法
通过 Claude 的基本命令:
- "Show all my todos" (显示我所有的待办事项)
- "What's on my list for today?" (我今天有什么任务?)
- "Add a todo for today: check emails" (添加一个今天的待办事项:检查电子邮件)
- "Add a task for later: review project" (添加一个稍后的任务:审查项目)
局限性
- 仅适用于特定的 Notion 数据库结构
- 不支持复杂的数据库模式
- 仅限于“今天”或“稍后”的任务安排
- 不支持其他属性或自定义字段
- 基本的错误处理
- 没有高级功能,如重复任务、优先级或标签
自定义
如果你想将其用于不同的数据库结构,你需要修改 server.py
文件,特别是:
create_todo()
函数以匹配你的数据库属性call_tool()
中的待办事项格式以处理你的数据结构- 如果你想要不同的选项,则修改
list_tools()
中的输入模式
项目结构
notion_mcp/
├── pyproject.toml
├── README.md
├── .env # 不包含在 repo 中
└── src/
└── notion_mcp/
├── __init__.py
├── __main__.py
└── server.py # 主要实现
许可证
MIT 许可证 - 使用风险自负
致谢
- 专为与 Claude Desktop 配合使用而构建
- 使用 Notion 的 API
推荐服务器
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
mcp-server-qdrant
这个仓库展示了如何为向量搜索引擎 Qdrant 创建一个 MCP (Managed Control Plane) 服务器的示例。
mult-fetch-mcp-server
一个多功能的、符合 MCP 规范的网页内容抓取工具,支持多种模式(浏览器/Node)、格式(HTML/JSON/Markdown/文本)和智能代理检测,并提供双语界面(英语/中文)。
AIO-MCP Server
🚀 集成了 AI 搜索、RAG 和多服务(GitLab/Jira/Confluence/YouTube)的一体化 MCP 服务器,旨在增强 AI 驱动的开发工作流程。来自 Folk。
https://github.com/Streen9/react-mcp
react-mcp 与 Claude Desktop 集成,能够根据用户提示创建和修改 React 应用程序。
MCP Atlassian
适用于 Atlassian Cloud 产品(Confluence 和 Jira)的 Model Context Protocol (MCP) 服务器。此集成专为 Atlassian Cloud 实例设计,不支持 Atlassian Server 或 Data Center 部署。

any-chat-completions-mcp
将 Claude 与任何 OpenAI SDK 兼容的聊天完成 API 集成 - OpenAI、Perplexity、Groq、xAI、PyroPrompts 等。
MySQL MCP Server
允许人工智能助手通过受控界面列出表格、读取数据和执行 SQL 查询,从而使数据库探索和分析更安全、更有条理。
browser-use MCP server
一个由人工智能驱动的浏览器自动化服务器,它实现了模型上下文协议,从而能够使用自然语言控制网页浏览器,以执行诸如导航、表单填写和视觉交互等任务。