JD.AI MCP 服务端
使用说明
- 项目简介
- JD.AI 生态中包含一个 MCP 服务端组件,用于向 LLM 客户端暴露资源、工具和 Prompt 的管理与执行能力。通过标准的 JSON-RPC 方式收发请求并返回响应,支持会话管理、能力声明以及多传输协议的对接,旨在为 LLM 应用提供可扩展的上下文服务框架。
- 主要功能点
- 资源管理(Resources):托管、访问和维护可用的数据资源以供模型查询和推理使用。
- 工具注册与执行(Tools):注册外部功能实现,允许 LLM 客户端通过 MCP 请求调用这些工具并得到结果。
- Prompt 模板(Prompts):定义、渲染和托管可定制的 Prompt 模板,支持不同交互模式的 LLM 对话。
- JSON-RPC 通信:服务器端接收 JSON-RPC 请求,返回标准化响应,支持读取资源、执行工具、获取与渲染 Prompt 等操作。
- 会话与能力声明:维护会话状态、能力清单,确保客户端能够知悉可用的资源与工具集合。
- 多传输协议支持:在不同传输场景下提供兼容性,如通过 HTTP/REST、WebSocket、SSE、STDIO 等通道与客户端通信(具体实现可在 JD.AI.Gateway 与相关模块中扩展)。
- 安全与扩展性:提供认证、鉴权、授权和插件扩展入口,便于集成外部工具与资源源。
- 安装步骤
- 环境要求:请使用 .NET 10 环境进行编译与运行(符合项目文档的技术栈要求)。
- 构建与发布
- 使用解决方案中的构建流程进行编译打包(通常为 dotnet build / dotnet publish,具体项目可参考 JD.AI.Gateway 的启动配置)。
- 启动 MCP 服务端
- 启动主控平面组件(Gateway)并确保 MCP 相关的服务端功能已正确定义为对外暴露的 JSON-RPC 端点。
- 常见启动命令示例(请以实际部署产出的可执行文件为准):
- dotnet JD.AI.Gateway.dll --urls http://0.0.0.0:5000
- 备注:在生产环境中,请结合实际网络/安全策略配置端口、证书、鉴权等。
- 服务器配置(供 MCP 客户端使用的连接信息,JSON 格式,供随后客户端连接时参考)
- server_name: "JD.AI.McpServer"
- command: "dotnet"
- args: ["JD.AI.Gateway.dll", "--urls", "http://0.0.0.0:5000"] 注释:该配置用于 MCP 客户端在初始连接阶段了解要启动的 MCP 服务器进程及其启动参数;客户端本身无需此配置执行,只需连接到服务器暴露的 JSON-RPC 端点即可。
- 基本使用方法
- 启动与连接
- 启动 MCP 服务端(如上述命令),确保服务可访问。
- MCP 客户端通过 JSON-RPC 向服务器发起请求,读取资源、调用工具、获取与渲染 Prompt,接收标准的 JSON-RPC 响应。
- 常见工作流
- 客户端查询可用资源与工具的元信息
- 客户端调用某个工具完成特定任务
- 客户端获取并渲染指定的 Prompt 模板
- 客户端在会话中维护上下文并宣告能力
- 集成与扩展
- 如需接入外部数据源或新工具,扩展 MCP 服务器中的 Resources、Tools、Prompts 配置与实现即可,保持与 MCP 协议的兼容性。
- 启动与连接