Healthcare ChatBot MCP 服务器实现

使用说明内容(Markdown格式)

  • 项目简介

    • 本仓库实现了一个基于 MCP 的服务器端,面向 MCP 客户端暴露对 ChatBot 的访问能力。核心通过 FastMCP 将以下功能暴露为 MCP 工具:向 ChatBot 发送查询并获取回答、获取当前会话历史、获取 ChatBot 的配置信息等。服务器负责管理会话、调用模型进行推断,并返回结构化的结果。
  • 主要功能点

    • MCP 服务端实现:使用 FastMCP 搭建服务器并注册工具,供 MCP 客户端远程调用。
    • 工具集合:
      • query_chatbot(query: str): 将用户查询交给 ChatBot,返回带有回复及元数据的结果。
      • get_chatbot_session_history(): 获取当前会话历史的文本信息。
      • get_chatbot_info(): 返回当前 ChatBot 的配置信息(模型、服务地址、模板目录等)。
    • 会话与日志管理:ChatBot 内部实现了会话记录,工具可读取并汇总这些记录用于分析和调试。
    • 启动与运行:提供主入口将 MCP 服务器与 ChatBot 实例一起启动,支持在命令行中传入配置参数。
  • 安装步骤

    • 安装依赖:确保已安装 FastMCP(如未安装,参考提示执行安装)。
    • 安装命令示例(请在你的环境中按需执行,而非直接拷贝到代码中):pip install fastmcp
    • 将仓库代码准备就绪后,按需要配置模型、服务地址、模板与数据目录等参数。
  • 服务器配置(MCP 客户端需要的配置信息为 JSON 格式,以下字段来自仓库实现的服务端配置)

    • server name: patient-chatbot
    • command: uv run python -m apps.chatbot.mcp_server.server
    • args: [ "--model", "ollama_chat/gpt-oss:20b", "--service-url", "http://localhost:11434", "--template-dir", "src/prompts/templates", "--data-dir", "src/data", "--confidence-threshold", "0.9" ]
    • 注释说明:以上参数对应仓库中 MCP 服务器注册时所需的核心信息,包含要使用的模型、推理服务地址、提示模板与数据目录,以及置信度阈值等。MCP 客户端仅需读取此信息用于建立连接,不需要在客户端端端端执行本配置。
  • 基本使用方法

    • 启动服务器:在命令行执行上述组合命令启动 MCP 服务器与 ChatBot。
    • 通过 MCP 客户端调用工具:
      • 使用 query_chatbot 发送一个查询,获得包含回复和元数据的结果。
      • 使用 get_chatbot_session_history 获取当前会话历史。
      • 使用 get_chatbot_info 获取当前配置与状态信息。
    • 监控与调试:通过服务器日志与 MCP 调用返回的结果进行调试,必要时调整置信度阈值等参数以适配实际场景。

服务器信息