项目简介

这是一个结合了传统Web界面和现代AI助手集成的待办事项(Todo)应用。它使用Flask构建后端和Web界面,并提供了一个基于Model Context Protocol (MCP) 的服务器代理,允许兼容MCP的AI助手(如Claude Desktop)访问和管理您的待办事项。

主要功能点

  • 任务管理: 支持创建、读取、更新和删除待办事项。
  • 任务状态: 可以标记任务为已完成或未完成。
  • 优先级支持: 识别并处理Todo.txt格式中的优先级标记 (A)-(Z)。
  • 上下文和项目支持: 识别并处理Todo.txt格式中的上下文标记 (@context) 和项目标记 (+project)。
  • AI助手集成: 通过MCP协议,AI助手可以:
    • 获取所有待办事项列表(包括活跃和已完成)。
    • 根据上下文或项目过滤任务。
    • 添加新的任务。
    • 标记任务为完成或未完成。
    • 删除任务。
    • 编辑现有任务的内容。

安装步骤

  1. 克隆仓库: 从GitHub克隆本项目到您的本地计算机。
    git clone https://github.com/polvi/mcp-todo.git
    cd mcp-todo
  2. 安装依赖: 安装运行该应用所需的Python库。这通常包括Flask、requests和mcp相关的库。
    pip install -r requirements.txt
    (请确保仓库中存在 'requirements.txt' 文件,且包含必要的依赖,如 'Flask', 'requests', 'mcp-server' 或 'fastmcp')

服务器配置

要将此应用作为MCP服务器与您的AI助手集成,您需要运行两个部分:Flask后端和MCP服务器代理。

  1. 启动Flask后端: 在项目目录下运行Flask应用。这将启动Web界面和API服务,MCP服务器将连接到此服务。

    python app.py

    (请保持此终端窗口开启,Flask应用默认运行在 'http://127.0.0.1:5000')

  2. 配置AI助手(MCP客户端): 在您的MCP兼容AI助手中,添加入口配置以连接到该MCP服务器。配置信息通常以JSON格式表示,指定如何启动或连接到服务器。对于此项目,典型的配置如下:

    • 服务器名称 (name): 'Todo App Proxy' (这是MCP服务器在其声明中使用的名称)
    • 启动命令 (command): 'python' (用于执行Python脚本的解释器路径)
    • 命令参数 (args): '["mcp_server.py"]' (传递给Python解释器的脚本文件名作为参数)

    将上述信息添加到您的AI助手的MCP服务器配置界面中。具体的配置方式请参考您所使用的AI助手的文档。例如,如果您使用'mcp'命令行工具或某些AI客户端,可能会有一个配置文件或用户界面来添加这些信息。

    注意: 配置时填写的 'command' 是执行 'mcp_server.py' 脚本的命令,通常是 'python' 或 'python3'。 'args' 列表则包含脚本文件名本身。

基本使用方法

  1. 按照上述步骤,首先启动Flask后端 ('python app.py')。
  2. 然后,在另一个终端窗口或通过您的AI助手的启动方式,启动MCP服务器 ('python mcp_server.py')。
  3. 配置您的MCP兼容AI助手,使其能够连接到刚刚启动的MCP服务器(参照上一步的配置说明)。
  4. 一旦连接成功,您的AI助手就可以通过调用该MCP服务器提供的资源和工具来与您的待办事项列表进行交互。例如,您可以尝试让AI助手执行以下操作:
    • 询问“我的待办事项有哪些?” (AI助手可能会调用 'tasks://all' 资源)
    • 要求“添加一个任务:购买牛奶” (AI助手可能会调用 'add_task' 工具)
    • 让AI助手“完成任务编号3” (AI助手可能会调用 'complete_task' 工具并提供任务ID)
    • 等等。

请注意,Web界面 ('http://127.0.0.1:5000') 和MCP接口是并行的,您可以同时使用两者管理您的待办事项。

信息

分类

生产力应用