AlibabaCloud DevOps MCP

官方

Yunxiao MCP Server 为AI助手提供与云效平台交互的能力。

你可以用 AlibabaCloud DevOps MCP 做什么?

  • 管理代码仓库和合并请求 — 通过 code-management 请求列出仓库、创建分支、查看文件树,或创建和更新合并请求。
  • 跟踪和更新工作项 — 通过 project-management 查询项目工作项、创建或更新它们、添加评论,并记录工时投入。
  • 运行和检查流水线 — 通过 pipeline-management 列出流水线、触发新运行、获取执行日志,并根据自然语言描述生成流水线 YAML。
  • 管理应用部署 — 通过 application-delivery 创建部署订单、列出发布工作流,并执行或重试应用的发布阶段。
  • 处理测试用例和计划 — 通过 test-management 搜索或创建测试用例、管理测试用例目录,并在测试计划内更新测试结果。

文档

English | 中文

alibabacloud-devops-mcp-server

AlibabaCloud Devops MCP Server 为 AI 助手提供与云效平台交互的能力,使其能够读取项目中的工作项内容、在理解需求后自动编写代码,并提交代码合并请求。企业开发团队可以使用它来辅助代码评审、优化任务管理、减少重复操作,从而专注于更重要的创新和产品交付。

功能特性

alibabacloud-devops-mcp-server 为 AI 助手提供以下能力:

  • organization-management:组织管理工具(组织列表、组织详情、部门信息、组织角色、成员信息等)
  • code-management:代码仓库管理工具(仓库管理、分支管理、合并请求管理、文件树等)
  • project-management:项目管理工具(项目管理、工作项管理、工作项字段、工作项评论、工时管理等)
  • pipeline-management:流水线管理工具(流水线列表、流水线配置、资源管理、标签管理、部署管理等)
  • application-delivery:应用交付工具(部署单管理、应用管理、应用标签、变量组管理等)
  • packages-management:制品仓库管理工具(制品仓库、制品列表等)
  • test-management:测试管理工具(测试用例管理、测试用例目录、测试计划、测试结果等)

使用方法

区域版支持

本工具同时支持云效中心站和区域版部署模式:

  • 中心站:使用 https://openapi-rdc.aliyuncs.com 作为 API 域名
  • 区域版:使用组织专属域名,例如 https://your-org.devops.aliyuncs.com

自动模式检测

工具会根据配置的 API 基础 URL 自动判断部署模式:

  • 如果 URL 包含 openapi-rdc.aliyuncs.com,则以中心站模式运行
  • 否则,以区域版模式运行

配置区域版

使用区域版时,设置 YUNXIAO_API_BASE_URL 环境变量:

{
  "mcpServers": {
    "yunxiao": {
      "command": "npx",
      "args": ["-y", "alibabacloud-devops-mcp-server"],
      "env": {
        "YUNXIAO_ACCESS_TOKEN": "<YOUR_TOKEN>",
        "YUNXIAO_API_BASE_URL": "https://your-org.devops.aliyuncs.com"
      }
    }
  }
}

前置条件

  • node 版本 >= 18.0.0

  • AlibabaCloud Devops 个人访问令牌,点击此处获取。授予组织管理、项目协作、代码管理、流水线管理、制品仓库管理、应用交付和测试管理下所有 API 的读写权限。

    The personal token authorization page

官方托管 MCP 服务(无需安装)

