azure-devops-mcp

by RyanCardin15
Verified
# Azure DevOps MCP Tool Integrations This document outlines potential Azure DevOps integrations that could be implemented in the MCP server, organized by category. ## Work Items ### Queries and Search - **listWorkItems** - Query work items using WIQL (already implemented) - **getWorkItemById** - Retrieve a specific work item by ID - **searchWorkItems** - Free text search across work items - **getRecentlyUpdatedWorkItems** - List recently updated work items - **getMyWorkItems** - List work items assigned to the current user ### Creation and Updates - **createWorkItem** - Create a new work item - **updateWorkItem** - Update an existing work item - **addWorkItemComment** - Add a comment to a work item - **updateWorkItemState** - Change the state of a work item - **assignWorkItem** - Assign a work item to a user - **addAttachment** - Add an attachment to a work item - **createLink** - Create a link between work items ### Bulk Operations - **bulkCreateWorkItems** - Create multiple work items - **bulkUpdateWorkItems** - Update multiple work items - **exportWorkItems** - Export work items to CSV or JSON ## Boards and Sprints ### Boards - **getBoards** - List all boards - **getBoardColumns** - Get columns for a specific board - **getBoardItems** - Get all items on a board - **moveCardOnBoard** - Move a card to a different column ### Sprints - **getSprints** - List all sprints - **getCurrentSprint** - Get the current sprint - **getSprintWorkItems** - Get work items in a sprint - **getSprintCapacity** - Get team capacity for a sprint - **getSprintBurndown** - Get burndown chart data for a sprint - **forecastSprintCapacity** - Forecast team capacity based on historical data ### Team Management - **getTeams** - List all teams - **getTeamMembers** - Get members of a team - **getTeamActivity** - Get recent team activity - **getTeamCapacity** - Get capacity for a team ## Project Management ### Projects - **listProjects** - List all projects - **getProjectDetails** - Get details of a specific project - **createProject** - Create a new project - **getProjectProcessTemplate** - Get the process template for a project ### Areas and Iterations - **getAreas** - Get the area hierarchy - **getIterations** - Get the iteration hierarchy - **createArea** - Create a new area - **createIteration** - Create a new iteration ### Process - **getProcesses** - Get all processes - **getWorkItemTypes** - Get all work item types for a process - **getWorkItemTypeFields** - Get all fields for a work item type - **getWorkItemTypeStates** - Get all states for a work item type ## Code and Repositories ### Repositories - **listRepositories** - List all Git repositories - **getRepository** - Get details of a specific repository - **createRepository** - Create a new repository - **listBranches** - List all branches in a repository - **getBranchStats** - Get stats for a branch ### Code Search and Browse - **searchCode** - Search code across repositories - **browseRepository** - Browse repository contents - **getFileContent** - Get content of a specific file - **getCommitHistory** - Get commit history for a file or branch ### Pull Requests - **listPullRequests** - List all pull requests - **createPullRequest** - Create a new pull request - **getPullRequestById** - Get a specific pull request - **getPullRequestComments** - Get comments on a pull request - **approvePullRequest** - Approve a pull request - **mergePullRequest** - Merge a pull request ### Build and Release ### Builds - **listBuildDefinitions** - List all build definitions - **getBuildDefinition** - Get a specific build definition - **queueBuild** - Queue a new build - **getBuilds** - Get all builds for a definition - **getBuildLogs** - Get logs for a build - **getBuildStatus** - Get status of a build - **getLatestBuild** - Get the latest build for a definition ### Releases - **listReleaseDefinitions** - List all release definitions - **getReleaseDefinition** - Get a specific release definition - **createRelease** - Create a new release - **getReleases** - Get all releases for a definition - **getReleaseStatus** - Get status of a release - **approveRelease** - Approve a release - **rejectRelease** - Reject a release ## Test Management ### Test Plans - **listTestPlans** - List all test plans - **getTestPlan** - Get a specific test plan - **createTestPlan** - Create a new test plan - **listTestSuites** - List test suites in a plan - **createTestSuite** - Create a new test suite ### Test Cases - **listTestCases** - List all test cases - **getTestCase** - Get a specific test case - **createTestCase** - Create a new test case - **updateTestCase** - Update a test case ### Test Results - **getTestResults** - Get test results - **getTestCoverage** - Get code coverage from tests - **getTestRuns** - Get test runs - **createTestRun** - Create a new test run - **updateTestResults** - Update test results ## Wiki and Documentation ### Wiki - **listWikis** - List all wikis - **getWikiPages** - Get all pages in a wiki - **getWikiPageContent** - Get content of a wiki page - **createWikiPage** - Create a new wiki page - **updateWikiPage** - Update a wiki page - **searchWiki** - Search wiki content ## Analytics and Dashboards ### Dashboards - **listDashboards** - List all dashboards - **getDashboard** - Get a specific dashboard - **createDashboard** - Create a new dashboard - **getWidgets** - Get widgets on a dashboard ### Analytics - **getVelocityReport** - Get team velocity report - **getCumulativeFlowDiagram** - Get cumulative flow diagram data - **getLeadCycleTimeReport** - Get lead/cycle time report - **getWorkItemTrends** - Get work item trend analytics - **getBranchHealthReport** - Get branch health analytics - **getCodeChurnReport** - Get code churn report ## Advanced Extensibility ### Webhooks - **listWebhooks** - List all webhooks - **createWebhook** - Create a new webhook - **updateWebhook** - Update an existing webhook - **deleteWebhook** - Delete a webhook ### Security - **getSecurityGroups** - Get all security groups - **getUserPermissions** - Get permissions for a user - **changePermissions** - Change permissions for a user or group ## Advanced Testing Capabilities ### Test Automation Integration - **runAutomatedTests** - Execute automated test suites - **getTestAutomationStatus** - Check status of automated test execution - **configureTestAgents** - Configure and manage test agents - **createTestDataGenerator** - Generate test data for automated tests - **manageTestEnvironments** - Manage test environments for different test types ### Test Quality Analysis - **getTestFlakiness** - Analyze and report on test flakiness - **getTestGapAnalysis** - Identify gaps in test coverage - **runTestImpactAnalysis** - Determine which tests to run based on code changes - **getTestHealthDashboard** - View overall test health metrics - **runTestOptimization** - Optimize test suite execution for faster feedback ### Exploratory Testing - **createExploratorySessions** - Create new exploratory testing sessions - **recordExploratoryTestResults** - Record findings during exploratory testing - **convertFindingsToWorkItems** - Convert exploratory test findings to work items - **getExploratoryTestStatistics** - Get statistics on exploratory testing activities ## DevSecOps Integrations ### Security Scanning - **runSecurityScan** - Trigger security scanning of code repositories - **getSecurityScanResults** - Retrieve results from security scans - **trackSecurityVulnerabilities** - Track and manage security vulnerabilities - **generateSecurityCompliance** - Generate security compliance reports - **integrateSarifResults** - Import SARIF format security results ### Compliance Management - **runComplianceChecks** - Execute compliance validation checks - **getComplianceStatus** - Get project compliance status - **createComplianceReport** - Generate compliance reports for audits - **manageSecurityPolicies** - Manage security policies and requirements - **trackSecurityAwareness** - Track team security awareness training ### Secret Management - **rotateSecrets** - Manage rotation of secrets and credentials - **auditSecretUsage** - Audit usage of secrets across pipelines - **vaultIntegration** - Integrate with secure vault solutions ## Artifact Management ### Package Management - **listArtifactFeeds** - List all artifact feeds - **getPackageVersions** - Get versions of a specific package - **publishPackage** - Publish a new package version - **promotePackage** - Promote a package between views - **deletePackageVersion** - Delete a specific package version ### Container Registry - **listContainerImages** - List container images in the registry - **getContainerImageTags** - Get tags for a container image - **scanContainerImage** - Scan container image for vulnerabilities - **manageContainerPolicies** - Manage container repository policies ### Universal Packages - **manageUniversalPackages** - Manage universal packages - **createPackageDownloadReport** - Report on package downloads and usage - **checkPackageDependencies** - Check dependencies for packages ## AI-Assisted Development ### Code Analysis - **getAICodeReview** - Get AI-based code review suggestions - **suggestCodeOptimization** - Suggest code optimizations using AI - **identifyCodeSmells** - Identify potential code smells and anti-patterns - **getPredictiveBugAnalysis** - Predict potential bugs in code changes ### Productivity Metrics - **getDeveloperProductivity** - Measure developer productivity metrics - **getPredictiveEffortEstimation** - AI-based effort estimation for work items - **getCodeQualityTrends** - Track code quality trends over time - **suggestWorkItemRefinements** - Get AI suggestions for work item refinements ### Intelligent Automation - **suggestAutomationOpportunities** - Identify opportunities for automation - **createIntelligentAlerts** - Set up intelligent alerts based on patterns - **predictBuildFailures** - Predict potential build failures before they occur - **optimizeTestSelection** - Intelligently select tests to run based on changes ## External Integrations ### Third-Party DevOps Tools - **integrateJiraProjects** - Sync with Jira projects and issues - **integrateSlackNotifications** - Configure Slack notifications for ADO events - **integrateTeamsMessages** - Post messages to Microsoft Teams - **connectServiceNow** - Connect to ServiceNow instances - **integrateSonarQube** - Connect to SonarQube for code analysis ### Support and Helpdesk - **createSupportTicket** - Create support tickets from work items - **trackSupportStatus** - Track status of support tickets - **manageSLAs** - Manage and track SLAs for support items - **generateSupportReports** - Generate reports on support activities ### Customer Feedback - **collectCustomerFeedback** - Collect and track customer feedback - **analyzeUserSentiment** - Analyze user sentiment from feedback - **manageBetaTesting** - Manage beta testing programs - **createFeatureFlags** - Create and manage feature flags based on feedback ## Cost and Resource Management ### Cost Analysis - **getProjectCostAnalysis** - Analyze costs associated with projects - **forecastResourceUsage** - Forecast future resource usage and costs - **optimizeResourceAllocation** - Get suggestions for resource optimization - **trackCloudSpending** - Track and manage cloud spending for projects ### Resource Utilization - **getResourceUtilization** - Get reports on resource utilization - **optimizeParallelization** - Optimize parallelization of build agents - **trackLicenseUsage** - Track usage of licensed tools and services - **getResourceBottlenecks** - Identify bottlenecks in resource usage ## Hybrid and Cross-platform Development ### Cross-platform DevOps - **manageMultiplatformBuilds** - Manage builds across multiple platforms - **syncGitHubProjects** - Synchronize with GitHub projects and issues - **integrateGitLabPipelines** - Integrate with GitLab CI/CD pipelines - **manageCrossRepoWorkflows** - Manage workflows across multiple repositories ### Hybrid Cloud - **manageHybridDeployments** - Manage deployments across cloud and on-premises - **configureMulticloudPipelines** - Configure pipelines for multi-cloud deployments - **optimizeCloudResources** - Optimize resource usage across cloud providers - **monitorHybridEnvironments** - Monitor hybrid cloud environments ## Implementation Priority Recommendations ### High Priority (Quick Wins) 1. Work item operations (get by ID, update, create) 2. Sprint and board management tools 3. Repository and pull request operations ### Medium Priority 1. Test management operations 2. Build and release operations 3. Analytics and reporting tools ### Lower Priority 1. Wiki operations 2. Advanced security operations 3. Custom extension integrations ## Implementation Notes When implementing these tools, consider: 1. **Authentication**: Ensure proper scope for PAT tokens 2. **Error Handling**: Provide clear error messages for API failures 3. **Rate Limiting**: Consider Azure DevOps API rate limits 4. **Pagination**: Implement pagination for tools that return large datasets 5. **Caching**: Consider caching results where appropriate 6. **User Experience**: Format responses to be human-readable in conversational contexts