MCP server by PierreAlvim
ya-azure-mcp
An MCP (Model Context Protocol) server that exposes Azure DevOps work item management tools to AI assistants. Search, inspect, and update work items directly from your IDE's AI chat.
Available Tools
| Tool | Description |
|------|-------------|
| SearchWorkItems | Run a WIQL query to find work items. Returns ID, title, state, assignee, type, area, iteration, and tags. |
| GetWorkItem | Get full details for a single work item by ID, including description, acceptance criteria, board column, and priority. |
| CreateWorkItem | Create a new work item by specifying its project, type, title, and optional description. |
| ListRepositories | List Git repositories in a project or across the entire organization. Returns repository IDs, names, and URLs. |
| ListPullRequests | List pull requests for a specific repository by status (active, completed, abandoned, all). |
| GetPullRequest | Get detailed information for a single pull request, including its description and full reviewer list/votes. |
| CreatePullRequest | Create a new pull request between two branches in a repository. |
| ListCommits | List recent commits in a repository. Can optionally filter by branch name. |
| ListWikis | List all wikis configured in an Azure DevOps project. |
| GetWikiPage | Get the markdown content of a specific wiki page by its path. |
| CreateOrUpdateWikiPage | Create a new wiki page or update an existing one with markdown content. |
Setup
1. Create a Personal Access Token (PAT)
Go to https://dev.azure.com/{your-org}/_usersSettings/tokens and create a PAT with Work Items → Read & Write scope.
2. Connect to your IDE
You can provide your configuration either via Environment Variables or via Command Line Arguments (recommended for mcp.json configs).
Option A: Standalone Executable (Recommended for Non-.NET Users)
If you downloaded the pre-compiled binary from GitHub Releases (e.g., ya-azure-mcp.exe), you can configure your IDE to point directly to it and pass the settings as arguments.
VS Code / Cursor (.vscode/mcp.json or Global Config):
{
"mcpServers": {
"ya-azure-mcp": {
"command": "/path/to/extracted/ya-azure-mcp",
"args": [
"--AZDO_ORG_URL", "https://dev.azure.com/your-org",
"--AZDO_PAT", "your-pat-here"
]
}
}
}
Option B: Running from Source (.NET Required)
If you are cloning this repository or working on the source code, you can use the .NET CLI to run the MCP server.
VS Code / Cursor (.vscode/mcp.json):
{
"mcpServers": {
"ya-azure-mcp": {
"command": "dotnet",
"args": [
"run",
"--project",
"/path/to/ya-azure-mcp",
"--",
"--AZDO_ORG_URL", "https://dev.azure.com/your-org",
"--AZDO_PAT", "your-pat-here"
]
}
}
}
Note: You can also use the env object in mcp.json to pass "AZDO_ORG_URL" and "AZDO_PAT" if you prefer not to use command-line arguments.
Example Prompts
Once the MCP server is connected, try these prompts in your AI chat:
- "Show me all active bugs in the MyProject project"
- "Get details for work item #1234"
- "Move work item #1234 to the Active state"
- "Assign work item #5678 to user@example.com"
- "Find all user stories in the current sprint"
- "Create a new Bug in the MyProject project titled 'Login failing on Firefox'"
- "List all git repositories in the frontend project"
- "Show me active pull requests in the
core-apirepository" - "Get the details for PR #998 and tell me who hasn't approved it yet"
- "Create a pull request in
my-repofromfeature/new-logintomain" - "What were the last 10 commits on the
mainbranch ofweb-app?" - "List all the wikis available in the backend project"
- "Get the content of the
/Architecture/Databasewiki page" - "Create a new wiki page in the
docswiki under/Setup/Databasewith the text 'Run docker-compose up'"
Development
# Restore and build
dotnet build
# Run the MCP server locally
dotnet run