云效提供官方托管的 MCP 端点——无需本地安装或 Docker。只需将客户端指向该端点并使用云效令牌进行身份验证即可。

  • 中心站https://openapi-rdc.aliyuncs.com/ai/mcp
  • 区域版:您所在组织的区域域名 + /ai/mcp,例如 https://<your-org>.devops.aliyuncs.com/ai/mcp——与您在所在区域访问云效时使用的域名相同。
  • 传输方式:Streamable HTTP(无状态)
  • 认证:Authorization: Bearer <YOUR_TOKEN>(或请求头 X-Yunxiao-Token: <YOUR_TOKEN>

客户端配置——中心站(支持原生远程功能的客户端,例如 Cursor):

{
  "mcpServers": {
    "yunxiao": {
      "url": "https://openapi-rdc.aliyuncs.com/ai/mcp",
      "headers": { "Authorization": "Bearer <YOUR_TOKEN>" }
    }
  }
}

客户端配置——区域版(将 URL 替换为您所在区域的域名):

{
  "mcpServers": {
    "yunxiao": {
      "url": "https://<your-org>.devops.aliyuncs.com/ai/mcp",
      "headers": { "Authorization": "Bearer <YOUR_TOKEN>" }
    }
  }
}

提示:通过仅请求您需要的工具集来减少上下文使用量——?toolsets=code-management,project-management 或请求头 X-Devops-Toolsets。查看完整指南:docs/hosted-mcp-guide.zh-CN.md


快速开始(自托管,使用 Stdio 模式)

Stdio 模式是最简单的自托管方式,适用于大多数 MCP 客户端(如 Cursor、Claude Desktop、iFlow 等)。无需安装 Docker,直接通过 npx 运行即可。

方式一:通过 NPX 直接使用(最简单)

将以下配置添加到您的 MCP 客户端配置文件中:

{
  "mcpServers": {
    "yunxiao": {
      "command": "npx",
      "args": [
        "-y",
        "alibabacloud-devops-mcp-server"
      ],
      "env": {
        "YUNXIAO_ACCESS_TOKEN": "<YOUR_TOKEN>"
      }
    }
  }
}

注意

  • <YOUR_TOKEN> 替换为您的云效访问令牌
  • -y 标志会自动确认安装,无需手动确认
  • 默认情况下,工具调用云效中心站 OpenAPI(https://openapi-rdc.aliyuncs.com);无需额外配置
  • 如果您使用的是区域版(组织专属域名),请设置额外的环境变量 YUNXIAO_API_BASE_URL 为您的云效实例 URL,例如 https://your-org.devops.aliyuncs.com。详见上文配置区域版部分
  • 此方法使用 stdio 模式,通过标准输入/输出与 MCP 客户端通信

使用 Docker(可选)

传输模式

模式CLI 标志环境变量端点
Stdio(默认)stdin/stdout
SSE--sseMCP_TRANSPORT=sse/sse + /messages
Streamable HTTP--streamable-httpMCP_TRANSPORT=streamable-http/mcp
两者--sse --streamable-httpMCP_TRANSPORT=both/sse + /mcp

Streamable HTTP 是 MCP 规范推荐的远程传输方式。SSE 为旧版;迁移期间请使用 both

1. 拉取镜像

docker pull build-steps-public-registry.cn-beijing.cr.aliyuncs.com/build-steps/alibabacloud-devops-mcp-server:latest

自行构建:docker build -t alibabacloud/alibabacloud-devops-mcp-server .

2. 启动服务器

Stdio:

docker run -i --rm -e YUNXIAO_ACCESS_TOKEN \
  build-steps-public-registry.cn-beijing.cr.aliyuncs.com/build-steps/alibabacloud-devops-mcp-server:latest

SSE / Streamable HTTP / 两者——设置 MCP_TRANSPORT 并暴露 PORT

docker run -d --name yunxiao-mcp -p 3000:3000 \
  -e YUNXIAO_ACCESS_TOKEN="your_token" -e PORT=3000 \
  -e MCP_TRANSPORT=streamable-http \   # sse | streamable-http | both
  build-steps-public-registry.cn-beijing.cr.aliyuncs.com/build-steps/alibabacloud-devops-mcp-server:latest

可选的 Streamable HTTP 环境变量:

  • MCP_STREAMABLE_PATH:MCP 端点路径(默认 /mcp
  • MCP_HTTP_HOST:绑定主机(默认 0.0.0.0
  • MCP_ALLOWED_HOSTS:允许的 Host 请求头值(逗号分隔)

3. 配置 MCP 客户端

Stdio:

{
  "mcpServers": {
    "yunxiao": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "-e", "YUNXIAO_ACCESS_TOKEN", "build-steps-public-registry.cn-beijing.cr.aliyuncs.com/build-steps/alibabacloud-devops-mcp-server:latest"],
      "env": { "YUNXIAO_ACCESS_TOKEN": "<YOUR_TOKEN>" }
    }
  }
}

SSE: http://localhost:3000/sse

Streamable HTTP: http://localhost:3000/mcp

通过查询参数或请求头传递凭据:

http://localhost:3000/mcp?yunxiao_access_token=YOUR_TOKEN_HERE

或请求头:x-yunxiao-token: YOUR_TOKEN_HERE

区域/实例 OpenAPI 基础地址:

http://localhost:3000/mcp?yunxiao_access_token=TOKEN&yunxiao_api_base_url=https%3A%2F%2Fyour-org.devops.aliyuncs.com

或请求头:x-yunxiao-api-base-url: https://your-org.devops.aliyuncs.com

Docker Compose

cp .env.example .env   # set YUNXIAO_ACCESS_TOKEN
docker compose up -d

客户端 URL:http://localhost:3000/sse(SSE)或 http://localhost:3000/mcp(Streamable HTTP)

工具集

服务器现在支持工具集,允许您仅启用所需的工具。这可以减少呈现给 AI 助手的工具数量并提升性能。

可用的工具集:

  • organization-management:组织管理工具(组织列表、组织详情、部门信息、组织角色、成员信息等)
  • code-management:代码仓库管理工具(仓库管理、分支管理、合并请求管理、文件树等)
  • project-management:项目管理工具(项目管理、工作项管理、工作项字段、工作项评论、工时管理等)
  • pipeline-management:流水线管理工具(流水线列表、流水线配置、资源管理、标签管理、部署管理等)
  • packages-management:制品仓库管理工具(制品仓库、制品列表等)
  • application-delivery:应用交付工具(部署单管理、应用管理、应用标签、变量组管理等)
  • test-management:测试管理工具(测试用例管理、测试用例目录、测试计划、测试结果等)

要使用工具集,您可以通过命令行参数或环境变量指定:

  1. 通过命令行参数:
npx -y alibabacloud-devops-mcp-server --toolsets=code-management,project-management
  1. 通过环境变量:
DEVOPS_TOOLSETS=code-management,project-management npx -y alibabacloud-devops-mcp-server

如果未指定工具集,默认启用所有工具。

工具

alibabacloud-devops-mcp-server 集成了多种工具,包括:

组织管理

  • get_current_organization_Info:获取当前用户的组织信息
  • get_user_organizations:获取当前用户已加入的组织列表
  • get_organization_role:获取组织角色信息
  • get_organization_departments:获取组织中的部门列表
  • get_organization_department_info:获取组织中的部门信息
  • get_organization_department_ancestors:获取组织中部门的祖先部门
  • get_organization_members:获取组织中的成员列表
  • get_organization_member_info:获取组织中的成员信息
  • get_organization_member_info_by_user_id:按用户 ID 获取组织中的成员信息
  • search_organization_members:搜索组织成员
  • list_organization_roles:列出组织角色
  • get_organization_role:获取组织角色信息

代码管理工具

  • create_branch:创建分支
  • delete_branch:删除分支
  • get_branch:获取分支信息
  • list_branches:获取分支列表
  • create_file:创建文件
  • delete_file:删除文件
  • get_file_blobs:获取文件内容
  • list_files:查询文件树
  • update_file:更新文件内容
  • create_change_request:创建合并请求
  • update_change_request:更新合并请求标题或描述
  • create_change_request_comment:在合并请求上创建评论
  • get_change_request:查询合并请求
  • list_change_request_patch_sets:查询合并请求版本列表
  • list_change_request:查询合并请求列表
  • list_change_request_comments:查询合并请求评论列表
  • get_compare:比较代码
  • get_repository:获取仓库详情
  • list_repositories:获取仓库列表
  • list_commits:[代码管理] 列出仓库中的提交
  • get_commit:[代码管理] 获取提交详情
  • create_commit_comment:[代码管理] 在提交上创建评论

项目管理工具

  • get_project:获取项目详情
  • search_projects:搜索项目
  • get_sprint:获取迭代详情
  • list_sprints:列出项目中的迭代
  • create_sprint:[项目管理] 创建迭代
  • update_sprint:[项目管理] 更新迭代
  • search_programs:[项目管理] 搜索项目集
  • list_program_versions:[项目管理] 列出项目集版本
  • list_versions:[项目管理] 列出项目版本
  • create_version:[项目管理] 创建版本
  • update_version:[项目管理] 更新版本
  • delete_version:[项目管理] 删除版本
  • get_work_item:获取工作项详情
  • update_work_item:[项目管理] 更新工作项
  • search_workitems:搜索工作项
  • get_work_item_types:获取工作项类型
  • create_work_item:创建工作项
  • list_all_work_item_types:列出组织中的所有工作项类型
  • list_work_item_types:列出项目空间中的工作项类型
  • get_work_item_type:获取特定工作项类型的详情
  • list_work_item_relation_work_item_types:列出可与特定工作项关联的工作项类型
  • list_workitem_relation_records:列出工作项的关联记录
  • create_workitem_relation_record:将一个工作项关联到另一个工作项
  • delete_workitem_relation_record:删除工作项关联
  • get_work_item_type_field_config:获取特定工作项类型的字段配置
  • get_work_item_workflow:获取特定工作项类型的工作流信息
  • list_work_item_comments:列出特定工作项的评论
  • create_work_item_comment:为特定工作项创建评论
  • list_workitem_attachments:列出特定工作项的附件
  • get_workitem_file:获取特定工作项附件的文件信息
  • create_workitem_attachment:将本地文件作为附件上传到工作项
  • list_workitem_activities:列出工作项的活动历史(字段变更、状态流转、关联变更)
  • list_current_user_effort_records:[项目管理] 获取用户的实际工时明细,结束时间和开始时间的间隔不能大于6个月
  • list_effort_records:[项目管理] 获取实际工时明细
  • create_effort_record:[项目管理] 登记实际工时
  • list_estimated_efforts:[项目管理] 获取预计工时明细
  • create_estimated_effort:[项目管理] 登记预计工时
  • update_effort_record:[项目管理] 更新登记实际工时
  • update_estimated_effort:[项目管理] 更新登记预计工时

流水线管理工具

  • get_pipeline:获取流水线详情
  • list_pipelines:获取流水线列表
  • smart_list_pipelines:通过自然语言时间引用进行智能流水线搜索
  • generate_pipeline_yaml:[流水线管理] 生成流水线 YAML 配置
  • create_pipeline_from_description:根据自然语言描述创建流水线
  • update_pipeline:[流水线管理] 更新流水线 YAML 内容
  • create_pipeline_run:创建流水线运行实例
  • get_latest_pipeline_run:获取最新的流水线运行实例
  • get_pipeline_run:获取流水线运行详情
  • list_pipeline_runs:获取流水线运行列表
  • list_pipeline_jobs_by_category:按类别获取流水线执行任务
  • list_pipeline_job_historys:获取流水线任务的执行历史
  • execute_pipeline_job_run:手动运行流水线任务
  • get_pipeline_job_run_log:获取流水线作业的执行日志
  • list_service_connections:列出组织中的服务连接
  • create_pipeline_from_description:自动生成 YAML 配置并创建流水线
  • update_pipeline:通过 pipelineId 更新云效中现有的流水线。使用此功能可更新流水线 YAML、阶段、作业等。
  • create_resource_member:创建资源成员
  • delete_resource_member:删除资源成员
  • list_resource_members:获取资源成员列表
  • update_resource_member:更新资源成员
  • update_resource_owner:转移资源所有者
  • create_tag:创建标签
  • create_tag_group:创建标签组
  • list_tag_groups:获取标签组列表
  • delete_tag_group:删除标签组
  • update_tag_group:更新标签组
  • get_tag_group:获取标签组
  • delete_tag:删除标签
  • update_tag:更新标签
  • stop_vm_deploy_order:停止 VM 部署单
  • skip_vm_deploy_machine:跳过 VM 部署机器
  • retry_vm_deploy_machine:重试 VM 部署机器
  • resume_vm_deploy_order:恢复 VM 部署单
  • get_vm_deploy_order:获取 VM 部署单详情
  • get_vm_deploy_machine_log:获取 VM 部署机器日志

应用交付工具

  • create_change_order:[应用交付] 创建部署单
  • list_change_order_versions:[应用交付] 查看部署单版本列表
  • get_change_order:[应用交付] 读取部署单使用的物料和工单状态
  • list_change_order_job_logs:[应用交付] 查询环境部署单日志
  • find_task_operation_log:[应用交付] 查询部署任务执行日志,其中通常包含下游部署引擎的调度细节信息
  • execute_job_action:[应用交付] 操作环境部署单
  • list_change_orders_by_origin:[应用交付] 根据创建来源查询部署单
  • create_appstack_change_request:[应用交付] 创建变更请求
  • get_appstack_change_request_audit_items:[应用交付] 获取变更请求的审批项
  • list_appstack_change_request_executions:[应用交付] 列出变更请求的执行记录
  • list_appstack_change_request_work_items:[应用交付] 列出变更请求的工作项
  • cancel_appstack_change_request:[应用交付] 取消变更请求
  • close_appstack_change_request:[应用交付] 关闭变更请求
  • list_applications:[应用交付] 分页列出组织中的应用
  • get_application:[应用交付] 按名称获取应用详情
  • create_application:[应用交付] 创建新应用
  • update_application:[应用交付] 更新现有应用
  • get_latest_orchestration:[应用交付] 获取环境的最新编排
  • list_app_orchestration:[应用交付] 列出应用编排
  • create_app_orchestration:[应用交付] 创建应用编排
  • delete_app_orchestration:[应用交付] 删除应用编排
  • get_app_orchestration:[应用交付] 获取应用编排
  • update_app_orchestration:[应用交付] 更新应用编排
  • get_env_variable_groups:[应用交付] 获取环境的变量组
  • create_variable_group:[应用交付] 创建变量组
  • delete_variable_group:[应用交付] 删除变量组
  • get_variable_group:[应用交付] 获取变量组
  • update_variable_group:[应用交付] 更新变量组
  • get_app_variable_groups:[应用交付] 获取应用的变量组
  • get_app_variable_groups_revision:[应用交付] 获取应用的变量组修订版本
  • search_app_templates:[应用交付] 搜索应用模板
  • create_app_tag:[应用交付] 创建应用标签
  • update_app_tag:[应用交付] 更新应用标签
  • search_app_tags:[应用交付] 搜索应用标签
  • update_app_tag_bind:[应用交付] 更新应用标签绑定
  • create_global_var:[应用交付] 创建全局变量组
  • get_global_var:[应用交付] 获取全局变量组
  • update_global_var:[应用交付] 更新全局变量组
  • list_global_vars:[应用交付] 列出全局变量组
  • get_machine_deploy_log:[应用交付] 获取机器部署日志
  • add_host_list_to_host_group:[应用交付] 向主机组添加主机列表
  • add_host_list_to_deploy_group:[应用交付] 向部署组添加主机列表
  • list_app_release_workflows:[应用交付] 列出应用的所有发布工作流
  • list_app_release_workflow_briefs:[应用交付] 列出应用的发布工作流摘要
  • list_system_release_workflows:[应用交付] 列出所有系统发布工作流
  • create_system_release_workflow:[应用交付] 创建系统发布工作流
  • update_system_release_stage:[应用交付] 更新系统发布工作流阶段
  • execute_system_release_stage:[应用交付] 执行系统发布工作流阶段
  • get_app_release_workflow_stage:[应用交付] 获取发布工作流阶段详情
  • list_app_release_stage_briefs:[应用交付] 列出发布阶段摘要
  • update_app_release_stage:[应用交付] 更新应用发布工作流阶段
  • list_app_release_stage_runs:[应用交付] 列出发布阶段执行记录
  • execute_app_release_stage:[应用交付] 为变更请求执行发布工作流阶段
  • cancel_app_release_stage_execution:[应用交付] 取消发布工作流阶段执行
  • retry_app_release_stage_pipeline:[应用交付] 重试发布工作流阶段流水线
  • skip_app_release_stage_pipeline:[应用交付] 跳过发布工作流阶段流水线
  • list_app_release_stage_metadata:[应用交付] 列出阶段执行的集成元数据
  • get_app_release_stage_pipeline_run:[应用交付] 获取发布阶段流水线运行实例
  • pass_app_release_stage_validate:[应用交付] 通过发布工作流阶段验证
  • get_app_release_stage_job_log:[应用交付] 获取流水线作业执行日志
  • refuse_app_release_stage_validate:[应用交付] 拒绝发布工作流阶段验证

包管理工具

  • list_package_repositories:获取包仓库详情列表
  • list_artifacts:获取制品详情列表
  • get_artifact:获取单个制品详情

测试管理工具

  • list_testcase_directories:[测试管理] 获取测试用例目录列表
  • create_testcase_directory:[测试管理] 创建测试用例目录
  • get_testcase_field_config:[测试管理] 获取测试用例字段配置
  • create_testcase:[测试管理] 创建测试用例
  • search_testcases:[测试管理] 搜索测试用例
  • get_testcase:[测试管理] 获取测试用例信息
  • delete_testcase:[测试管理] 删除测试用例
  • list_test_plans:[测试管理] 获取测试计划列表
  • get_test_result_list:[测试管理] 获取测试计划中的测试用例列表
  • update_test_result:[测试管理] 更新测试结果

联系我们

如有任何问题,请加入钉钉群“云效mcp server&智能化用户沟通2群”(群号:177120034028)。

Alibaba Cloud DevOps MCP Server DingTalk Group

相关链接