HVE Stem 服务器端 (MCP)

使用说明(Markdown 格式)

  • 项目简介

    • 该项目实现了一个基于 MCP(Model Context Protocol)的后端服务器,用于向编码代理/LLM 客户端提供“资源访问”“工具注册与执行”和“提示模板渲染”等能力,帮助实现对目标仓库的SDLC评估等任务。
  • 主要功能点

    • 实现 MCP 协议核心能力:通过 FastMCP 组件暴露服务器、注册工具、暴露资源处理能力,并支持与客户端进行 JSON-RPC 通信与事件通知。
    • 提供评估能力入口:实现 assess_repo 工具,允许 MCP 客户端请求对指定仓库进行 SDLC 评估,返回 Markdown 报告文本。
    • 资源、工具、Prompts 管理:通过工作区/Stem 结构提供资源访问、外部工具集成、并渲染/返回评测时使用的提示信息。
    • 支持本地开发与集成:与 Stem CLI、Web UI、Copilot SDK 等整合,便于在本地开发、CI/CD,以及 Copilot/Coding Agents 场景中使用。
  • 安装步骤

    • 系统要求:需要 Python 环境,并满足项目的依赖安装要求(如 README 所述的开发依赖/构建流程)。
    • 安装方法概览:按照仓库提供的安装与构建说明进行,确保 Python 环境中可直接运行 stem mcp 启动服务器。
  • 服务器配置

    • MCP 服务器名称:stem
    • 启动命令与参数(用于 MCP 客户端配置连接)
    • 注:MCP 客户端只需要发送启动服务器所需的命令与参数,服务器端本身不要求在客户端提供敏感信息。下列配置信息用于 MCP 客户端接入 Stem 服务器的示例描述。

    JSON 配置(用于 MCP 客户端连接 Stem 服务器的示例描述,不作为代码展示): { "name": "stem", "type": "stdio", "command": "stem", "args": ["mcp"], "tools": ["*"] } 说明:

    • name: 服务器名称,客户端在连接时可按此名称识别对应的 MCP 服务器。
    • type: 通信传输类型,此实现使用标准输入输出(stdio)形式,便于与本地进程对接。
    • command: 启动服务器的命令。
    • args: 启动命令的参数,与服务器的子命令配合使用,在本实现中即为 mcp。
    • tools: 暴露给 MCP 客户端的工具集,"*" 表示暴露所有公开工具。
  • 基本使用方法

    • 启动服务器:执行 Stem 的 MCP 启动入口(在实际环境中通常为 stem mcp)。
    • 与 MCP 客户端对接:在客户端配置中指定服务器名称 stem、启动命令与参数(如上 JSON 示例),并按需要暴露的工具订阅服务。
    • 调用流程示例(简述):客户端通过 MCP 请求调用 assess_repo 工具,传入仓库标识、模型和超时等参数,服务器端接收并执行评估流程,返回 Markdown 报告文本及相关事件流。
    • 运行维护:服务器在评估过程中会输出状态、Reasoning、Tool 调用等事件,客户端可通过流式事件获取进度。
  • 额外信息

    • 该实现与 Stem 的 CLI、Web UI、Copilot SDK 等组件紧密协作,支持在本地开发环境中进行快速迭代和集成测试。

服务器信息