workz 服务器端 MCP 实现

使用说明(Markdown 格式)

  • 项目简介

    • 该仓库中实现了一个内置的 MCP 服务器,允许 AI 客户端通过 JSON-RPC 2.0 与服务器进行交互。服务器通过标准输入输出(stdio)进行通信,支持初始化握手、工具列表查询以及工具调用等核心 MCP 功能。
    • 服务器对 Workz 的核心能力进行封装,暴露与工作流相关的操作(如创建/列出工作树、查看状态、同步依赖、清理等),并通过工具接口让 AI 客户端在需要时调用。
  • 主要功能点

    • 初始化握手(initialize):返回服务器能力、协议版本等元信息。
    • 工具列表(tools/list):暴露可调用的工具集合及其输入输出结构。
    • 工具调用(tools/call):执行指定工具并返回文本输出或错误信息。工具涵盖工作树创建、列出、状态、同步、删除、冲突检测等操作。
    • 与 Workz 的内部模块集成:服务器在调用工具时会调用仓库内已有的配置、 Git 相关、同步、隔离等功能,确保输出与应用行为保持一致。
  • 安装与运行

    • 在已经安装并构建好的 Workz 二进制环境中,通过执行命令启动 MCP 服务器(通常是内置命令 workz mcp)。
    • MCP 服务器以逐行 JSON 的形式从标准输入读取请求,并以 JSON-RPC 2.0 的格式将响应写入标准输出,适用于与 LLM 客户端的直接对接。
  • 服务器配置(MCP 客户端所需信息)

    • 说明:MCP 客户端需要配置连接到 MCP 服务器的启动信息,但该客户端配置不在此仓库中展示。以下为服务器在 MCP 客户端配置时可用的服务器信息示例(JSON 形式,仅用于描述,不作为代码运行): { "name": "workz", "command": "workz", "args": ["mcp"], "transport": "stdio" } 注释:name 为服务器标识,command 与 args 指定启动可执行文件及参数,transport 指出采用 stdio 作为传输通道。MCP 客户端不需要额外的代码实现,即可通过该配置与服务器建立通信。
  • 基本使用方法

    • 启动服务器:在 Workz 所在环境中执行命令 workz mcp,以启动 MCP 服务器(服务器会在标准输入输出上与客户端进行 JSON-RPC 通信)。
    • 客户端交互流程:
      • 发送 initialize 请求,获取服务器能力与协议信息。
      • 通过 tools/list 获取可用工具清单。
      • 通过 tools/call 调用具体工具(如 workz_start、workz_list、workz_status、workz_sync、workz_done、workz_conflicts),并获取文本输出或错误信息。
    • 服务器的核心能力点直接对接 Workz 的功能模块(如创建工作树、同步依赖、查看状态等),使得 AI 客户端能够以标准化的方式管理工作流。
  • 备注

    • MCP 服务器实现包含对多种工作流相关操作的暴露与执行能力,适合与 LLM 客户端(如 Claude、GPT 等)协作自动化工作流管理任务。

服务器信息