

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 連接 MCP 伺服器
<a name="configuring-capabilities-for-aws-devops-agent-connecting-mcp-servers"></a>

模型內容通訊協定 (MCP) 伺服器透過提供來自外部可觀測性工具、自訂監控系統和操作資料來源的資料存取權，來擴展 AWS DevOps 代理程式的調查功能。本指南說明如何將 MCP 伺服器連線至 AWS DevOps Agent。

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

在連接 MCP 伺服器之前，請確定您的伺服器符合下列要求：
+ **可串流 HTTP 傳輸通訊協定** – 僅支援實作可串流 HTTP 傳輸通訊協定的 MCP 伺服器。
+ **身分驗證支援** – 您的 MCP 伺服器必須支援下列其中一種身分驗證方法：OAuth 2.0 （用戶端登入資料或 3LO)、API 金鑰/以金鑰為基礎的身分驗證，或 AWS Signature 第 4 版 (SigV4)。

## 安全考量
<a name="security-considerations"></a>

將 MCP 伺服器連線至 AWS DevOps 代理程式時，請考慮下列安全層面：
+ **工具允許清單 – ** 您應該只允許列出 Agent Space 所需的特定工具，而不是從 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 代理程式私下向 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 （三引號 OAuth)** – 如果您的 MCP 伺服器使用 OAuth 3LO 進行身分驗證：

1. 選取 **OAuth 3LO**

1. 按一下**下一步**

**API 金鑰** – 如果您的 MCP 伺服器使用 API 金鑰身分驗證：

1. 選取 **API 金鑰**

1. 按一下**下一步**

**AWS SigV4** – 如果您的 MCP 伺服器使用 AWS Signature 第 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 參數** – 輸入 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 代理程式連線至使用 AWS Signature 第 4 版進行請求簽署的 MCP 伺服器。這對於託管於 Amazon API Gateway 的 MCP 伺服器或其他支援 SigV4 身分驗證的 AWS 服務很有用。

**注意：**使用 SigV4 身分驗證的 MCP 伺服器不支援私有連線。您的 MCP 伺服器端點必須可公開存取。如需使用其他身分驗證方法之私有網路上的 MCP 伺服器，請參閱 [連線至私有託管工具](configuring-capabilities-for-aws-devops-agent-connecting-to-privately-hosted-tools.md)。

1. **設定 IAM 角色** – 選擇下列其中一個選項：
   + **使用現有角色** – 從下拉式清單中選取現有的 IAM 角色。角色必須具有信任政策，允許 AWS DevOps Agent 服務主體擔任該角色 （請參閱[建立 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 伺服器之後，您可以設定該伺服器的哪些工具可供特定 Agent Spaces 使用：

1. 在 AWS DevOps 代理程式主控台中，選取您的代理程式空間

1. 前往**功能**索引標籤

1. 在 **MCP 伺服器**區段中，按一下**新增**

1. 選取您要連線至此客服人員空間的已註冊 MCP 伺服器

1. 設定 Agent Space 應可從此 MCP 伺服器使用哪些工具：
   + **允許所有工具** – 讓 MCP 伺服器中的所有工具都可用
   + **選取特定工具** – 可讓您選擇要允許清單的工具

1. 按一下**新增**，將 MCP 伺服器連線至您的客服人員空間

AWS DevOps 代理程式現在可以在此代理程式空間的調查期間，從 MCP 伺服器使用允許清單工具。

## 管理 MCP 伺服器連線
<a name="managing-mcp-server-connections"></a>

**更新身分驗證憑證** – 如果您的身分驗證憑證需要更新，您將需要重新註冊 MCP 伺服器。導覽至 AWS DevOps Agent 主控台中的**功能提供者**頁面，尋找您的 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 代理程式會在您的帳戶中擔任 IAM 角色，以簽署對 MCP 伺服器的請求。此角色必須具有信任政策，允許 AWS DevOps Agent 服務主體 (`aidevops.amazonaws.com`) 以混淆代理人保護來擔任該角色。

### 信任政策
<a name="trust-policy"></a>

使用下列信任政策建立 IAM 角色。將 取代`REGION`為您的 AWS 區域 （例如 `us-east-1`)，並將 取代`ACCOUNT_ID`為您的 AWS 帳戶 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 Agent 服務資源的請求。

### 許可政策
<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 使用非對稱簽署，允許單一簽署的請求跨多個區域有效。

## 相關主題
<a name="related-topics"></a>
+ 安全 in AWS DevOps 代理程式
+ 設定 代理程式空間
+ 提示注入保護