Azure DevOps MCP-Server
Ein MCP-Server (Model Context Protocol), der die Integration mit Azure DevOps ermöglicht und KI-Assistenten die Interaktion mit Azure DevOps-Arbeitselementen, Pull Requests und Wikis erlaubt.
Merkmale
Arbeitselementverwaltung (Erstellen, Auflisten, Abrufen)
Pull Request-Operationen (Erstellen, Auflisten, Abrufen, Kommentieren, Diff)
Wiki-Seitenverwaltung (Erstellen, Bearbeiten)
Aufstellen
Installieren Sie Abhängigkeiten:
Konfigurieren Sie Umgebungsvariablen (erstellen Sie eine .env-Datei):
AZURE_DEVOPS_ORG_URL=https://dev.azure.com/your-org
AZURE_DEVOPS_PAT=your-personal-access-token
AZURE_DEVOPS_PROJECT=default-project
AZURE_DEVOPS_REPOSITORY=default-repo
Erstellen Sie den Server:
Installation
Fügen Sie die Serverkonfiguration zu Ihren MCP-Einstellungen hinzu:
Für VSCode
Unter macOS/Linux
Fügen Sie zu ~/.vscode/cline_mcp_settings.json oder dem Cursor/Roo-Äquivalent hinzu:
{
"mcpServers": {
"azure-devops": {
"command": "node",
"args": ["/path/to/azure-devops-mcp/build/index.js"],
"env": {
"AZURE_DEVOPS_ORG_URL": "your-org-url",
"AZURE_DEVOPS_PAT": "your-pat",
"AZURE_DEVOPS_PROJECT": "your-project",
"AZURE_DEVOPS_REPOSITORY": "your-repo"
},
"disabled": false,
"autoApprove": []
}
}
}
Unter Windows
Zu %USERPROFILE%\.vscode\cline_mcp_settings.json oder dem Cursor/Roo-Äquivalent hinzufügen:
{
"mcpServers": {
"azure-devops": {
"command": "node",
"args": ["C:/path/to/azure-devops-mcp/build/index.js"],
"env": {
"AZURE_DEVOPS_ORG_URL": "your-org-url",
"AZURE_DEVOPS_PAT": "your-pat",
"AZURE_DEVOPS_PROJECT": "your-project",
"AZURE_DEVOPS_REPOSITORY": "your-repo"
},
"disabled": false,
"autoApprove": []
}
}
}
Verfügbare Tools
Arbeitselemente
Arbeitselemente auflisten
Listet Arbeitselemente in einem Projekt auf.
{
"project": string, // Required
"types"?: string[], // Optional: Filter by work item types
"states"?: string[], // Optional: Filter by states
"assignedTo"?: string // Optional: Filter by assigned user
}
Arbeitselement abrufen
Erhalten Sie Details zu einem bestimmten Arbeitselement.
{
"project": string, // Required
"id": number // Required: Work item ID
}
Arbeitselement erstellen
Erstellen Sie ein neues Arbeitselement.
{
"project": string, // Required
"type": string, // Required: e.g., "Task", "Bug"
"title": string, // Required
"description"?: string, // Optional
"assignedTo"?: string // Optional
}
Pull Requests
Pull-Anfragen auflisten
Listen Sie Pull Requests in einem Repository auf.
{
"status"?: "active" | "completed" | "abandoned" // Optional
}
get_pull_request
Erhalten Sie Details zu einer bestimmten Pull-Anfrage.
{
"pullRequestId": number // Required
}
Pull-Anfrage erstellen
Erstellen Sie eine neue Pull-Anfrage.
{
"title": string, // Required
"description": string, // Required
"sourceBranch": string, // Required
"targetBranch": string, // Required
"reviewers"?: string[] // Optional: Array of reviewer email addresses
}
create_pull_request_comment
Fügen Sie einem Pull Request einen Kommentar hinzu.
{
"pullRequestId": number, // Required
"content": string, // Required
"threadId"?: number, // Optional: For replies
"filePath"?: string, // Optional: For file comments
"lineNumber"?: number, // Optional: For line comments
"status"?: "active"|"fixed"|"pending"|"wontfix"|"closed" // Optional: Thread status
}
get_pull_request_diff
Holen Sie sich den Diff für eine Pull-Anfrage.
{
"pullRequestId": number, // Required
"filePath"?: string, // Optional: Specific file to get diff for
"iterationId"?: number // Optional: Specific iteration to get diff for
}
Wiki
Wiki-Seite erstellen
Erstellen Sie eine neue Wiki-Seite.
{
"project": string, // Required
"wiki": string, // Required
"path": string, // Required
"content": string // Required
}
Wiki-Seite bearbeiten
Bearbeiten Sie eine vorhandene Wiki-Seite.
{
"project": string, // Required
"wiki": string, // Required
"path": string, // Required
"content": string, // Required
"etag": string // Required: For concurrency control
}
Entwicklung
Im Entwicklungsmodus mit Umgebungsvariablen ausführen:
Notiz
Sofern in den Toolargumenten nicht ausdrücklich etwas anderes angegeben ist, verwenden die project und repository -Parameter Standardwerte aus Ihrer Umgebungskonfiguration.