使用说明
项目简介
本项目是 Simona AI Computer Operator 仓库的一部分,实现了一个简单的 Todo MCP Server。它基于 Model Context Protocol (MCP) 协议,旨在演示如何构建一个能够为大型语言模型 (LLM) 客户端提供待办事项管理功能的后端服务。该服务器定义了一系列 工具 (Tools),允许 LLM 客户端通过标准化的 JSON-RPC 接口创建、查询、更新和删除待办事项。
主要功能点
- 待办事项管理: 提供创建、查看、更新和删除待办事项的功能。
- MCP 服务器: 实现了 MCP 协议,可以作为 LLM 客户端的上下文服务提供者。
- 工具 (Tools) 注册: 通过 '@server.tool' 装饰器注册了多个工具,例如 'create_todo', 'list_todos', 'get_todo', 'update_todo', 'delete_todo'。
- JSON-RPC 接口: 使用 JSON-RPC 协议与客户端通信,接收请求并返回响应。
- 本地运行: 服务器可以在本地运行,方便开发和测试。
安装步骤
-
克隆仓库:
git clone https://github.com/hiper2d/simona-ai-computer-operator cd simona-ai-computer-operator -
安装依赖: 确保你的Python环境中安装了必要的依赖。虽然仓库中没有明确的 'requirements.txt' 文件,但根据代码内容,你可能需要安装 'pydantic' 和 'fastapi' (如果 'FastMCP' 基于 FastAPI 的话)。你可以尝试手动安装:
pip install pydantic fastapi uvicorn注意:更完整的依赖安装步骤可能需要查看 'simona-ai-computer-operator' 项目的更上层目录,或者参考其文档。这里假设 'FastMCP' 依赖于 'pydantic' 和 'fastapi'。
-
运行服务器: 进入 'mcp' 目录,并运行 'server.py' 文件:
cd mcp python server.py服务器默认会在 'http://127.0.0.1:5000' 启动。
服务器配置
以下 JSON 配置信息可以用于 MCP 客户端连接到此 Todo MCP Server。请注意,客户端需要能够执行 'python mcp/server.py --host 127.0.0.1 --port 5000' 命令来启动服务器。
{ "server_name": "todo-server", // MCP 服务器的名称,与 server.py 中 FastMCP 构造函数的 name 参数一致 "command": "python", // 启动服务器的命令,这里使用 python 解释器 "args": [ // 启动命令的参数列表 "mcp/server.py", // 服务器脚本的路径 "--host", "127.0.0.1", // 服务器监听的主机地址 "--port", "5000" // 服务器监听的端口号 ] }
基本使用方法
- 启动 MCP 客户端: 你需要一个兼容 MCP 协议的客户端,例如实现了 MCP 客户端功能的 LLM 应用。
- 配置客户端: 在 MCP 客户端中配置上述提供的服务器配置信息,以便客户端知道如何启动和连接到 Todo MCP Server。
- 调用工具: 客户端启动并连接到服务器后,可以向服务器发送 JSON-RPC 请求来调用已注册的工具,例如 'create_todo', 'list_todos' 等,以实现待办事项的管理。具体的工具调用方式和参数需要参考 MCP 协议和客户端的文档。
示例工具调用 (概念性,非实际代码):
假设客户端要调用 'create_todo' 工具创建一个新的待办事项,它会向服务器发送一个符合 JSON-RPC 规范的请求,类似如下结构:
{ "jsonrpc": "2.0", "method": "call_tool", "params": { "tool_name": "create_todo", "tool_arguments": { "title": "Buy groceries" } }, "id": "1" }
服务器收到请求后,会执行 'create_todo' 函数,并将结果以 JSON-RPC 响应的形式返回给客户端。
信息
分类
生产力应用