Notion自动工作流

一个Python脚本,使用Claude Code AI助手自动处理Notion页面中的待办事项,提取未完成项,实现代码更改,提交更改并将待办事项标记为完成。

  • by alioth-stat
  • 本地部署
  • 更新于
在 GitHub 查看 alioth-stat/dante-notion-mcp

使用说明

# Notion Automatic Workflow

一个Python脚本,使用Claude Code AI助手自动处理Notion页面中的todo项目。该脚本找到指定的Notion页面,提取未完成的todo项目,实现每个todo中描述的代码更改,提交更改,并将todo标记为完成。

特性

  • 🔍 自动页面发现:按名称搜索Notion页面
  • ✅ 待办事项处理:提取和处理未选中的待办事项
  • 🤖 人工智能驱动的实施:使用Claude Code实现代码更改
  • 📝 Git集成:自动提交带有描述性消息的更改
  • ✨ 概念更新:将已完成的待办事项标记为Notion中的已完成事项

先决条件

系统要求

  • Python 3.9或更高版本
  • Node.js 16.0.0或更高版本
  • npm(节点包管理器)
  • Git(用于提交更改)

所需服务

安装

1.克隆或下载

git clone <repository-url>
cd Notionmcp

2.安装Python依赖项

pip3 install python-dotenv rich

3.安装克劳德代码

npm install -g @anthropic/claude-code

4.设置环境变量

创建一个 .env 项目目录中的文件:

cp .env.example .env  # if available, or create manually

编辑 .env 使用API密钥文件:

NOTION_INTERNAL_INTEGRATION_SECRET=your_notion_integration_token
ANTHROPIC_API_KEY=your_anthropic_api_key
OPENAI_API_KEY=your_openai_api_key  # optional

5.配置概念集成

  1. 首选 概念整合
  2. 创建新的集成
  3. 复制“内部集成令牌”
  4. 通过集成共享您的Notion页面/数据库

6.验证MCP配置

确保 mcp.json 存在并包含:

{
  "mcpServers": {
    "notionApi": {
      "command": "npx",
      "args": ["-y", "@notionhq/notion-mcp-server"],
      "env": {
        "OPENAPI_MCP_HEADERS": "{\"Authorization\": \"Bearer YOUR_NOTION_TOKEN\", \"Notion-Version\": \"2022-06-28\"}"
      }
    }
  }
}

用法

基本用法

python3 notion_automatic_workflow.py "<notion_page_name>"

示例

python3 notion_automatic_workflow.py "TARSE"

运作原理

  1. 页面发现:在Notion中搜索具有指定名称的页面
  2. 内容提取:从页面中检索所有块,重点关注todo项目
  3. 待办事项处理:对于每个未选中的待办事项:
    • 阅读并理解todo描述
    • 使用Claude代码实现所需的更改
    • 如果测试可用,则测试实现
    • 提交带有描述性消息的更改
    • 在Notion中将待办事项标记为完成
  4. 总结:提供所有已处理待办事项的报告

故障排除

常见问题

“无效的API密钥”错误

  • 验证您的 ANTHROPIC_API_KEY 在 .env 文件
  • 确保API密钥有效并且具有足够的信用

“未找到NOTIONINTERNAL_INGRATION_SECRET”

  • 检查你的 .env 文件存在并包含Notion令牌
  • 验证集成令牌是否正确

“未找到命令‘claude’”

  • 安装克劳德代码: npm install -g @anthropic/claude-code
  • 确保npm全局bin目录在您的PATH中

“没有这样的文件或目录:uv”

  • 此错误已在脚本中修复-请确保您使用的是更新版本

MCP服务器连接问题

  • 验证是否安装了Node.js(node --version)
  • 检查中的Notion API版本 mcp.json 支持(2022-06-28)

调试模式

要进行详细的调试,您可以手动运行Claude Code:

claude -p "Find Notion page named <PAGE_NAME>" --mcp-config mcp.json --verbose

项目结构

Notionmcp/
├── notion_automatic_workflow.py  # Main script
├── dependencies.json            # Dependency specification
├── mcp.json                    # MCP server configuration
├── .env                        # Environment variables
└── README.md                   # This file

依赖项

看 dependencies.json 获取所有必需依赖项的完整列表,包括:

  • Python包(Python dotenv,丰富)
  • 系统工具(Claude Code、Node.js)
  • MCP服务器(@notionhq/概念MCP服务器)
  • 环境变量和配置文件

贡献

  1. 分叉存储库
  2. 创建要素分支
  3. 进行更改
  4. 彻底测试
  5. 提交拉取请求

免责声明

这个项目是粉丝创作的,与数字极端或战争框架游戏无关。Dante和Warframe是Digital Extremes有限公司的商标。

许可证

此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。

支持

对于问题和疑问:

  • 检查上面的故障排除部分
  • 查看 dependencies.json 需求文件
  • 确保所有环境变量都已正确配置