Azure DevOps MCP Server
Community server for Azure DevOps work items, repos, pull requests, pipelines and wikis
Works with Alibaba Cloud Yunxiao DevOps: code, work items, pipelines, deployments and tests
Official · Alibaba Cloud TypeScript Remote (hosted) · Streamable HTTPLocal · stdio Git and code hostingDevOps and monitoringProductivity
66 popularity score ★ 182 ↓ 2.2k/wk
Opens the app, which asks before it adds the server. Then replace each <NAME> in its settings with your value.
{
"mcpServers": {
"yunxiao": {
"url": "https://openapi-rdc.aliyuncs.com/ai/mcp",
"headers": { "Authorization": "Bearer <YOUR_TOKEN>" }
}
}
}Opens the app, which asks before it adds the server. Then replace each <NAME> in its settings with your value.
It needs YUNXIAO_ACCESS_TOKEN. Replace each <NAME> with your value.
claude mcp add alibabacloud-devops -e YUNXIAO_ACCESS_TOKEN=<YUNXIAO_ACCESS_TOKEN> -- npx -y alibabacloud-devops-mcp-server{
"mcpServers": {
"alibabacloud-devops": {
"command": "npx",
"args": [
"-y",
"alibabacloud-devops-mcp-server"
],
"env": {
"YUNXIAO_ACCESS_TOKEN": "<YUNXIAO_ACCESS_TOKEN>"
}
}
}
}{
"mcpServers": {
"alibabacloud-devops": {
"command": "npx",
"args": [
"-y",
"alibabacloud-devops-mcp-server"
],
"env": {
"YUNXIAO_ACCESS_TOKEN": "<YUNXIAO_ACCESS_TOKEN>"
}
}
}
}{
"servers": {
"alibabacloud-devops": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"alibabacloud-devops-mcp-server"
],
"env": {
"YUNXIAO_ACCESS_TOKEN": "<YUNXIAO_ACCESS_TOKEN>"
}
}
}
}[mcp_servers.alibabacloud-devops]
command = "npx"
args = ["-y", "alibabacloud-devops-mcp-server"]
[mcp_servers.alibabacloud-devops.env]
YUNXIAO_ACCESS_TOKEN = "<YUNXIAO_ACCESS_TOKEN>"gemini mcp add --scope user -e YUNXIAO_ACCESS_TOKEN=<YUNXIAO_ACCESS_TOKEN> alibabacloud-devops npx -- -y alibabacloud-devops-mcp-serverOpens the app, which asks before it adds the server. Then replace each <NAME> in its settings with your value.
It needs YUNXIAO_ACCESS_TOKEN. Replace each <NAME> with your value.
claude mcp add alibabacloud-devops -e YUNXIAO_ACCESS_TOKEN=<YUNXIAO_ACCESS_TOKEN> -- docker run -i --rm -e YUNXIAO_ACCESS_TOKEN build-steps-public-registry.cn-beijing.cr.aliyuncs.com/build-steps/alibabacloud-devops-mcp-server:latest{
"mcpServers": {
"alibabacloud-devops": {
"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": "<YUNXIAO_ACCESS_TOKEN>"
}
}
}
}{
"mcpServers": {
"alibabacloud-devops": {
"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": "<YUNXIAO_ACCESS_TOKEN>"
}
}
}
}{
"servers": {
"alibabacloud-devops": {
"type": "stdio",
"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": "<YUNXIAO_ACCESS_TOKEN>"
}
}
}
}[mcp_servers.alibabacloud-devops]
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"]
[mcp_servers.alibabacloud-devops.env]
YUNXIAO_ACCESS_TOKEN = "<YUNXIAO_ACCESS_TOKEN>"gemini mcp add --scope user -e YUNXIAO_ACCESS_TOKEN=<YUNXIAO_ACCESS_TOKEN> alibabacloud-devops docker -- run -i --rm -e YUNXIAO_ACCESS_TOKEN build-steps-public-registry.cn-beijing.cr.aliyuncs.com/build-steps/alibabacloud-devops-mcp-server:latestYUNXIAO_ACCESS_TOKEN |
Required: Yunxiao personal access token used for every API call. |
|---|---|
YUNXIAO_API_BASE_URL |
Optional: OpenAPI address for Region-edition organizations; defaults to https://openapi-rdc.aliyuncs.com. |
DEVOPS_TOOLSETS |
Optional: Comma-separated toolsets to enable; all are on when unset (same as --toolsets). |
MCP_TRANSPORT |
Optional: sse, streamable-http or both to serve over HTTP instead of stdio. |
PORT |
Optional: Port for the HTTP transports. |
MCP_STREAMABLE_PATH |
Optional: Streamable HTTP endpoint path, /mcp by default. |
MCP_HTTP_HOST |
Optional: Bind address for HTTP mode, 0.0.0.0 by default. |
MCP_ALLOWED_HOSTS |
Optional: Comma-separated Host header values accepted in HTTP mode. |
YUNXIAO_ALLOW_REQUEST_API_BASE_URL |
Optional: Set to false so HTTP callers cannot override the API address per request; allowed by default. |
MCP_JSON_BODY_LIMIT |
Optional: Largest JSON request body in HTTP mode, 20mb by default. |
In a container, a setting goes in with -e NAME=value after docker run.
Alibaba Cloud's own MCP server for Yunxiao (AlibabaCloud DevOps), its hosted development platform. Through a personal access token it calls the Yunxiao OpenAPI to look up organizations and members, manage Codeup repositories, branches, files and merge requests, handle projects, sprints, work items and time records, run and inspect Flow pipelines, drive AppStack application delivery and release workflows, list artifact repositories, and keep test cases and test plans.
The tool list is much larger than the README shows: the tools.json file at v0.3.68 counts 203 tools, including ones the README leaves out such as merge_change_request, review_change_request, create_repository and delete_work_item. Tools are grouped into seven toolsets (organization-management, code-management, project-management, pipeline-management, packages-management, application-delivery, test-management); all are on unless --toolsets or DEVOPS_TOOLSETS picks a subset, which keeps the list an assistant sees shorter.
It runs locally over stdio with npx or Docker, can be self-hosted over SSE or Streamable HTTP, and Yunxiao also runs a hosted Streamable HTTP endpoint at https://openapi-rdc.aliyuncs.com/ai/mcp (Region editions use their own domain plus /ai/mcp). It talks to the central OpenAPI at openapi-rdc.aliyuncs.com by default; Region-edition organizations set YUNXIAO_API_BASE_URL.
| To run it yourself | Node.js 18+orDocker |
|---|
Node.js 18 or later for the npx way, or Docker for the container. A Yunxiao (AlibabaCloud DevOps) organization and a personal access token; the README asks for read and write rights on organization, project, code, pipeline, artifact repository, application delivery and test management APIs. Region-edition organizations need their own domain in YUNXIAO_API_BASE_URL. The hosted endpoint needs no install, only the token as a Bearer header.
Only works with Yunxiao; it does not reach other Alibaba Cloud services or other code hosts. Work item attachments are capped at 10 MB per file and Yunxiao rejects svg and tiff files (tools.json). list_current_user_effort_records refuses ranges longer than six months. Some tool descriptions are written in Chinese. With all 203 tools enabled the list is long; the docs suggest choosing toolsets. The README's tool list is incomplete and spells one tool get_current_organization_Info, while the code names it get_current_organization_info.
Teams already on Alibaba Cloud Yunxiao that want an assistant to read requirements, change code, open and merge requests, start pipelines or push releases there. Because it is official and the hosted endpoint needs no install, it is the direct choice for Yunxiao users. Its token-wide write access is broad, so a team that only wants read access or one area should limit the token's scopes and enable only the toolsets it needs. Teams on GitHub, GitLab or other CI systems need a server for that platform instead.
get_current_organization_infoget_user_organizationssearch_organization_memberslist_organization_roleslist_repositoriescreate_repositorycreate_branchdelete_branchlist_filesget_file_blobscreate_fileupdate_filedelete_filecomparelist_commitscreate_change_requestget_change_requestreview_change_requestmerge_change_requestcreate_change_request_commentsearch_projectslist_sprintscreate_sprintsearch_workitemsget_work_itemcreate_work_itemupdate_work_itemdelete_work_itemcreate_work_item_commentcreate_workitem_attachmentlist_workitem_activitiescreate_effort_recordlist_pipelinessmart_list_pipelinesgenerate_pipeline_yamlcreate_pipeline_from_descriptionupdate_pipelinecreate_pipeline_runget_pipeline_runget_pipeline_job_run_logstop_pipeline_job_runlist_service_connectionsupdate_resource_ownerget_vm_deploy_orderlist_package_repositorieslist_artifactslist_applicationscreate_applicationcreate_variable_groupcreate_change_orderexecute_job_actioncreate_appstack_change_requestexecute_app_release_stagepass_app_release_stage_validateadd_host_list_to_host_groupsearch_testcasescreate_testcaselist_test_plansupdate_test_resultget_test_result_list