hafeez1042/azure-devops-mcp-server
If you are the rightful owner of azure-devops-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
A self-hosted MCP server for Azure DevOps built with TypeScript on Node 22 (Alpine).
Azure DevOps MCP Server (Self-hosted, HTTP/SSE, Node 22 + TypeScript)
A self-hosted MCP server for Azure DevOps built with TypeScript on Node 22 (Alpine). It exposes tools to:
ado.searchAdvanced— Advanced search with similarity scoringado.findDuplicates— Return likely duplicates for a proposed title/typeado.upsertWorkItem— Create/update User Stories, Features, Bugs, Tasks with de-duplication & linkingado.ensureHierarchy— Ensure a hierarchy Feature → Stories → Tasksado.transitionState— Change stateado.addLink— Attach a hyperlink relation
Designed to work with n8n MCP Client Tool (HTTP or SSE).
Environment
ADO_ORG_URL(required) — e.g.https://dev.azure.com/contosoADO_PROJECT(required) — Azure DevOps project nameADO_PAT(optional but recommended) — PAT with minimal scopes (Work Items Read/Write)PORT(optional) — default3000
Build & Run (Docker)
docker build -t azure-devops-mcp:local .
docker run -d --name ado-mcp -e ADO_ORG_URL="https://dev.azure.com/<org>" -e ADO_PROJECT="<project>" -e ADO_PAT="<your_pat_with_work_item_write>" -e PORT=3000 -p 3000:3000 azure-devops-mcp:local
n8n Setup
- Endpoint:
http://<host>:3000/(HTTP) orhttp://<host>:3000/sse(SSE) - The server authenticates to ADO with your PAT (no extra n8n auth needed unless you front it with a proxy).
Dedupe details
We combine WIQL contains queries with a trigram similarity score on titles. Default duplicate threshold is 0.62; adjust in azure.ts → upsertWorkItem() if your project’s titles are noisy. You can also set detectDuplicatesBy to title, title+area, or title+iteration to narrow the candidate pool and avoid cross-team collisions.
Hierarchy helper
Use ado.ensureHierarchy to declare a Feature plus its Stories (and optional Tasks) and have the server upsert and link everything using Parent links.
Notes
- Relation direction for parent/child uses
System.LinkTypes.Hierarchy-Reverseon the child to point to the parent. - You can extend tools (e.g., add attachments, fields mapping, or PR/commit links) in
src/tools/and reuse helpers insrc/azure.ts.