Integrations
The server provides tools for interacting with Git repositories in Azure DevOps, including listing repositories, branches, commits, creating pull requests, and more.
Node.js is listed as a prerequisite for running the server, but it's not what the server integrates with.
The MCP server is built with TypeScript, but it doesn't integrate with TypeScript as a service.
Azure DevOps MCP 統合
スターの歴史
モデル コンテキスト プロトコル (MCP) サーバーを通じて作業項目、リポジトリ、プロジェクト、ボード、スプリントへのシームレスなアクセスを提供する、Azure DevOps の強力な統合。
概要
このサーバーは、Azure DevOpsサービスと連携するための便利なAPIを提供し、AIアシスタントやその他のツールが作業項目、コードリポジトリ、ボード、スプリントなどを管理できるようにします。モデルコンテキストプロトコルに基づいて構築されており、Azure DevOpsとの通信のための標準化されたインターフェースを提供します。
デモ
特徴
統合は、次の 8 つの主要なツール カテゴリに分類されます。
作業項目ツール
- WIQLクエリを使用して作業項目を一覧表示する
- IDで作業項目の詳細を取得する
- 作業項目を検索する
- 最近更新された作業項目を取得する
- 割り当てられた作業項目を取得する
- 新しい作業項目を作成する
- 既存の作業項目を更新する
- 作業項目にコメントを追加する
- 作業項目の状態を更新する
- 作業項目の割り当て
- 作業項目間のリンクを作成する
- 作業項目の一括作成/更新
ボードとスプリントツール
- チームボードを取得する
- ボードの列を取得する
- ボードアイテムを取得する
- ボード上のカードを移動する
- スプリントを取得する
- 現在のスプリントを取得する
- スプリントの作業項目を取得する
- スプリント容量を取得する
- チームメンバーを獲得する
プロジェクトツール
- プロジェクトの一覧
- プロジェクトの詳細を取得する
- 新しいプロジェクトを作成する
- エリアを取得
- 反復を取得する
- エリアを作成する
- 反復を作成する
- プロセステンプレートを取得する
- 作業項目の種類を取得する
- 作業項目タイプフィールドを取得する
Gitツール
- リポジトリの一覧
- リポジトリの詳細を取得する
- リポジトリを作成する
- ブランチを一覧表示する
- 検索コード
- リポジトリを閲覧する
- ファイルの内容を取得する
- コミット履歴を取得する
- プルリクエストの一覧
- プルリクエストを作成する
- プルリクエストの詳細を取得する
- プルリクエストのコメントを取得する
- プルリクエストを承認する
- プルリクエストをマージする
テスト機能ツール
- 自動テストを実行する
- テスト自動化ステータスを取得する
- テストエージェントを構成する
- テストデータジェネレータを作成する
- テスト環境を管理する
- テストの不安定性分析を取得する
- テストギャップ分析を取得する
- テスト影響分析を実行する
- テストの健全性ダッシュボードを取得する
- テストの最適化を実行する
- 探索的なセッションを作成する
- 探索的テストの結果を記録する
- 調査結果を作業項目に変換する
- 探索的テスト統計を取得する
DevSecOpsツール
- セキュリティスキャンを実行する
- セキュリティスキャンの結果を取得する
- セキュリティの脆弱性を追跡する
- セキュリティコンプライアンスレポートを生成する
- SARIFの結果を統合する
- コンプライアンスチェックを実行する
- コンプライアンスステータスを取得する
- コンプライアンスレポートを作成する
- セキュリティポリシーを管理する
- セキュリティ意識を追跡
- 秘密をローテーションする
- 秘密の使用を監査する
- ボールト統合を構成する
アーティファクト管理ツール
- アーティファクトフィードの一覧
- パッケージのバージョンを取得する
- パッケージを公開する
- パッケージを宣伝する
- パッケージのバージョンを削除する
- コンテナイメージの一覧表示
- コンテナイメージタグを取得する
- コンテナイメージをスキャンする
- コンテナポリシーを管理する
- ユニバーサルパッケージを管理する
- パッケージダウンロードレポートを作成する
- パッケージの依存関係を確認する
AI支援開発ツール
- AIを活用したコードレビュー
- コードの最適化を提案する
- コードの臭いを特定する
- 予測的なバグ分析を取得する
- 開発者の生産性指標を取得する
- 予測的な労力見積もりを取得する
- コード品質の傾向を把握する
- 作業項目の改善を提案する
- 自動化の機会を提案する
- インテリジェントアラートを作成する
- ビルドの失敗を予測する
- テスト選択の最適化
インストール
Smithery経由でインストール
Smithery経由で Claude Desktop 用の azuredevops-mcp を自動的にインストールするには:
前提条件
- Node.js (v16以降)
- TypeScript (v4以降)
- 個人アクセストークン (PAT) または適切なオンプレミスの資格情報を持つ Azure DevOps アカウント
設定
- リポジトリをクローンします。Copy
- 依存関係をインストールします:Copy
- 環境変数を設定します (
.env
ファイルを作成するか、直接設定します)。Azure DevOps Services (クラウド) の場合:Azure DevOps Server (オンプレミス) の場合:CopyCopy - プロジェクトをビルドします。TypeScript エラーが発生したが、それでも続行したい場合は、次の手順を実行します。CopyCopy
- サーバーを起動します。Copy
構成
個人アクセストークン(PAT)
Azure DevOps Services (クラウド) の場合、適切な権限を持つ個人アクセス トークンを作成する必要があります。
- Azure DevOps組織に移動する
- 右上のプロフィールアイコンをクリックします
- 「個人アクセストークン」を選択
- 「新しいトークン」をクリック
- 名前を付けて適切なスコープを選択します。
- 作業項目: 読み取りと書き込み
- コード: 読み書き
- プロジェクトとチーム:読み書き
- ビルド: 読む
- リリース: 読む
Azure DevOps Server (オンプレミス) の場合、次の 3 つの認証オプションがあります。
- 個人アクセストークン(PAT):
- クラウドのセットアップと同様ですが、オンプレミスのインスタンスにPATを作成します。
AZURE_DEVOPS_AUTH_TYPE=pat
を設定します
- NTLM認証:
- Windowsドメイン資格情報を使用する
AZURE_DEVOPS_AUTH_TYPE=ntlm
設定する- ユーザー名、パスワード、ドメインを入力してください
- 基本認証:
- ローカル認証情報を使用する
AZURE_DEVOPS_AUTH_TYPE=basic
を設定します- ユーザー名とパスワードを入力してください
Azure DevOps Services と Azure DevOps Server の比較
この統合では、クラウド ホストの Azure DevOps サービスとオンプレミスの Azure DevOps サーバーの両方がサポートされます。
Azure DevOps サービス (クラウド)
- 組織の URL と PAT を使用した簡単なセットアップ
- デフォルト構成では次の形式が想定されています:
https://dev.azure.com/your-organization
- 常にPAT認証を使用する
.env.cloud.example
に提供されるサンプル構成ファイル
Azure DevOps サーバー (オンプレミス)
- サーバー URL、収集、認証の追加構成が必要です
- URL の形式はサーバーの設定によって異なります:
https://your-server/tfs
- コレクション名を指定する必要があります
- 複数の認証方法(PAT、NTLM、Basic)をサポート
- 古いバージョンのサーバーでは API バージョンの指定が必要になる場合があります
.env.on-premises.example
に提供されるサンプル構成ファイル
主な違い
特徴 | Azure DevOps サービス | Azure DevOps サーバー |
---|---|---|
URL形式 | https://dev.azure.com/org | https://サーバー/tfs |
コレクション | 不要 | 必須 |
認証方法 | PAT、エントラ ID (DefaultAzureCredential) | PAT、NTLM、基本 |
APIバージョン | 最新(自動) | 仕様が必要な場合があります |
繋がり | 常にインターネット | エアギャップが可能 |
エントラ認証
az cli がインストールされ、認証されていることを確認してください。認証されている限り、azd および AZ Powershell モジュールも動作するはずです。
構成例
.env.cloud.example
または.env.on-premises.example
のいずれかを.env
にコピーし、必要に応じて値を更新します。
環境変数
サーバーは次の環境変数を使用して構成できます。
変数 | 説明 | 必須 | デフォルト |
---|---|---|---|
AZURE_DEVOPS_ORG_URL | Azure DevOps 組織またはサーバーの URL | はい | - |
AZURE_DEVOPS_プロジェクト | 使用するデフォルトのプロジェクト | はい | - |
AZURE_DEVOPS_がオンプレミス | Azure DevOps Serverを使用しているかどうか | いいえ | 間違い |
AZURE_DEVOPS_コレクション | オンプレミスのコレクション名 | いいえ* | - |
AZURE_DEVOPS_API_バージョン | オンプレミスの API バージョン | いいえ | - |
AZURE_DEVOPS_認証タイプ | 認証タイプ(pat/ntlm/basic/entra) | いいえ | パット |
AZURE_DEVOPS_パーソナル_アクセス_トークン | 個人アクセストークン(「pat」認証用) | いいえ** | - |
AZURE_DEVOPS_ユーザー名 | NTLM/Basic認証のユーザー名 | いいえ** | - |
AZURE_DEVOPS_パスワード | NTLM/Basic認証のパスワード | いいえ** | - |
AZURE_DEVOPS_ドメイン | NTLM認証のドメイン | いいえ | - |
許可されたツール | 有効にするツールメソッドのカンマ区切りリスト | いいえ | すべてのツール |
* AZURE_DEVOPS_IS_ON_PREMISES=true
の場合は必須 ** 選択した認証タイプに基づいて必須
ALLOWED_TOOLS によるツールフィルタリング
ALLOWED_TOOLS
環境変数を使用すると、利用可能なツールメソッドを制限できます。これは完全にオプションであり、指定しない場合はすべてのツールが有効になります。
形式: スペースなしのメソッド名のコンマ区切りリスト。
例:
これにより、指定された作業項目メソッドのみが有効になり、他のすべてのメソッドは無効になります。
使用法
サーバーが起動したら、MCPプロトコルを使用してサーバーとやり取りできます。サーバーは、Azure DevOpsのさまざまな機能に対応するツールを公開しています。
利用可能なツール
**注:**初期実装をシンプルにするため、デフォルトではツールのサブセットのみが
index.ts
ファイルに登録されています。追加のツールを登録する方法については、 「ツール登録」セクションをご覧ください。
例: 作業項目の一覧
例: 作業項目を作成する
例: リポジトリの一覧
例: プルリクエストを作成する
建築
プロジェクトは次のように構成されています。
src/
Interfaces/
: パラメータとレスポンスの型定義Services/
: Azure DevOps API と対話するためのサービス クラスTools/
: クライアントに機能を公開するツール実装index.ts
: ツールを登録し、サーバーを起動するメインのエントリポイントconfig.ts
: 構成の処理
サービス層
サービス層は、Azure DevOps API との直接通信を処理します。
WorkItemService
: 作業項目の操作BoardsSprintsService
: ボードとスプリントの操作ProjectService
: プロジェクト管理業務GitService
: Gitリポジトリの操作TestingCapabilitiesService
: テスト機能の操作DevSecOpsService
: DevSecOps オペレーションArtifactManagementService
: アーティファクト管理操作AIAssistedDevelopmentService
:AI支援開発業務
ツールレイヤー
ツール層はサービスをラップし、MCP プロトコルに一貫したインターフェースを提供します。
WorkItemTools
: 作業項目操作用のツールBoardsSprintsTools
: ボードとスプリントの操作のためのツールProjectTools
: プロジェクト管理業務のためのツールGitTools
: Git操作用のツールTestingCapabilitiesTools
: 機能操作をテストするためのツールDevSecOpsTools
: DevSecOps運用のためのツールArtifactManagementTools
: アーティファクト管理操作のためのツールAIAssistedDevelopmentTools
: AI支援開発業務のためのツール
ツール登録
MCPサーバーでは、ツールをindex.ts
ファイルに明示的に登録する必要があります。デフォルトでは、初期実装の管理性を維持するために、利用可能なツールの一部のみが登録されます。
追加のツールを登録するには:
src/index.ts
ファイルを開く- 既存のツールのパターンに従って新しいツール登録を追加する
- サーバーを構築して再起動する
ツール登録に関する包括的なガイドは、リポジトリ内のTOOL_REGISTRATION.md
ファイルにあります。
**注:**ツールを登録する際は、特に列挙型の値については、正しいパラメータ型を使用するように注意してください。Interfaces
Interfaces
の型定義は、各パラメータの期待される型を定義しています。誤った型(例えば、列挙型の値にz.enum()
z.string()
()を使用するなど)を使用すると、ビルド時にTypeScriptエラーが発生します。
新しいツールを登録する例:
トラブルシューティング
よくある問題
認証エラー
- 個人アクセストークンが有効であり、必要な権限を持っていることを確認してください
- 組織のURLが正しいことを確認してください
ビルド中のTypeScriptエラー
- TypeScriptエラーを回避するには、
npm run build:ignore-errors
を使用します。 - 不足している型定義や間違った型定義がないか確認する
ランタイムエラー
- 指定された Azure DevOps プロジェクトが存在し、アクセス可能であることを確認します。
貢献
貢献を歓迎します!貢献方法は次のとおりです。
- リポジトリをフォークする
- 機能ブランチを作成する (
git checkout -b feature/amazing-feature
) - 変更をコミットします (
git commit -m 'Add some amazing feature'
) - ブランチにプッシュする (
git push origin feature/amazing-feature
) - プルリクエストを開く
コードがリンティングに合格し、適切なテストが含まれていることを確認してください。
You must be authenticated.
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
このサーバーは、Azure DevOpsサービスと連携するための便利なAPIを提供し、AIアシスタントやその他のツールが作業項目、コードリポジトリ、ボード、スプリントなどを管理できるようにします。モデルコンテキストプロトコルに基づいて構築されており、Azure DevOpsとの通信のための標準化されたインターフェースを提供します。
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityA Model Context Protocol server that enables AI assistants to interact with Azure DevOps resources including projects, work items, repositories, pull requests, branches, and pipelines through a standardized protocol.Last updated -15602131TypeScriptMIT License
- -securityAlicense-qualityEnables connections to Azure AI Agents within any MCP client, allowing users to leverage Azure AI Foundry's models and knowledge tools like Azure AI Search and Bing Web Grounding through a conversational interface.Last updated -111JavaScriptMIT License
- -securityFlicense-qualityA reference server implementation for the Model Context Protocol that enables AI assistants to interact with Azure DevOps resources and perform operations such as project management, work item tracking, repository operations, and code search programmatically.Last updated -3TypeScript
- AsecurityAlicenseAqualityA Model Context Protocol server that enables AI assistants to interact with Azure DevOps services, allowing users to query work items with plans to support creating/updating items, managing pipelines, handling pull requests, and administering sprints and branch policies.Last updated -916PythonMIT License