使用说明
- 项目简介
- Dingo 公开实现了一个实验性的小型MCP服务器,核心职责是以规范化的JSON-RPC方式向LLM客户端暴露资源、工具、以及提示模板等功能,便于在LLM对话中提供上下文信息、执行外部任务、渲染自定义的提示模板等能力。
- 主要功能点
- 资源管理与数据访问:提供对资源/数据的托管、查询和管理接口,便于LLM客户端获取背景数据。
- 工具注册与调用:允许注册并执行外部工具,LLM可通过RPC请求调用工具以完成复杂任务。
- Prompt模板定义与渲染:支持Prompts的查询、渲染与注册,帮助定义可定制化的LLM交互模板。
- 跨传输协议支持:默认通过 SSE(Server-Sent Events)等传输方案与客户端通信,理论上可扩展为 STDIO、WebSocket 等。
- 会话管理与能力声明:服务器端负责会话管理、能力声明以及对客户端能力的适配。
- 安装步骤
- 需要的环境:Python 3.10 及以上。
- 安装依赖:从仓库获取代码后,安装运行时依赖(如 requirements/runtime.txt 等)。确保安装环境具备所需的LLM调用能力(如OpenAI API Key等)。
- 启动服务器:在仓库根目录执行 python mcp_server.py 即可启动服务器。若环境变量或设置不同,启动方式可在源码内通过 LOCAL_DEPLOYMENT_MODE 与传输选项调整。
- 测试与调试:确保 OpenAI、Anthropic 等LLM服务的密钥与地址可用;在容器/云环境中运行时注意网络连通性和Key的有效性。
- 服务器配置(MCP客户端使用的配置示例) 为便于MCP客户端接入,请使用如下JSON格式的服务器配置信息,填写正确的启动命令与参数。该配置描述服务器名称、启动命令、参数以及传输方式等信息,客户端不需要额外实现,仅通过该配置对接服务器。 { "server_name": "Dingo Evaluator MCP Server", "command": "python", "args": ["mcp_server.py"], "transport": "sse", "notes": "默认通过 SSE 传输与客户端通信;若需其他传输,请在源码中修改启动参数。启动前请确保OPENAI_API_KEY等环境变量正确设置(如使用OpenAI模型)。" }
- 基本使用方法
- 启动服务器:在项目根目录执行启动命令,确保依赖就绪与环境变量配置完毕。服务器启动后将监听并通过JSON-RPC与客户端交互。
- 与客户端对接:MCP客户端(如Cursor等)通过上述配置连接到Dingo的MCP服务端,发送请求以获取资源、执行工具、查询Prompts等。
- 使用示例场景:
- 评估任务:通过 run_dingo_evaluation 接口提交评估任务(规则或LLM评估),服务器将按配置执行并返回结果路径或结果内容。
- 组件查询:使用 list_dingo_components 获取已注册的规则组、LLM模型和Prompts 的信息。
- 运行时注意事项:若使用LLM进行评估,请确保外部LLM服务可用,且API Key、Base URL等环境变量已配置清晰。若在本地化部署,确保LOCAL_DEPLOYMENT_MODE环境变量合适以匹配期望的返回形式。
信息
分类
AI与计算