任务列表服务器

一个基于C#和.NET构建的任务列表服务器,通过Model Context Protocol (MCP)提供任务管理功能,适用于Visual Studio Code的Agent Mode客户端。

  • by LucaLatini
  • C#
  • 本地部署
  • 更新于
在 GitHub 查看 LucaLatini/MyTodoMcp

使用说明

MyTodoMcp - 带有MCP的服务器待办事项列表

一个简单的服务器,用于管理任务列表(待办事项列表),用C#和.NET构建。服务器通过(以下方式)暴露命令: 模型上下文协议(MCP) 以便兼容客户端使用,如Visual Studio Code的代理模式。

这个项目使用 Entity Framework Core(实体框架核心) 带有一个数据库 SQLite 将任务保存到本地文件中(todos.db)。


🚀 功能

  • 添加 一个新的任务,带有描述和优先级。
  • 列出 所有任务,按状态(已完成或待处理)过滤。
  • 完成 一个现有的任务。
  • 修改 一个任务的描述。
  • 消除 从列表中选一个任务。
  • 查看统计数据 完成(总任务数、已完成数、待办数等)。

🛠️ 先决条件

为了完成这个项目,你需要:


⚙️ 安装与启动

  1. 克隆仓库:

    git clone [https://github.com/tuo-nome-utente/MyTodoMcp.git](https://github.com/tuo-nome-utente/MyTodoMcp.git)
    cd MyTodoMcp
    
  2. 恢复依赖项:

    dotnet restore
    
  3. 启动服务器:

    dotnet run
    

    服务器将启动并自动创建数据库文件。 todos.db 如果它不存在的话。


🔌 与 VS Code 一起使用(代理模式)

要通过VS Code与服务器进行交互,需要配置代理模式。

  1. 创建一个文件夹 .vscode 在项目的根目录中。

  2. 在……之内 .vscode, crea un file mcp.json 包含以下内容:

    {
        "servers": {
            "MyTodoMcp": {
                "type": "stdio",
                "command": "dotnet",
                "args": [
                    "run",
                    "--project",
                    "${workspaceFolder}/MyTodoMcp.csproj"
                ]
            }
        }
    }
    
  3. 打开VS Code的命令面板(Ctrl+Shift+P), 接近并选择 “MCP: 连接到服务器” 并选择 MyTodoMcp现在你可以向服务器发送命令了。


📖 可用的MCP API/命令

以下是服务器接受的命令列表。

命令 描述 参数
add_todo 在列表中添加一个新任务。 description (字符串), priority (int, 可选, 默认值: 2)
list_todos 显示所有任务。 filter (字符串,可选,值:"all", "completed", "pending")
complete_todo 将任务标记为已完成。 id (int) (整型)
delete_todo 从列表中移除一个任务。 id (int) (整型)
update_todo 更新任务的描述。 id (int), newDescription (字符串)
todo_stats 显示待办事项列表的统计信息。 无(Nessuno)