Azure Boards

Azure DevOps Marketplace extension.

BranchDeploy / Security

Security and permissions

BranchDeploy is designed to make an existing Azure DevOps deployment workflow easier to trigger, not to bypass your existing controls. The free Azure DevOps extension workflow queues your configured Azure Pipeline as the current Azure DevOps user. If a user cannot queue the pipeline manually, BranchDeploy cannot queue it for them.

Summary

Area Free extension workflow Pro cloud / Teams / MCP
Account required No BranchDeploy account required BranchDeploy account / licence required
Pipeline queueing Current Azure DevOps user Depends on configured Pro / Teams connection
Secrets None for core workflow Teams PAT encrypted at rest; MCP API keys generated per account
Audit log Not included 90-day deployment audit log
Environments 1 Unlimited
Projects 1 Unlimited

Free extension workflow

The core BranchDeploy feature is a Visual Studio Marketplace extension that adds a deploy action to Azure Boards work items. This workflow:

A project admin must configure BranchDeploy in Project Settings → BranchDeploy before any deployments can be queued. Unconfigured projects cannot deploy.

Pro cloud, Teams, and MCP features

Pro features extend BranchDeploy beyond the core extension and involve a BranchDeploy-hosted backend, account, and licence. Pro features include:

Azure DevOps permissions

BranchDeploy does not grant, elevate, or bypass Azure DevOps permissions. It queues pipelines as the authenticated user in the context of the extension.

For a user to deploy with BranchDeploy, they need:

Pipeline-level branch filters configured in your YAML or pipeline settings are respected when BranchDeploy queues a run. BranchDeploy cannot override those filters.

Pipeline queueing

BranchDeploy queues your configured Azure Pipeline by calling the Azure DevOps API on behalf of the current user. The pipeline run is created with the resolved branch as the source branch. BranchDeploy passes optional parameters (environment name, work item ID) with configurable parameter names.

BranchDeploy does not modify your pipeline definition, YAML, or repository. It only triggers a run of an existing pipeline.

Branch allowlists

BranchDeploy supports branch allowlists using glob patterns. Allowlists restrict which branches can be deployed to a given environment before the pipeline is queued.

If the resolved branch does not match the configured allowlist patterns, BranchDeploy blocks the deployment and shows an error — the pipeline is never called.

Example patterns:

feature/*
bugfix/*
hotfix/*
release/*
users/*/*

The free tier supports one branch allowlist for the single configured environment. Pro adds per-environment allowlists.

Confirmation step

Every deployment through BranchDeploy requires an explicit confirmation step. The user sees:

There is no way to skip or auto-approve the confirmation step. The pipeline is only queued after the user clicks Deploy.

Data handling

Free extension workflow

The free extension reads work item data via the Azure DevOps extension SDK within the browser session. No work item data, branch names, or pipeline information is sent to a BranchDeploy-hosted backend during the core deploy action. The extension operates entirely within your Azure DevOps session.

Pro account and cloud features

When you create a BranchDeploy account to access Pro features, your account data (email address, Azure DevOps organisation name, billing status) is stored in the BranchDeploy backend. The deployment audit log stores a record of each queued pipeline run (work item ID, branch, environment, timestamp, and outcome) for 90 days.

Teams bot credentials

Pro Teams setup may require a personal access token (PAT) to connect BranchDeploy to your Azure DevOps organisation for bot-triggered deployments. PATs are encrypted at rest. You can revoke and replace a PAT from your account settings at any time.

MCP API keys

MCP API keys are generated in your BranchDeploy account and used to authenticate requests from AI assistants (Claude, Cursor, or any MCP-compatible client). Keys are hashed before storage. You can revoke an MCP key from your account at any time.

Audit log

BranchDeploy Pro stores a 90-day deployment audit log in the BranchDeploy backend. Each log entry records:

The free tier does not include an audit log.

Frequently asked questions

What permissions does a user need?

The user must have permission to queue the configured pipeline. BranchDeploy queues the pipeline as the current Azure DevOps user and cannot bypass permissions the user does not already have.

Does BranchDeploy bypass Azure DevOps permissions?

No. BranchDeploy queues your existing Azure Pipeline as the current Azure DevOps user and respects existing Azure DevOps permissions. If a user cannot queue the pipeline manually, BranchDeploy cannot queue it for them.

What happens if the pipeline blocks a branch?

Pipeline branch filters are respected by Azure Pipelines when the run is queued. BranchDeploy also supports branch allowlists that block deploys before the pipeline is called if the resolved branch does not match the expected pattern.

What data does the free workflow use?

The free extension workflow reads work item development links, queues the configured pipeline, and returns the run ID. No work item data is sent to a BranchDeploy backend for the core deploy action. No BranchDeploy account is required.

What changes in Pro?

Pro adds cloud features (audit log, Teams bot, MCP) that require a BranchDeploy account and backend. Deployment records are stored in the audit log. Teams bot and MCP use credentials stored by BranchDeploy (PAT encrypted at rest, MCP key hashed).

How are Teams credentials handled?

Pro Teams setup may require a personal access token (PAT) to connect BranchDeploy to your Azure DevOps organisation. PATs are encrypted at rest. You can revoke and replace a PAT from your account settings at any time.

How are MCP API keys handled?

MCP API keys are generated in your BranchDeploy account and used to authenticate AI assistant requests. Keys are hashed before storage. You can revoke an MCP key from your account at any time.

Can an admin restrict allowed branches?

Yes. BranchDeploy supports branch allowlists using glob patterns. The free tier allows one allowlist for the single configured environment. Pro adds per-environment allowlists.

Install Free forever for one project.

Ready to ship?

Install the Marketplace extension, add your pipeline ID, and deploy from a work item in minutes.

$ az devops extension install --name branchdeploy
Install free ↗
Requirements
  • Azure Repos + Azure Pipelines.
  • Permission to queue the pipeline.
  • No BranchDeploy account needed (Free).
Setup
  • Install the extension.
  • Open Project Settings → BranchDeploy.
  • Enter your pipeline ID and save.
Free tier
  • One project, one environment.
  • Queues as your Azure DevOps session.
  • Completely free, forever.
Pro
BranchDeploy // © 2026 Pixel Funnel Ltd ↗ // Azure DevOps Marketplace extension // No clipboard. No tab switching. No branch-name guesswork.