---
title: "Azure DevOps Services MCP server for AI agents - actionlake"
description: "Give Claude 967 Azure DevOps Services actions through one MCP server: git, build, wit. Your agent never holds the credential. 100,000 calls a month free."
canonical: https://actionlake.com/connectors/azure-devops-services
updated: 2026-10-11
---

Connectors · Developer & infrastructure

# Azure DevOps Services MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Azure DevOps Services and the rest of your systems. It gives your agent 967 Azure DevOps Services actions (521 reads, 323 writes and 123 that wait for a confirmation) and holds the Azure DevOps Services credential itself, so the agent never does. It paces Azure DevOps Services's limits and records every call.

[Connect Azure DevOps Services free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

`claude mcp add --transport http actionlake https://connect.actionlake.com/mcp`

the first call

```
do {
  action: "azure_devops.users.list",
  intent: "check which Azure DevOps Services account is connected"
}
# List Users · read · 1 upstream call
```

- 967 actions in one signed file
- 521 read look, never change
- 323 write create and update
- 123 wait for a yes destructive, confirmed first

Set up

## Connect Azure DevOps Services in three steps.

1. 01
   ### Add actionlake to Claude.
   Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
   `https://connect.actionlake.com/mcp`
2. 02
   ### Connect Azure DevOps Services.
   Username and secret. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.
   - `pat` Azure DevOps personal access token
   - `organization` Your Azure DevOps Services organization
   ```
   account { op: "connections.requirements", service: "azure_devops" }
   # free: exactly what to paste, and what is found for you
   ```
3. 03
   ### Make the first call. Check before a write.
   Ask in plain words; Claude picks the action. Before anything changes, `check` validates the call and prices it, for free.
   ```
   do    { action: "azure_devops.users.list" }
   # list users · read · 1 upstream call
   check { action: "azure_devops.projects.queue", input: { … } }
   # free: inputs, permissions, cost and confirmations, nothing sent
   ```

Azure DevOps Services at a glance

**Sign-in**

Username and secret. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.

**You provide**

`pat`

**Setup fields**

`organization`

**Limits we pace to**

200 calls a minute, per connection

**API covered**

Azure DevOps Services API 7.1`dev.azure.com`

**Built from**

Azure DevOps Services's documentation, read 19 September 2026[GitHub](https://github.com/MicrosoftDocs/vsts-rest-api-specs/tree/master/specification) [learn.microsoft.com](https://learn.microsoft.com/en-us/azure/devops/integrate/get-started/authentication/pats)

**Service file**

Version 1.0.0, signed (Ed25519)

**Cached reads**

513 of 521 reads, for up to an hour; a write clears what it affects

**Ready-made plans**

12 in the store

**Shared entities**

5, so ask can line Azure DevOps Services up with your other systems

**Data**

Processed and stored in Sydney, Australia. No US region yet

Capabilities

## What an AI agent can do in Azure DevOps Services.

967 actions in 38 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

- **521** read look, never change
- **323** write create and update
- **123** destructive wait for a confirmation

1. ### Git
   104
   60 read · 34 write · 10 destructive
   Get Repositories · Get Pull Requests By Project · Get Deleted Repositories · Get Forks
2. ### Build
   85
   50 read · 27 write · 8 destructive
   List Repositories · Get Pull Request · Get Build Work Items Refs · Get Work Items Between Builds
3. ### Wit
   76
   48 read · 19 write · 9 destructive
   Get Engaged Users · Migrate Projects Process · Create Work Item · Get Recent Activity Data
4. ### Test results
   75
   49 read · 19 write · 7 destructive
   Get Bugs Linked To Test Result · Get Test Result Work Items By Id · Query Test Result Work Items · Get Test Result Attachments
5. ### Distributed task
   62
   26 read · 26 write · 10 destructive
   Get Deployment Groups · Get Environments · Get Environment Deployment Execution Records · Add Deployment Group
6. ### Work
   57
   34 read · 21 write · 2 destructive
   Get Backlog Level Work Items · Get Work Item Columns · Get Iteration Work Items · Get Board Mapping Parent Items
7. ### Artifacts package types
   56
   17 read · 27 write · 12 destructive
   Get Package Version Metadata From Recycle Bin · Get Package Version · Get Package Version Metadata From Recycle Bin · Get Scoped Package Version Metadata From Recycle Bin
8. ### Processes
   56
   18 read · 26 write · 12 destructive
   Get List Of Processes · Create New Process · Get State Definitions · Create State Definition

**30 more areas · 396 actions**

- Test plan **37**
- Artifacts **36**
- Test **34**
- Graph **28**
- Release **25**
- Hooks **22**
- Member entitlement management **21**
- Core **19**
- Notification **17**
- Dashboard **16**
- TFVC **15**
- Approvals and checks **14**
- Wiki **14**
- Policy **12**
- Symbol **12**
- Service endpoint **11**
- Pipelines **10**
- Security **9**
- Audit **8**
- Search **6**
- Security roles **6**
- Extension management **5**
- Favorite **4**
- Tokens **4**
- Permissions report **3**
- Token admin **3**
- Processadmin **2**
- Ims **1**
- Operations **1**
- Status **1**

Top actions

## The Azure DevOps Services API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 361 of Azure DevOps Services's 374 action names are shared with at least one other connector, so an agent learns them once.

| Action | What it does | Effect | Same name in |
| --- | --- | --- | --- |
| `azure_devops.users.list` List Users | Get a list of all users in a given scope | read | `identity.user.list` 474 connectors |
| `azure_devops.git_repositories.list` Get Repositories | Retrieve git repositories. | read | `devops.repository.list` 28 connectors |
| `azure_devops.projects.list` Get Projects | Get all projects in the organization that the authenticated user has access to. | read | `work.project.list` 109 connectors |
| `azure_devops.graph_groups.list` List Groups | Gets a list of all groups in the current scope (usually organization or account) | read | `identity.group.list` 262 connectors |
| `azure_devops.git_pull_requests.get_pull_requests_by_project` Get Pull Requests By Project | Retrieve all pull requests matching a specified criteria | read | `devops.pull_request.list` 12 connectors |
| `azure_devops.identities.list` Read Identities | Resolve legacy identity information for use with older APIs such as the Security APIs | read | `identity.user.list` 474 connectors |
| `azure_devops.forks.list` Get Forks | Retrieve all forks of a repository in the collection. | read | `devops.repository.list` 28 connectors |
| `azure_devops.test_plan_plans.list` Get Test Plans | Get a list of test plans | read | `work.project.list` 109 connectors |
| `azure_devops.projects.queue` Queue Create Project | Queues a project to be created | write | `work.project.create` 102 connectors |
| `azure_devops.test_plan_plans.create` Create Test Plan | Create a test plan. | write | `work.project.create` 102 connectors |
| `azure_devops.projects.delete` Queue Delete Project | Queues a project to be deleted | destructive | `work.project.delete` 85 connectors |
| `azure_devops.work_items.create` Create Work Item | Creates a single work item. | write | `work.task.create` 127 connectors |

Try it

## Prompts to paste into Claude.

Each one names the Azure DevOps Services actions it will call, so you know what it reads and what it changes before you send it.

1. Read read
   Give me a one-line status for every active Azure DevOps Services project.
   calls `azure_devops.projects.list`
2. Plan write
   Review a pull request and post a status in Azure DevOps Services.
   calls `azure_devops.git_pull_requests.get_pull_request_by_id` `azure_devops.pull_request_commits.get_pull_request_commits` `azure_devops.pull_request_work_items.list` `azure_devops.pull_request_threads.list` `azure_devops.pull_request_thread_comments.create` +1 more
3. Plan read
   Report on agent pool and queue health in Azure DevOps Services.
   calls `azure_devops.resource_usage.get` `azure_devops.availability.get` `azure_devops.queues.list` `azure_devops.elasticpoollogs.list` `azure_devops.variablegroups.get`
4. Write write
   Queue Create Project in Azure DevOps Services. Show me exactly what you will send before you save it.
   calls `azure_devops.projects.queue`

The plan store

## Ready-made plans for Azure DevOps Services.

12 plans in the store. Install one and your agent runs it by name; the reply says which connections are still missing. A schedule can run a plan on a timetable. There are no triggers or webhooks, by design.

1. ### Report on agent pool and queue health
   Use it when Pipelines are queueing and you want a picture of pool capacity, queues and their variable groups.
   **Effect**
   read
   **Steps**
   5 · loops
   **Needs**
   group id, pool id, pool ids and project
   **Install**
   `azure_devops-agent-pool-health-report`
2. ### Wait for a pipeline run and collect its artifact
   Use it when A pipeline run is in flight and you need to block until it finishes, then collect its artifact and test numbers.
   **Effect**
   read
   **Steps**
   5
   **Needs**
   artifact name, pipeline id, project and run id
   **Install**
   `azure_devops-pipeline-run-watch`
3. ### Triage recent builds and tag the bad ones
   Use it when Builds started failing and you want the failing ones identified, tagged and explained by what changed.
   **Effect**
   write
   **Steps**
   4 · loops
   **Needs**
   definition, from build id, project, tag and to build id
   **Install**
   `azure_devops-build-failure-triage`
4. ### Audit branch policies on a repository
   Use it when You need to see who changed a branch policy and then put it back to the agreed configuration.
   **Effect**
   write
   **Steps**
   5
   **Needs**
   configuration id, endpoint names, project, repository id and type id
   **Install**
   `azure_devops-branch-policy-audit`
5. ### Find flaky tests and mark them
   Use it when Tests are failing intermittently and you want the flaky ones identified and marked on the run.
   **Effect**
   write
   **Steps**
   5 · loops
   **Needs**
   branch, project, run id and tag
   **Install**
   `azure_devops-flaky-test-quarantine`
6. ### Review user entitlements and reclaim licences
   Use it when You are auditing Azure DevOps licences and want dormant users downgraded after a sign-off.
   A person decides Apply licence entitlement changes to the organization, reclaiming or downgrading seats.
   **Effect**
   write
   **Steps**
   5
   **Needs**
   filter and operations
   **Install**
   `azure_devops-licence-entitlement-review`
7. ### Stand up a new team with a dashboard
   Use it when A new team is joining a project and needs its team, members list and a starter dashboard widget in place.
   **Effect**
   write
   **Steps**
   5
   **Needs**
   dashboard id, description, project, project id, team and team name
   **Install**
   `azure_devops-new-team-onboarding`
8. ### Approve a held release manual intervention
   Use it when A release is paused on a manual intervention and someone must decide whether to resume or reject it.
   A person decides Resume release _release id_ past its manual intervention as _decision_.
   **Effect**
   write
   **Steps**
   5
   **Needs**
   comment, decision, gate step id, manual intervention id, project and release id
   **Install**
   `azure_devops-release-gate-approval`
9. ### Set up a team sprint board and capacity
   Use it when Sprint planning is done and the board needs its capacity and work item order written back.
   **Effect**
   write
   **Steps**
   5
   **Needs**
   backlog id, board, capacity body, iteration id, ordered ids, project and team
   **Install**
   `azure_devops-sprint-capacity-setup`
10. ### Review a pull request and post a status
    Use it when You need to review one Azure DevOps pull request end to end and leave a comment plus a policy status on it.
    **Effect**
    write
    **Steps**
    6
    **Needs**
    comment, project, pull request id, repository id, status state and thread id
    **Install**
    `azure_devops-pr-review-status-sweep`
11. ### Purge an artifact feed recycle bin
    Use it when An artifact feed recycle bin has grown and you want deleted packages purged for good after a sign-off.
    A person decides Permanently purge the deleted package versions listed above from feed _feed id_. Download metrics are NOT checked by this plan — confirm nothing still consumes these versions before approving. This cannot be undone.
    **Effect**
    destructive
    **Steps**
    4
    **Needs**
    feed id, package id and project
    **Install**
    `azure_devops-feed-recycle-bin-cleanup`
12. ### Retire an outdated wiki page
    Use it when A wiki page is out of date and you want it checked for references, signed off and then deleted.
    A person decides Delete wiki page _path_ from _wiki identifier_. _reference count_ work items mention it.
    **Effect**
    destructive
    **Steps**
    6
    **Needs**
    id, path, project, search text, wiki identifier and wiki name
    **Install**
    `azure_devops-wiki-page-retire`

install a plan

```
account { op: "plans.install", slug: "azure_devops-agent-pool-health-report" }
# then ask for it by name; a schedule can run it on a timetable
```

Governance for Azure DevOps Services

## Destructive actions wait for a yes.

123 Azure DevOps Services actions are destructive. The first 10:

- Queue Delete Project `azure_devops.projects.delete`
- Delete Test Plan `azure_devops.test_plan_plans.delete`
- Delete Repository `azure_devops.git_repositories.delete`
- Delete Repository From Recycle Bin `azure_devops.recycle_bin_repositories.delete`
- Delete User `azure_devops.users.delete`
- Delete Team `azure_devops.teams.delete`
- Delete Group `azure_devops.graph_groups.delete`
- Delete Test Case `azure_devops.test_cases.delete`
- Delete Work Item `azure_devops.work_items.delete`
- Destroy Work Item `azure_devops.recyclebin.destroy`

A destructive action runs only with `confirm: true`. Under the `human` policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

do azure_devops.projects.delete confirm_policy: **human**

Queue Delete Project?

**intent:** the user asked me to queue Delete Project

run suspended · waiting for a named person · key _azure-devops-agent_ cannot confirm itself

In the console, or from an emailed signed link.

a key for this connector

```
account {
  op: "keys.create", name: "azure-devops-agent",
  allowed_actions: ["azure_devops.*"], cap_calls: 2000,
  confirm_policy: "human_for_writes",
  approval_rules: [
    { match: "azure_devops.projects.delete", approver: "lead@example.com" },
    { match: "azure_devops.test_plan_plans.delete", approver: "lead@example.com" },
    { match: "azure_devops.git_repositories.delete", approver: "lead@example.com" }
  ]
}
```

Illustrative. Scoped to Azure DevOps Services only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

## What Azure DevOps Services costs on actionlake.

Every Azure DevOps Services action is one upstream call, the only thing actionlake bills. Searching, `check`, `cost`, `account` and any call Azure DevOps Services refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

- 1 upstream call per action all 967 Azure DevOps Services actions
- 967 actions page each page of a long list is one call
- 513 reads can be cached a cache hit costs nothing
- 100,000 calls a month, free paid plans from US$49 a month for 250,000

[See pricing](https://actionlake.com/pricing)

Action index

## Every Azure DevOps Services action.

967 actions by area: the id your agent calls, what it does, and its effect.

**Git 104**

- `azure_devops.deleted_repositories.list` Get Deleted Repositories read
- `azure_devops.forks.list` Get Forks read
- `azure_devops.git_pull_requests.get_pull_requests_by_project` Get Pull Requests By Project read
- `azure_devops.git_repositories.list` Get Repositories read
- `azure_devops.annotated_tags.create` Create Annotated Tag write
- `azure_devops.annotated_tags.get` Get Annotated Tag read
- and 98 more in this area

**Build 85**

- `azure_devops.build_pull_requests.get` Get Pull Request read
- `azure_devops.build_repositories.get` List Repositories read
- `azure_devops.build_workitems.get_build_work_items_refs` Get Build Work Items Refs read
- `azure_devops.build_workitems.get_work_items_between_builds` Get Work Items Between Builds read
- `azure_devops.authorizedresources.list` Get Project Resources read
- `azure_devops.authorizedresources.update` Authorize Project Resources write
- and 79 more in this area

**Wit 76**

- `azure_devops.account_my_work_recent_activity.list` Get Recent Activity Data read
- `azure_devops.comment_reactions_engaged_users.list` Get Engaged Users read
- `azure_devops.project_process_migration.create` Migrate Projects Process write
- `azure_devops.work_items.create` Create Work Item write
- `azure_devops.artifact_link_types.list` Get Work Artifact Link Types read
- `azure_devops.artifact_uri_query.query` Query Work Items For Artifact Uris read
- and 70 more in this area

**Test results 75**

- `azure_devops.bugs.list` Get Bugs Linked To Test Result read
- `azure_devops.test_results_attachments.get_test_result_attachments` Get Test Result Attachments read
- `azure_devops.test_results_workitems.get_test_result_work_items_by_id` Get Test Result Work Items By Id read
- `azure_devops.test_results_workitems.query_test_result_work_items` Query Test Result Work Items read
- `azure_devops.codecoverage.create` Update Code Coverage Summary write
- `azure_devops.codecoverage.get` Get Code Coverage Summary read
- and 69 more in this area

**Distributed task 62**

- `azure_devops.deploymentgroups.add` Add Deployment Group write
- `azure_devops.deploymentgroups.list` Get Deployment Groups read
- `azure_devops.distributed_task_environments.list` Get Environments read
- `azure_devops.environmentdeployment_records.list` Get Environment Deployment Execution Records read
- `azure_devops.agentclouds.add` Add Agent Cloud write
- `azure_devops.agentclouds.delete` Delete Agent Cloud destructive
- and 56 more in this area

**Work 57**

- `azure_devops.backlogs.get_backlog_level_work_items` Get Backlog Level Work Items read
- `azure_devops.boardparents.list` Get Board Mapping Parent Items read
- `azure_devops.taskboard_work_items.list` Get Work Item Columns read
- `azure_devops.work_workitems.get` Get Iteration Work Items read
- `azure_devops.backlogconfiguration.get` Get Backlog Configurations read
- `azure_devops.backlogs.get_backlog` Get Backlog read
- and 51 more in this area

**Artifacts package types 56**

- `azure_devops.maven_recycle_bin_versions.get` Get Package Version Metadata From Recycle Bin read
- `azure_devops.maven_versions.get` Get Package Version read
- `azure_devops.npm_recycle_bin_versions.get_package_version_metadata_from_recycle_bin` Get Package Version Metadata From Recycle Bin read
- `azure_devops.npm_recycle_bin_versions.get_scoped_package_version_metadata_from_recycle_bin` Get Scoped Package Version Metadata From Recycle Bin read
- `azure_devops.nuget_recycle_bin_versions.get` Get Package Version Metadata From Recycle Bin read
- `azure_devops.nuget_versions.get` Get Package Version read
- and 50 more in this area

**Processes 56**

- `azure_devops.processes_processes.create` Create New Process write
- `azure_devops.processes_processes.list` Get List Of Processes read
- `azure_devops.states.create` Create State Definition write
- `azure_devops.states.list` Get State Definitions read
- `azure_devops.controls.create` Create Control In Group write
- `azure_devops.controls.move` Move Control To Group write
- and 50 more in this area

**Test plan 37**

- `azure_devops.test_plan_clone.get` Get Clone Information read
- `azure_devops.test_plan_plans.create` Create Test Plan write
- `azure_devops.test_plan_plans.get` Get Test Plan By Id read
- `azure_devops.test_plan_plans.list` Get Test Plans read
- `azure_devops.suite_entry.list` Get Suite Entries read
- `azure_devops.suite_entry.reorder` Reorder Suite Entries write
- and 31 more in this area

**Artifacts 36**

- `azure_devops.package_changes.get` Get Package Changes read
- `azure_devops.packages.list` Get Packages read
- `azure_devops.recycle_bin_packages.list` Get Recycle Bin Packages read
- `azure_devops.recycle_bin_versions.list` Get Recycle Bin Package Versions read
- `azure_devops.artifacts_permissions.list` Get Feed Permissions read
- `azure_devops.artifacts_permissions.set` Set Feed Permissions write
- and 30 more in this area

**Test 34**

- `azure_devops.points.list` Get Points read
- `azure_devops.test_attachments.get_test_result_attachments` Get Test Result Attachments read
- `azure_devops.test_attachments.get_test_run_attachments` Get Test Run Attachments read
- `azure_devops.test_suites.list` Get Test Cases read
- `azure_devops.code_coverage.get_build_code_coverage` Get Build Code Coverage read
- `azure_devops.code_coverage.get_test_run_code_coverage` Get Test Run Code Coverage read
- and 28 more in this area

**Graph 28**

- `azure_devops.graph_groups.create` Create Group write
- `azure_devops.graph_groups.list` List Groups read
- `azure_devops.users.create` Create User write
- `azure_devops.users.list` List Users read
- `azure_devops.avatars.delete` Delete Avatar destructive
- `azure_devops.avatars.get` Get Avatar read
- and 22 more in this area

**Release 25**

- `azure_devops.deployments.list` Get Deployments read
- `azure_devops.release_attachments.get_release_task_attachments` Get Release Task Attachments read
- `azure_devops.release_attachments.get_task_attachments` Get Task Attachments read
- `azure_devops.release_environments.update` Update Release Environment write
- `azure_devops.gates.update` Update Gates write
- `azure_devops.manual_interventions.get` Get Manual Intervention read
- and 19 more in this area

**Hooks 22**

- `azure_devops.consumers.list` List Consumers read
- `azure_devops.hooks_subscriptions.create` Create Subscription write
- `azure_devops.notifications.list` Get Notifications read
- `azure_devops.publishers.list` List Publishers read
- `azure_devops.consumers.get` Get Consumer read
- `azure_devops.hooks_actions.get` Get Consumer Action read
- and 16 more in this area

**Member entitlement management 21**

- `azure_devops.member_entitlement_management_members.get` Get Group Members read
- `azure_devops.member_entitlement_management_members.remove` Remove Member From Group destructive
- `azure_devops.member_entitlement_management_members.update` Add Member To Group write
- `azure_devops.user_entitlement_summary.get` Get Users Summary read
- `azure_devops.group_entitlements.add` Add Group Entitlement write
- `azure_devops.group_entitlements.delete` Delete Group Entitlement destructive
- and 15 more in this area

**Core 19**

- `azure_devops.categorized_teams.get` Get Project Teams By Category read
- `azure_devops.projects.list` Get Projects read
- `azure_devops.projects.queue` Queue Create Project write
- `azure_devops.teams.get_all_teams` Get All Teams read
- `azure_devops.avatar.remove` Remove Project Avatar destructive
- `azure_devops.avatar.set` Set Project Avatar write
- and 13 more in this area

**Notification 17**

- `azure_devops.notification_subscriptions.create` Create Subscription write
- `azure_devops.notification_subscriptions.list` List Subscriptions read
- `azure_devops.subscribers.get` Get Subscriber read
- `azure_devops.subscribers.update` Update Subscriber write
- `azure_devops.diagnostic_logs.list` List Logs read
- `azure_devops.notification_diagnostics.get` Get Subscription Diagnostics read
- and 11 more in this area

**Dashboard 16**

- `azure_devops.dashboards.create` Create Dashboard write
- `azure_devops.dashboards.get` Get Dashboard read
- `azure_devops.dashboards.list` Get Dashboards By Project read
- `azure_devops.dashboards.replace_dashboard` Replace Dashboard write
- `azure_devops.dashboards.delete` Delete Dashboard destructive
- `azure_devops.dashboards.replace_dashboards` Replace Dashboards write
- and 10 more in this area

**TFVC 15**

- `azure_devops.changeset_work_items.list` Get Changeset Work Items read
- `azure_devops.labels.list` Get Labels read
- `azure_devops.shelveset_work_items.list` Get Shelveset Work Items read
- `azure_devops.tfvc_branches.list` Get Branch Refs read
- `azure_devops.changeset_changes.list` Get Changeset Changes read
- `azure_devops.changesets.create` Create Changeset write
- and 9 more in this area

**Approvals and checks 14**

- `azure_devops.approvals_and_checks_configurations.add` Add Check Configuration write
- `azure_devops.approvals_and_checks_configurations.list` Get Check Configurations On Resource read
- `azure_devops.approvals_and_checks_runs.get` Get Check Suite read
- `azure_devops.queryconfigurations.query` Query Check Configurations On Resources read
- `azure_devops.approvals_and_checks_approvals.get` Get Approval read
- `azure_devops.approvals_and_checks_approvals.list` Query Approvals read
- and 8 more in this area

**Wiki 14**

- `azure_devops.page_stats.get` Get Page Data read
- `azure_devops.pages_batch.query` Get Pages Batch read
- `azure_devops.wikis.create` Create Wiki write
- `azure_devops.wikis.list` Get All Wikis read
- `azure_devops.page_moves.create` Create Page Move write
- `azure_devops.wiki_pages.create_or_update_page` Create Or Update Page write
- and 8 more in this area

**Policy 12**

- `azure_devops.evaluations.list` Get Policy Evaluations read
- `azure_devops.policy_configurations.create` Create Policy Configuration write
- `azure_devops.policy_configurations.get_policy_configurations_policy` Get Policy Configurations read
- `azure_devops.policy_revisions.list` Get Policy Configuration Revisions read
- `azure_devops.evaluations.get` Get Policy Evaluation read
- `azure_devops.evaluations.update` Requeue Policy Evaluation write
- and 6 more in this area

**Symbol 12**

- `azure_devops.symbol_requests.create_requests_async` Create Requests Async write
- `azure_devops.symbol_requests.get_requests_request_id_async` Get Requests Request Id Async read
- `azure_devops.symbol_requests.get_requests_request_name_async` Get Requests Request Name Async read
- `azure_devops.symsrv.get` Get Sym Srv Debug Entry Client Key Async read
- `azure_devops.availability.get` Check Availability Async read
- `azure_devops.client.get` Get Client read
- and 6 more in this area

**Service endpoint 11**

- `azure_devops.endpointproxy.query` Query Service Endpoint read
- `azure_devops.endpoints.create` Create Service Endpoint write
- `azure_devops.endpoints.list` Get Service Endpoints By Names read
- `azure_devops.endpoints.query` Get Service Endpoints With Refreshed Authentication read
- `azure_devops.endpoints.delete` Delete Service Endpoint destructive
- `azure_devops.endpoints.get` Get Service Endpoint Details read
- and 5 more in this area

**Pipelines 10**

- `azure_devops.pipelines.create` Create Pipeline write
- `azure_devops.pipelines.list` List Pipelines read
- `azure_devops.pipelines_artifacts.get` Get Artifact read
- `azure_devops.pipelines_runs.list` List Runs read
- `azure_devops.pipelines.get` Get Pipeline read
- `azure_devops.pipelines_logs.get_log` Get Log read
- and 4 more in this area

**Security 9**

- `azure_devops.access_control_lists.list` Query Access Control Lists read
- `azure_devops.permission_evaluation_batch.query` Has Permissions Batch read
- `azure_devops.security_namespaces.list` Query Security Namespaces read
- `azure_devops.security_permissions.list` Has Permissions read
- `azure_devops.access_control_entries.create` Set Access Control Entries write
- `azure_devops.access_control_entries.remove` Remove Access Control Entries destructive
- and 3 more in this area

**Audit 8**

- `azure_devops.audit_log.get` Query Log read
- `azure_devops.streams.create` Create Stream write
- `azure_devops.streams.get` Query Stream By Id read
- `azure_devops.streams.list` Query All Streams read
- `azure_devops.audit_actions.list` Get Actions read
- `azure_devops.streams.delete` Delete Stream destructive
- and 2 more in this area

**Search 6**

- `azure_devops.code_search_results.query` Fetch Code Search Results read
- `azure_devops.search_repositories.get` Get Repository Status read
- `azure_devops.tfvc.get` Get Tfvc Repository Status read
- `azure_devops.work_item_search_results.query` Fetch Work Item Search Results read
- `azure_devops.package_search_results.query` Fetch Package Search Results read
- `azure_devops.wiki_search_results.query` Fetch Wiki Search Results read

**Security roles 6**

- `azure_devops.roleassignments.list` Get Role Assignments read
- `azure_devops.roleassignments.set_role_assignment` Set Role Assignment destructive
- `azure_devops.roleassignments.set_role_assignments` Set Role Assignments destructive
- `azure_devops.roledefinitions.list` Get Role Definitions read
- `azure_devops.roleassignments.remove` Remove Role Assignment destructive
- `azure_devops.roleassignments.update` Remove Role Assignments write

**Extension management 5**

- `azure_devops.installed_extensions.list` Get Installed Extensions read
- `azure_devops.installed_extensions.update` Update Installed Extension write
- `azure_devops.installed_extensions_by_name.get` Get Installed Extension By Name read
- `azure_devops.installed_extensions_by_name.install` Install Extension By Name write
- `azure_devops.installed_extensions_by_name.uninstall` Uninstall Extension By Name destructive

**Favorite 4**

- `azure_devops.favorites.create` Create Favorite write
- `azure_devops.favorites.delete` Delete Favorite By Id destructive
- `azure_devops.favorites.get` Get Favorite By Id read
- `azure_devops.favorites.list` Get Favorites read

**Tokens 4**

- `azure_devops.pats.create` Create Pat write
- `azure_devops.pats.get` Get Pat read
- `azure_devops.pats.revoke` Revoke destructive
- `azure_devops.pats.update` Update Pat write

**Permissions report 3**

- `azure_devops.permissions_report.create` Create Permissions Report write
- `azure_devops.permissions_report.get` Get Permissions Report read
- `azure_devops.permissions_report.list` Get Permissions Reports read

**Token admin 3**

- `azure_devops.personal_access_tokens.get` List Personal Access Tokens read
- `azure_devops.revocation_rules.delete` Create Revocation Rule destructive
- `azure_devops.revocations.revoke` Revoke Authorizations destructive

**Processadmin 2**

- `azure_devops.processadmin_behaviors.list` Get Behaviors read
- `azure_devops.processadmin_processes.get` Status read

**Ims 1**

- `azure_devops.identities.list` Read Identities read

**Operations 1**

- `azure_devops.operations.get` Get Operation read

**Status 1**

- `azure_devops.health.get` Get Service Status read

This index shows a sample of each area. All 967 actions, with their inputs and prices, are in the [catalogue](https://actionlake.com/console/catalogue), which a free sandbox key can search.

Questions

## The Azure DevOps Services MCP server, answered.

**Is there an Azure DevOps Services MCP server for Claude?**

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 967 Azure DevOps Services actions across git, build, wit and test results, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Azure DevOps Services.

**What do I need to connect Azure DevOps Services?**

Azure DevOps personal access token. Plus your organization. The free call account { op: "connections.requirements", service: "azure_devops" } lists exactly what to paste.

**Can an AI agent delete or change things in Azure DevOps Services?**

Only if its key allows it, and only with an explicit confirmation. 123 Azure DevOps Services actions are destructive, including queue Delete Project, delete Test Plan and delete Repository. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

**Will an AI agent use up my Azure DevOps Services API limit?**

actionlake paces every call to the limits in the Azure DevOps Services service file: 200 calls a minute per connection. Repeated reads are answered from cache (513 Azure DevOps Services actions can be), which never reaches Azure DevOps Services.

**What does an Azure DevOps Services action cost?**

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (967 Azure DevOps Services actions page). Cache hits, searches, dry runs and calls Azure DevOps Services refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

**Which Azure DevOps Services API does it cover?**

The Azure DevOps Services API 7.1 at dev.azure.com. It is built from Azure DevOps Services's documentation as read on 19 September 2026. 967 actions in 38 areas, each one in the signed service file (version 1.0.0).

**Does actionlake keep my Azure DevOps Services data, and where?**

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to an hour, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your Azure DevOps Services credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

**Which AI clients can use it?**

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

## More connectors like Azure DevOps Services

Shares the most action names with

- [GitLab 168](https://actionlake.com/connectors/gitlab)
- [GitHub 144](https://actionlake.com/connectors/github)
- [Bitbucket Cloud 96](https://actionlake.com/connectors/bitbucket-cloud)
- [Vercel 79](https://actionlake.com/connectors/vercel)
- [Postman 70](https://actionlake.com/connectors/postman)
- [Apple App Store Connect 45](https://actionlake.com/connectors/apple-app-store-connect)

Joins with, on shared entities

- [Gitea 4](https://actionlake.com/connectors/gitea)
- [Forgejo 4](https://actionlake.com/connectors/forgejo)
- [SonarQube Cloud 4](https://actionlake.com/connectors/sonarqube-cloud)
- [JFrog Artifactory 4](https://actionlake.com/connectors/jfrog-artifactory)
- [Sentry 4](https://actionlake.com/connectors/sentry)
- [HaloPSA 3](https://actionlake.com/connectors/halopsa)

Browse

- [All Developer & infrastructure connectors](https://actionlake.com/connectors/category/developer-and-infrastructure)
- [All connectors](https://actionlake.com/connectors)
- [How actionlake compares](https://actionlake.com/compare)

actionlake is independent. It is not made or endorsed by Azure DevOps Services; the name is the vendor's own. Counts are from the Azure DevOps Services service file, version 1.0.0.

## Give your agent Azure DevOps Services today.

[Connect Azure DevOps Services free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.

---

Source: https://actionlake.com/connectors/azure-devops-services
More: https://actionlake.com/llms.txt
