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 协议的兼容性。

服务器信息