阿里云云效(DevOps)MCP 操作工具,基于 MCP SSE 协议。MCP Server: http://localhost:3000
text
yunxiao-mcp/
├── SKILL.md # 本文件
├── DEPLOY.md # MCP Server 部署与运维
└── client/ # Node.js MCP 客户端
├── package.json
├── examples/
└── src/
├── client.mjs # MCP SSE 客户端核心
├── cli.mjs # 命令行接口
└── index.mjs # 模块导出
通过 MCP Server 提供 165+ 工具,覆盖:
bash
# 安装客户端
cd client && npm install
# 确保 MCP Server 运行(未运行参考 DEPLOY.md)
docker ps --filter "name=yunxiao-mcp"
bash
# 在项目 client 目录下执行以下命令
# 查看所有工具(Markdown 表格,省 token)
node src/cli.mjs list
# 查看某个工具的参数定义(JSON,含 inputSchema)
node src/cli.mjs schema get_current_user
# 当前用户
node src/cli.mjs call get_current_user
# 当前企业信息
node src/cli.mjs call get_current_organization_info
# 搜索项目
node src/cli.mjs call search_projects '{"organizationId": "<org_id>", "perPage": 20}'
# 搜索需求
node src/cli.mjs call search_workitems '{"organizationId": "<org_id>", "spaceId": "<project_id>", "category": "Req", "perPage": 20}'
# 搜索 Bug
node src/cli.mjs call search_workitems '{"organizationId": "<org_id>", "spaceId": "<project_id>", "category": "Bug", "perPage": 20}'
# 获取版本列表
node src/cli.mjs call list_versions '{"organizationId": "<org_id>", "id": "<project_id>", "perPage": 20}'
# 从 stdin 传递大参数
echo '{"organizationId": "<org_id>"}' | node src/cli.mjs call search_projects --stdin
bash
# 1. 浏览工具列表(Markdown 表格,低 token)
node src/cli.mjs list
# 2. 获取目标工具参数定义(JSON,按需获取)
node src/cli.mjs schema search_workitems
# 3. 执行调用(JSON 结果)
node src/cli.mjs call search_workitems '{"organizationId":"xxx","spaceId":"yyy","category":"Req"}'
工具名说明search_projects搜索项目列表get_project获取项目详情list_versions获取版本列表list_sprints获取迭代列表
工具名说明search_workitems搜索工作项(需求/Bug/任务)get_work_item获取工作项详情create_work_item创建工作项update_work_item更新工作项
工具名说明list_pipelines获取流水线列表get_pipeline获取流水线详情create_pipeline_run运行流水线get_pipeline_run获取运行记录
工具名说明list_repositories获取代码仓库列表list_branches获取分支列表get_file_blobs获取文件内容create_file创建文件
参数说明organizationId企业 ID,可通过 get_current_organization_info 获取spaceId项目 IDcategory工作项类型,取值见下表
值说明Req需求Bug缺陷Task任务Risk风险Topic主题Request诉求
js
import { createClient } from './src/index.mjs';
const client = await createClient('http://localhost:3000');
const result = await client.callTool('search_workitems', {
organizationId: '<org_id>',
spaceId: '<project_id>',
category: 'Req',
perPage: 10,
});
console.log(JSON.stringify(result));
await client.close();