

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# MCP サーバーの接続
<a name="configuring-capabilities-for-aws-devops-agent-connecting-mcp-servers"></a>

Model Context Protocol (MCP) サーバーは、外部オブザーバビリティツール、カスタムモニタリングシステム、運用データソースからのデータへのアクセスを提供することで、 AWS DevOps Agent の調査機能を拡張します。このガイドでは、MCP サーバーを AWS DevOps エージェントに接続する方法について説明します。

## 要件
<a name="requirements"></a>

MCP サーバーを接続する前に、サーバーが次の要件を満たしていることを確認してください。
+ **ストリーミング可能な HTTP トランスポートプロトコル** – ストリーミング可能な HTTP トランスポートプロトコルを実装する MCP サーバーのみがサポートされています。
+ **認証のサポート** – MCP サーバーは、OAuth 2.0 (クライアント認証情報または 3LO)、API キー/トークンベースの認証、または AWS 署名バージョン 4 (SigV4) のいずれかの認証方法をサポートする必要があります。

## セキュリティに関する考慮事項
<a name="security-considerations"></a>

MCP サーバーを AWS DevOps エージェントに接続するときは、次のセキュリティ面を考慮してください。
+ **ツールの許可リスト – ** MCP サーバーからすべてのツールを公開するのではなく、エージェントスペースに必要な特定のツールのみを許可リストに登録する必要があります。[エージェントスペースごとにリストツールを許可する方法については、「エージェントスペースでの MCP ツールの設定](#configuring-capabilities-for-aws-devops-agent-connecting-mcp-servers)」を参照してください。

MCP ツールの最大長は 64 です。
+ **プロンプトインジェクションリスク** – カスタム MCP サーバーは、プロンプトインジェクション攻撃のリスクを高める可能性があります。詳細については、[「プロンプトインジェクション保護: AWS DevOps エージェントセキュリティ](aws-devops-agent-security.md)」を参照してください。
+ **読み取り専用ツールとアクセス –** 読み取り専用 MCP ツールのみを許可リストに登録し、認証情報が読み取り専用アクセスのみを許可されていることを確認します。

プロンプトインジェクションと責任共有モデルの詳細については、[AWS DevOps エージェントセキュリティ](aws-devops-agent-security.md)「」を参照してください。

**注記**  
MCP サーバーがプライベートネットワーク上にある場合は、「」を参照してください。 [プライベートにホストされたツールへの接続](configuring-capabilities-for-aws-devops-agent-connecting-to-privately-hosted-tools.md)

## MCP サーバーの登録 (アカウントレベル)
<a name="registering-an-mcp-server-account-level"></a>

MCP サーバーは AWS アカウントレベルで登録され、そのアカウントのすべてのエージェントスペース間で共有されます。個々のエージェントスペースは、各 MCP サーバーから必要な特定のツールを選択できます。

### ステップ 1: MCP サーバーの詳細
<a name="step-1-mcp-server-details"></a>

1.  AWS マネジメントコンソールにサインインする

1.  AWS DevOps エージェントコンソールに移動する

1. **機能プロバイダー**ページに移動する (サイドナビゲーションからアクセス可能)

1. **利用可能な**プロバイダーセクションで **MCP サーバー**を検索し、**登録**をクリックします

1. **MCP サーバーの詳細**ページで、次の情報を入力します。
   + **名前** – MCP サーバーのわかりやすい名前を入力します。
   + **エンドポイント URL** – MCP サーバーエンドポイントの完全な HTTPS URL を入力します。
   + **説明** (オプション) – サーバーの目的を特定するのに役立つ説明を追加します。
   + **動的クライアント登録を有効にする** – AWS DevOps エージェントが MCP サーバーの認可サーバーに自動的に登録できるようにする場合は、このチェックボックスをオンにします。
   + **プライベート接続を使用してエンドポイントに接続する** – AWS DevOps Agent が MCP サーバーにプライベートにリクエストを行う場合は、このチェックボックスをオンにします。既存のプライベート接続を選択するか、新しいプライベート接続を作成できます。OAuth 認証を使用する場合、プライベート接続は MCP サーバーエンドポイントとトークン交換エンドポイントの両方に適用されます。プライベート接続に、両方のエンドポイントにトラフィックをルーティングできるホストアドレスが設定されていることを確認します。詳細については、「[プライベートにホストされたツールへの接続](configuring-capabilities-for-aws-devops-agent-connecting-to-privately-hosted-tools.md)」を参照してください。

1. **[次へ]** をクリックします。

**注記**  
** MCP サーバーエンドポイント URL は、アカウントの AWS CloudTrail ログに表示されます。

### ステップ 2: 認可フロー
<a name="step-2-authorization-flow"></a>

MCP サーバーの認証方法を選択します。

**OAuth クライアント認証情報** – MCP サーバーが OAuth クライアント認証情報フローを使用している場合:

1. **OAuth クライアント認証情報**の選択

1. **[次へ]** をクリックします。

**OAuth 3LO (Three-Legged OAuth)** – MCP サーバーが認証に OAuth 3LO を使用している場合:

1. **OAuth 3LO **を選択する

1. **[次へ]** をクリックします。

**API キー** – MCP サーバーが API キー認証を使用する場合:

1. **API キー**を選択する

1. **[次へ]** をクリックします。

**AWS SigV4** – MCP サーバーが AWS 署名バージョン 4 認証を使用している場合:

1. **AWS SigV4** を選択する

1. **[次へ]** をクリックします。

### ステップ 3: 認可設定
<a name="step-3-authorization-configuration"></a>

選択した認証方法に基づいて追加の認可パラメータを設定します。

**OAuth クライアント認証情報の場合:**

1. **クライアント ID** – OAuth クライアントのクライアント ID を入力します。

1. **クライアントシークレット** – OAuth クライアントのクライアントシークレットを入力します。

1. **Exchange URL** – OAuth トークン交換エンドポイント URL を入力します。

1. **Exchange Parameters** – サービスで認証するための OAuth トークン交換パラメータを入力します。

1. **スコープの追加** – 認証用の OAuth スコープの追加

1. **[次へ]** をクリックします。

**OAuth 3LO の場合:**

1. **クライアント ID** – OAuth クライアントのクライアント ID を入力します。

1. **クライアントシーク**レット – OAuth クライアントで必要な場合は、OAuth クライアントのクライアントシークレットを入力します。

1. **Exchange URL** – OAuth トークン交換エンドポイント URL を入力します。

1. **認可 URL ** - OAuth 認可エンドポイント URL を入力します

1. **コードチャレンジのサポート ** - OAuth クライアントがコードチャレンジをサポートしている場合は、このチェックボックスをオンにします

1. **スコープの追加** – 認証用の OAuth スコープの追加

1. **[次へ]** をクリックします。

**API キーの場合:**

1. API キー名を入力する

1. リクエストに API キーを含むヘッダーの名前を入力します。

1. API キーの値を入力する

1. **[次へ]** をクリックします。

**For AWS SigV4:**

AWS SigV4 認証により、 AWS DevOps Agent は AWS 署名バージョン 4 を使用してリクエスト署名を行う MCP サーバーに接続できます。これは、Amazon API Gateway または SigV4 認証をサポートする他の AWS サービスでホストされている MCP サーバーに役立ちます。

**注:** SigV4 認証を使用する MCP サーバーでは、プライベート接続はサポートされていません。MCP サーバーエンドポイントはパブリックにアクセス可能である必要があります。他の認証方法を使用するプライベートネットワーク上の MCP サーバーについては、「」を参照してください[プライベートにホストされたツールへの接続](configuring-capabilities-for-aws-devops-agent-connecting-to-privately-hosted-tools.md)。

1. **IAM ロールの設定** – 次のいずれかのオプションを選択します。
   + **既存のロールを使用する** – ドロップダウンから既存の IAM ロールを選択します。ロールには、 AWS DevOps エージェントサービスプリンシパルがロールを引き受けることを許可する信頼ポリシーが必要です ([SigV4認証用の IAM ロールの作成](#configuring-capabilities-for-aws-devops-agent-connecting-mcp-servers)」を参照）。
   + **新しいロールを手動で作成する** – コンソールに表示されるstep-by-step手順に従って、正しい信頼ポリシーを持つ新しい IAM ロールを作成します。

1. **AWS リージョン** – SigV4 署名の AWS リージョンを入力します (例: `us-east-1`)。SigV4a マルチリージョン署名を使用するには、 と入力します`*`。

1. **サービス名** – SigV4 署名 AWS のサービス名を入力します (`execute-api`API Gateway の場合など）。

1. **カスタムヘッダー** (オプション) – 署名付きリクエストごとに最大 10 個のカスタムキーと値のヘッダーペアを追加します。

1. **[次へ]** をクリックします。

### ステップ 4: 確認して送信する
<a name="step-4-review-and-submit"></a>

1. すべての MCP サーバー設定の詳細を確認する

1. **送信**をクリックして登録を完了します

1. AWS DevOps エージェントは MCP サーバーへの接続を検証します

1. 検証が成功すると、MCP サーバーはアカウントレベルで登録されます。

## エージェントスペースでの MCP ツールの設定
<a name="configuring-mcp-tools-in-an-agent-space"></a>

アカウントレベルで MCP サーバーを登録したら、そのサーバーから特定のエージェントスペースで使用できるツールを設定できます。

1.  AWS DevOps エージェントコンソールで、エージェントスペースを選択します。

1. **機能**タブに移動する

1. **MCP サーバー**セクションで、**追加**

1. このエージェントスペースに接続する登録済み MCP サーバーを選択します。

1. エージェントスペースで使用できるように、この MCP サーバーのツールを設定します。
   + **すべてのツールを許可する** – MCP サーバーからすべてのツールを使用できるようにします
   + **特定のツールの選択** – 許可リストを作成するツールを選択できます。

1. **追加**をクリックして、MCP サーバーをエージェントスペースに接続します。

AWS DevOps Agent は、このエージェントスペースでの調査中に MCP サーバーから許可リストに登録されたツールを使用できるようになりました。

## MCP サーバー接続の管理
<a name="managing-mcp-server-connections"></a>

**認証情報の更新** – 認証情報を更新する必要がある場合は、MCP サーバーを再登録する必要があります。 AWS DevOps Agent コンソールの **Capability Providers** ページに移動し、MCP サーバーを見つけてアクティブな関連付けを削除し、**登録解除**をクリックします。次に、新しい認証情報で MCP サーバー**を登録**し、エージェントスペースと必要な関連付けを再作成します。

**接続された MCP サーバーの表示** – エージェントスペースに接続されているすべての MCP サーバーを表示するには、エージェントスペースを選択し、**機能**タブに移動して **MCP サーバー**セクションを確認します。選択したツールをここで更新することもできます。

**MCP サーバー接続の削除** – MCP サーバーをエージェントスペースから切断するには、MCP サーバーセクションで**サーバー**を選択し、**削除**をクリックします。MCP サーバー登録を完全に削除するには、まずすべてのエージェントスペースから削除してから、アカウントレベルの登録を削除します。

## SigV4 認証用の IAM ロールの作成
<a name="creating-an-iam-role-for-sigv4-authentication"></a>

 AWS SigV4 認証を使用する場合、 AWS DevOps Agent はアカウントの IAM ロールを引き受けて MCP サーバーへのリクエストに署名します。このロールには、DevOps AWS DevOps エージェントサービスプリンシパル (`aidevops.amazonaws.com`) が混乱した代理保護で引き受けることを許可する信頼ポリシーが必要です。

### 信頼ポリシー
<a name="trust-policy"></a>

次の信頼ポリシーを使用して IAM ロールを作成します。を AWS リージョン ( など`us-east-1`) `REGION`に、 を AWS アカウント ID `ACCOUNT_ID`に置き換えます。

```
{
  "Version": "2012-10-17",		 	 	 		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "aidevops.amazonaws.com"
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "StringEquals": {
          "aws:SourceAccount": "ACCOUNT_ID"
        },
        "ArnLike": {
          "aws:SourceArn": "arn:aws:aidevops:REGION:ACCOUNT_ID:service/*"
        }
      }
    }
  ]
}
```

信頼ポリシーには、[混乱した代理問題](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html)を防ぐための以下の条件が含まれています。
+ `aws:SourceAccount` – ロールの引き受けを AWS 、アカウントから発信されるリクエストに制限します。
+ `aws:SourceArn` – アカウントの AWS DevOps エージェントサービスリソースから送信されるリクエストにロールの引き受けを制限します。

### アクセス許可ポリシー
<a name="permissions-policy"></a>

MCP サーバーの呼び出しに必要な最小限のアクセス許可を付与するアクセス許可ポリシーをロールにアタッチします。例えば、MCP サーバーが Amazon API Gateway の背後でホストされている場合、ロールには API Gateway リソースに対する`execute-api:Invoke`アクセス許可が必要です。

### マルチリージョン署名 (SigV4a)
<a name="multi-region-signing-sigv4a"></a>

MCP サーバーが複数の AWS リージョンにデプロイされている場合は、[SigV4a (署名バージョン 4a) ](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html)を使用してマルチリージョン署名を行うことができます。これを有効にするには、SigV4 認可を設定するときに AWS リージョン`*`として を入力します。SigV4a は非対称署名を使用します。これにより、1 つの署名付きリクエストを複数のリージョンで有効にできます。

## 関連トピック
<a name="related-topics"></a>
+  AWS DevOps エージェントのセキュリティ
+ エージェントスペースのセットアップ
+ プロンプトインジェクション保護