README
🚀 与 Notion 集成的 MCP 服务器
这是一个简单的 Model Context Protocol (MCP) 服务器,它集成了 Notion 的 API,借助 Claude 来管理个人待办事项列表,专为极简主义待办事项列表量身打造。
🚀 快速开始
先决条件
- 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
pip install -e .
-
创建 Notion 集成:
- 前往 https://www.notion.so/my-integrations
- 创建新的集成
- 复制 API 密钥
-
与你的数据库共享该集成:
- 打开你的待办事项数据库
- 点击菜单中的 "..." → "添加连接"
- 选择你的集成
-
创建
.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 关闭时,服务器也会停止
注意:直接运行时,服务器不会显示任何输出,除非有错误 - 这是正常的,因为它正在等待 MCP 命令。
✨ 主要特性
- 添加新的待办事项
- 查看所有待办事项
- 查看今天的工作任务
- 标记任务为已完成
💻 使用示例
通过 Claude 的基本命令:
- "显示我的所有待办事项"
- "今天有什么在我的列表上?"
- "今天添加一个待办事项:查看邮件"
- "添加一个任务:以后的:审查项目"
🔧 技术细节
项目结构
notion_mcp/
├── pyproject.toml
├── README.md
├── .env # 不包含在仓库中
└── src/
└── notion_mcp/
├── __init__.py
├── __main__.py
└── server.py # 主实现文件
自定义
如果你想使用不同的数据库结构,请修改 server.py 文件,特别是:
create_todo()函数以匹配你的数据库属性call_tool()中的任务格式化,以处理你的数据结构list_tools()中的输入模式,如果你想要不同的选项
📄 许可证
[在这里插入许可证信息,例如 MIT 许可证或其他适用的许可证]
⚠️ 重要提示
这是一个专为特定用例设计的个人项目:我的简单的 Notion 待办事项列表,它只有三个属性:
- 任务(标题)
- 时间(选择器,仅有两个选项:"今天" 或 "以后")
- 复选框(标记是否完成)
尽管你可以将此代码作为起点用于自己的 Notion 集成,但你可能需要根据自己的数据库结构和需求进行修改。
⚠️ 重要提示
这个项目是为特定需求设计的,如果你有其他需求,请根据你的具体情况进行调整。
💡 使用建议
推荐使用自动通过 Claude Desktop 的方式运行服务器,无需手动管理服务器,且当 Claude 关闭时,服务器也会停止。
Scan to contact