项目简介
HealthSim MCP Server 是 HealthSim 生态中的服务端实现,遵循 Model Context Protocol(MCP)规范,向大型语言模型(LLM)客户端提供以下核心能力:
- 资源(Resources)管理与数据访问,便于LLM在对话中查询和读取数据
- 工具(Tools)注册与执行,LLM 可以通过 RPC 调用外部功能
- Prompt 模板(Prompts)的定义与渲染,支持可定制的交互模式
- 会话管理与能力声明,明确服务能力并支持多传输协议通信 服务器通过 JSON-RPC 作为通信协议,与客户端进行请求/响应交互
主要功能点
- 资源托管与访问:对后端资源进行统一管理,为 LLM 客户端提供结构化数据访问能力
- 工具注册与执行:注册可调用的外部功能,LLM 可以远程触发工具执行
- Prompt 渲染与管理:提供可定制的 Prompt 模板,供 LLM 交互使用
- 会话与能力管理:维护会话状态、能力宣告,确保安全可控的上下文服务
- 多传输协议支持:按照 MCP 规范,支持多种传输通道(如标准输入输出 Stdio、服务器发送事件 SSE、WebSocket 等)
- JSON-RPC 交互:客户端通过 JSON-RPC 进行请求,服务器返回标准化的 JSON-RPC 响应
安装与运行(简明步骤)
- 环境准备
- 确保使用合适的 Python 运行环境(推荐 Python 3.8 及以上版本)
- 安装依赖
- 根据项目的依赖管理文件安装所需依赖
- 启动服务器
- 使用模块方式启动 MCP 服务器,例如通过 Python 模块方式执行:healthsim.mcp.server
- 若需要自定义配置,提供配置文件路径并加载该配置
- 验证与连接
- 通过客户端的 JSON-RPC 接口向 MCP 服务器发起请求,读取资源、调用工具、获取 Prompts,观察返回结果
- 测试与运维
- 结合已有的单元测试与 smoke test 进行基本功能验证,确保资源、工具、Prompts 的注册与执行路径正常
服务器配置(给 MCP 客户端的连接信息)
注意:以下内容用于指导 MCP 客户端如何连接服务器,客户端本身不需要部署细节配置。配置字段可在实际运维中以 JSON 文件形式提供给客户端使用。
- server 名称(server_name): healthsim-mcp
- 启动命令(command): python3
- 启动参数(args): [ "-m", "healthsim.mcp.server", "--config", "/path/to/healthsim-mcp/config.json" ]
说明与注释:
- server_name 指定服务器在客户端配置中的标识,便于区分同一环境中的多个 MCP 服务
- command 与 args 指定了启动 MCP 服务器的命令与参数,客户端通过读取这些信息并启动对应进程来与 MCP 服务器建立连接
- config.json 可以放置服务器的资源、工具、Prompts 的注册信息,以及可选的传输协议、身份认证策略等
- 客户端在建立连接时会使用 JSON-RPC 协议进行请求与响应
基本使用方法
- 启动与连接
- 服务器启动后,LLM 客户端通过配置中的启动命令与参数启动 MCP 服务,并建立 JSON-RPC 通道
- 常用交互模式
- 资源读取:LLM 请求读取某个资源的上下文数据
- 工具调用:LLM 通过 RPC 调用注册 Tool,获取外部功能的执行结果
- Prompt 获取与渲染:LLM 通过 RPC 请求获取或渲染 Prompt 模板,用于后续对话
- 安全与拓展
- 服务器端可实现会话管理与权限控制,确保上下文服务安全可控
- 支持多传输协议,便于在不同环境中部署与接入(本地管线、Web 应用、实时流式通信等)
如需进一步配置细节,请参阅项目文档中的 MCP 集成指南与相应实现模块的注释。
信息
分类
开发者工具