MyTodoMcp - 带有MCP的服务器待办事项列表
一个简单的服务器,用于管理任务列表(待办事项列表),用C#和.NET构建。服务器通过(以下方式)暴露命令: 模型上下文协议(MCP) 以便兼容客户端使用,如Visual Studio Code的代理模式。
这个项目使用 Entity Framework Core(实体框架核心) 带有一个数据库 SQLite 将任务保存到本地文件中(todos.db)。
______________________________________________________________________
🚀 功能
- 添加 一个新的任务,带有描述和优先级。
- 列出 所有任务,按状态(已完成或待处理)过滤。
- 完成 一个现有的任务。
- 修改 一个任务的描述。
- 消除 从列表中选一个任务。
- 查看统计数据 完成(总任务数、已完成数、待办数等)。
______________________________________________________________________
🛠️ 先决条件
为了完成这个项目,你需要:
- .NET 8 SDK(软件开发工具包) 或上级。
- 一个与MCP兼容的客户端,如 Visual Studio Code 带有适用于代理模式的适当扩展。
______________________________________________________________________
⚙️ 安装与启动
- 克隆仓库:
git clone
cd MyTodoMcp- 恢复依赖项:
dotnet restore- 启动服务器:
dotnet run服务器将启动并自动创建数据库文件。 todos.db 如果它不存在的话。
______________________________________________________________________
🔌 与 VS Code 一起使用(代理模式)
要通过VS Code与服务器进行交互,需要配置代理模式。
- 创建一个文件夹
.vscode在项目的根目录中。
- 在……之内
.vscode, crea un filemcp.json包含以下内容:
{
"servers": {
"MyTodoMcp": {
"type": "stdio",
"command": "dotnet",
"args": [
"run",
"--project",
"${workspaceFolder}/MyTodoMcp.csproj"
]
}
}
}- 打开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) |
