CyberdyneDevelopment.Mc3Po.Protocols.AzureDevOps
0.1.0-preview.6
dotnet add package CyberdyneDevelopment.Mc3Po.Protocols.AzureDevOps --version 0.1.0-preview.6
NuGet\Install-Package CyberdyneDevelopment.Mc3Po.Protocols.AzureDevOps -Version 0.1.0-preview.6
<PackageReference Include="CyberdyneDevelopment.Mc3Po.Protocols.AzureDevOps" Version="0.1.0-preview.6"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> </PackageReference>
<PackageVersion Include="CyberdyneDevelopment.Mc3Po.Protocols.AzureDevOps" Version="0.1.0-preview.6" />
<PackageReference Include="CyberdyneDevelopment.Mc3Po.Protocols.AzureDevOps"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> </PackageReference>
paket add CyberdyneDevelopment.Mc3Po.Protocols.AzureDevOps --version 0.1.0-preview.6
#r "nuget: CyberdyneDevelopment.Mc3Po.Protocols.AzureDevOps, 0.1.0-preview.6"
#:package CyberdyneDevelopment.Mc3Po.Protocols.AzureDevOps@0.1.0-preview.6
#addin nuget:?package=CyberdyneDevelopment.Mc3Po.Protocols.AzureDevOps&version=0.1.0-preview.6&prerelease
#tool nuget:?package=CyberdyneDevelopment.Mc3Po.Protocols.AzureDevOps&version=0.1.0-preview.6&prerelease
Mc3Po.Protocols.AzureDevOps
Azure DevOps protocol implementation for source control (currently) and project management (planned).
Capabilities
| Capability | Supported |
|---|---|
| Project Management | Planned (Work Items) |
| Source Control | Yes (Azure Repos) |
Features
Source Control
- Repositories (list, info)
- Branches (list, create)
- Pull Requests (CRUD, merge)
- Pipelines/Builds (list, status)
- Commits (list)
Project Management (Planned)
- Work Items
- Boards
- Sprints
Configuration
json { "sourceControl": { "type": "AzureDevOps", "organizationUrl": "https://dev.azure.com/my-org", "project": "MyProject", "repository": "MyRepo", "authenticationType": "InteractiveBrowser", "enablePersistentTokenCache": true, "tokenRefreshHours": 24, "apiVersion": "7.0" } }
| Property | Required | Description |
|---|---|---|
type |
Yes | Must be "AzureDevOps" |
organizationUrl |
Yes | Azure DevOps org URL |
project |
Yes | Default project name |
repository |
No | Default repository name |
authenticationType |
No | Auth method (see below, default: PersonalAccessToken) |
secretName |
Conditional | PAT secret name (required for PAT auth) |
tenantId |
No | Azure AD tenant ID (for InteractiveBrowser) |
enablePersistentTokenCache |
No | Persist tokens to disk (default: true) |
tokenRefreshHours |
No | Force token refresh interval (default: 24) |
apiVersion |
No | API version (default: 7.0) |
timeoutSeconds |
No | HTTP timeout (default: 30) |
Authentication
Azure DevOps supports multiple authentication methods via authenticationType:
1. InteractiveBrowser (Recommended for MFA)
Opens a browser for Azure AD authentication. Supports MFA and conditional access policies.
json { "sourceControl": { "type": "AzureDevOps", "organizationUrl": "https://dev.azure.com/my-org", "authenticationType": "InteractiveBrowser", "tenantId": "your-tenant-id", "enablePersistentTokenCache": true, "tokenRefreshHours": 24 } }
Token Caching:
- Tokens are encrypted and persisted using platform credential storage:
- Windows: Windows Credential Manager (DPAPI)
- macOS: Keychain
- Linux: Secret Service API (libsecret)
- Cache name:
mcp-hub-azure-devops - Set
enablePersistentTokenCache: falseto disable persistence - Set
tokenRefreshHours: 0to only refresh on token expiry
2. DefaultAzureCredential (Recommended for CI/CD)
Tries multiple credential sources automatically:
- Azure CLI (
az login) - Visual Studio credentials
- Visual Studio Code credentials
- Azure PowerShell (
Connect-AzAccount) - Managed Identity (in Azure)
- Environment variables
json { "sourceControl": { "type": "AzureDevOps", "organizationUrl": "https://dev.azure.com/my-org", "authenticationType": "DefaultAzureCredential" } }
Note: Token caching is handled by the underlying credential sources (Azure CLI, Visual Studio, etc.).
3. PersonalAccessToken (Legacy)
Uses a PAT with Basic auth. Does not support MFA.
json { "sourceControl": { "type": "AzureDevOps", "organizationUrl": "https://dev.azure.com/my-org", "authenticationType": "PersonalAccessToken", "secretName": "azdo-pat" } }
Required PAT Scopes:
Code (Read & Write)- For repository operationsBuild (Read)- For pipeline status
Token Caching Settings
| Setting | Default | Description |
|---|---|---|
enablePersistentTokenCache |
true |
Persist tokens to disk (encrypted) |
tokenRefreshHours |
24 |
Hours before forcing a token refresh (0 = only on expiry) |
When persistent caching is enabled:
- First authentication opens a browser (InteractiveBrowser)
- Subsequent authentications use the cached token silently
- Tokens are refreshed after
tokenRefreshHoursor when expired
API Reference
Uses Azure DevOps REST API.
Components
AzureDevOpsProtocol- SC implementationAzureDevOpsProtocolConfiguration- Configuration classAzureDevOpsProtocolFactory- Factory for creating instancesAzureDevOpsProtocolType- TypeOption for discoveryAzureDevOpsCredentialProvider- Handles authentication (PAT, Azure.Identity)AzureDevOpsLog- MessageLogging methods
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Azure.Identity (>= 1.13.2)
- CyberdyneDevelopment.Mc3Po.ProjectManagement.Abstractions (>= 0.1.0-preview.6)
- CyberdyneDevelopment.Mc3Po.Protocols (>= 0.1.0-preview.6)
- CyberdyneDevelopment.Mc3Po.SourceControl.Abstractions (>= 0.1.0-preview.6)
- FractalDataWorks.Collections (>= 0.1.0-preview.1)
- FractalDataWorks.Collections.SourceGenerators (>= 0.1.0-preview.1)
- FractalDataWorks.MessageLogging.Abstractions (>= 0.1.0-preview.1)
- FractalDataWorks.MessageLogging.SourceGenerators (>= 0.1.0-preview.1)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.1)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.1)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on CyberdyneDevelopment.Mc3Po.Protocols.AzureDevOps:
| Package | Downloads |
|---|---|
|
CyberdyneDevelopment.DeveloperTools.McpServer
Development tools and utilities for the FractalDataWorks ecosystem. Build: |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.0-preview.6 | 45 | 1/9/2026 |
| 0.1.0-preview.4 | 50 | 1/7/2026 |