auto-fix-workflow
使用说明(简要、易上手版本)
-
项目简介
- auto-fix-workflow 是一个基于 MCP 协议的后端服务器,负责向 MCP 客户端暴露资源、工具和提示模板,并支持会话管理和跨服务的协作。核心能力包括:GitHub 资源访问、Asana 任务分析、Git 工作树管理、代码质量检查、工作流编排,以及与 AI 模型进行协同分析与自动修复的工作流。
- 服务器通过 JSON-RPC 与客户端通信,接受像读取资源、调用工具、获取 Prompts 等请求,并返回标准化的 JSON-RPC 响应。
-
主要功能点
- MCP 服务端核心:实现 MCP 服务器,按标准 JSON-RPC 方式接收请求并返回结果
- 资源与工具托管:对 GitHub、Asana 等外部系统的资源进行托管与访问,并注册可调用的工具
- 工具执行能力:提供诸如 list_issues、get_github_issue、github_create_issue、update_github_issue、github_create_pr、asana_list_tasks、asana_get_task、asana_update_task、asana_analyze_task 等工具实现
- Prompts 与渲染:支持基于工作流的提示模板渲染与自定义交互
- 会话与能力声明:会话管理、能力声明,以及对多传输协议的支持(如标准输入输出、SSE、WebSocket 等)
- 配置与扩展性:通过 YAML/ENV 配置实现对 GitHub、Asana、检查项、工作树等的集成与扩展
- 客户端示例与工具链:内置 CLI 与多种工具链示例,方便接入 MCP 客户端
-
安装与运行步骤
- 安装依赖并编译
- 在项目根目录执行安装依赖和构建。
- 构建完成后即可运行服务器。
- 启动服务器
- 使用 MCP 客户端通过标准输入输出(stdio)或其他传输方式连接此 MCP 服务器。
- 在本仓库的实现中,启动方式为 CLI 调用(如 npx auto-fix-workflow)启动服务器进程,并以 stdio 传输对接客户端。
- 连接与使用
- MCP 客户端通过提供服务器的启动命令、参数直连服务器。
- 客户端可以通过 ListTools、CallTool 等能力与服务器交互,完成读取资源、调用工具、获取 Prompts 等操作。
- 配置与令牌
- 服务器在启动时会读取本地配置(如 GitHub/Asana 令牌、工作流设置等),必要的 token 通过环境变量 GITHUB_TOKEN、ASANA_TOKEN,或 .auto-fix.yaml 配置文件提供。
- 服务器也提供环境变量覆盖的能力,便于在不同环境中配置。
- 安装依赖并编译
-
服务器配置(给 MCP 客户端的连接信息) 说明:以下配置用于 MCP 客户端在启动阶段连接本服务器。服务器名称为 auto-fix-workflow,启动命令使用 npx,参数为自动启动该服务器的入口。MCP 客户端无需依赖此处的配置文件细节,只需按照 JSON 格式的配置将服务器喂给客户端即可。
服务器名称: auto-fix-workflow 启动命令: npx 启动参数: ["auto-fix-workflow"] 环境变量: {} 备注: 该配置对应仓库中的 MCP 服务器实现入口和启动方式,客户端通过该信息启动并连接服务器,以 JSON-RPC 方式通信。
-
基本使用方法(操作简化版)
- 准备阶段
- 安装依赖并构建:npm install && npm run build
- 配置必要的访问令牌(GITHUB_TOKEN、ASANA_TOKEN),并准备 .auto-fix.yaml 配置文件(GitHub、Asana、工作树等参数)
- 启动服务器
- 通过 MCP 客户端启动服务器:npx auto-fix-workflow
- 服务器将通过标准输入输出(stdio)对接 MCP 客户端,客户端即可发送读取资源、调用工具、获取 Prompt 等请求
- 使用示例
- 通过 MCP 客户端请求工具列表,了解可调用的工具
- 通过调用工具执行具体操作,如读取 GitHub/Asana 资源、创建 issue、创建 PR、列出任务等
- 使用 Prompts 进行上下文交互和模板渲染,完成自动化工作流
- 准备阶段
-
重要注意事项
- MCP 服务器端负责会话管理、能力声明,并对外暴露工具与资源访问接口
- 传输协议支持多种实现,当前服务器实现以 stdio 传输为核心,便于 CLI 与 LLM 客户端的对接
- 配置的安全性要点包括令牌保密、将 token 文件和环境变量正确设置,避免将敏感信息暴露在版本控制中
-
参考与扩展
- 服务器核心结构:MCP 服务端、资源与工具注册、工具执行处理、传输适配器
- 已实现的工具集合覆盖 GitHub、Asana、Git 操作、检查流程等,便于实现综合型的自动化工作流