

 AWS パートナーセントラル API リファレンスが再構築されました。サポートされている API オペレーションの詳細については、 [AWS パートナーセントラル API リファレンス](https://docs.aws.amazon.com/partner-central/latest/APIReference/Welcome.html)を参照してください。

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

# Partner Central Agent MCP サーバーの開始方法
<a name="mcp-getting-started"></a>

このガイドでは、カスタム MCP クライアントを使用して Partner Central Agent MCP Server へのプログラムによるアクセスを設定する方法について説明します。サーバーは SigV4 認証で直接 HTTPS を使用します。プロキシや IDE プラグインは必要ありません。

## 前提条件
<a name="mcp-prerequisites"></a>

開始する前に、以下の準備が整っていることを確認します。
+ アクティブな Partner Central アカウント (AWSコンソールに移行)
+ Partner Central の IAM アクセス許可を持つAWSアカウント
+ AWS CLI がインストールされ、認証情報で設定されている
+ us-east-1 (バージニア北部) リージョンへのアクセス
+ への HTTPS 接続 `partnercentral-agents-mcp.us-east-1.api.aws`
+ HTTP クライアントでの TLS 1.2 以降のサポート
+ JSON-RPC 2.0 および SigV4 リクエスト署名をサポートする MCP 互換クライアント

## ステップ 1: IAM アクセス許可を設定する
<a name="mcp-step1-iam"></a>

Partner Central エージェント MCP サーバーには、プロトコルアクセス (MCP エンドポイントと通信するため) とデータアクセス (Partner Central オペレーションを実行するため) の 2 つのレベルで IAM アクセス許可が必要です。

### IAM ポリシーのアタッチ
<a name="mcp-attaching-iam-policies"></a>

AWSマネジメントコンソールを使用して IAM ID にポリシーをアタッチするには:

1. [[IAM コンソール]](https://console.aws.amazon.com/iam/) を開きます。

1. 左側のナビゲーションペインで、ポリシーをアタッチするアイデンティティに応じて**ユーザー**、**ユーザーグループ**、または**ロール**を選択し、特定のユーザー、グループ、またはロールの名前を選択します。

1. **[アクセス許可]** タブを選択します。

1. **ポリシーをアタッチ**する (または、初めてアクセス**許可を追加する**) を選択します。

1. ポリシーリストで、アタッチする管理ポリシー (以下の JSON ブロックから作成したカスタムポリシーなど) を検索して選択します。

1. 確認するには**、ポリシーのアタッチ** (または**次**へ、アクセス**許可の追加**) を選択します。

アクセス許可はすぐに有効になります。同じ ID に複数のポリシーをアタッチできます。

### 推奨: 管理ポリシーを使用する
<a name="mcp-managed-policy"></a>

MCP プロトコルアクセスを許可する最も簡単な方法は、`AWSMcpServiceActionsFullAccess`マネージドポリシーを IAM アイデンティティにアタッチすることです。このポリシーには、MCP サーバーとやり取りするために必要なすべてのアクセス許可が含まれます。

きめ細かな制御のために、IAM ポリシーの `aws:IsMcpServiceAction`条件キーを使用して、特に MCP サービスアクションに対するアクセス許可の範囲を設定できます。

### MCP プロトコルアクセスの最小アクセス許可
<a name="mcp-minimum-permissions"></a>

少なくとも、IAM ID が MCP サーバーとやり取りするには、このアクションが必要です。


| [アクション] | 説明 | 
| --- | --- | 
| partnercentral:UseSession | 会話セッションを作成、更新、取得するために必要です | 

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "partnercentral:UseSession"
            ],
            "Resource": "*",
			"Condition": {
                "Bool": {
                    "aws:IsMcpServiceAction": "true"
                }
            }
        }
    ]
	

}
```

### データアクセス許可
<a name="mcp-data-access-permissions"></a>

エージェントを使用して Partner Central オペレーションを実際に実行するには、ユースケースに基づいて追加のアクセス許可が必要です。

**オポチュニティ管理:**

```
{
    "Effect": "Allow",
    "Action": [
        "partnercentral:List*",
        "partnercentral:Get*",
        "partnercentral:CreateOpportunity",
        "partnercentral:UpdateOpportunity",
        "partnercentral:SubmitOpportunity",
        "partnercentral:AssignOpportunity",
        "partnercentral:AssociateOpportunity",
        "partnercentral:DisassociateOpportunity"
    ],
    "Resource": "*"
}
```

**資金プログラム:**

```
{
    "Effect": "Allow",
    "Action": [
        "partnercentral:ListBenefitAllocations",
        "partnercentral:ListBenefitApplications",
        "partnercentral:CreateBenefitApplication",
        "partnercentral:GetBenefitApplication",
        "partnercentral:UpdateBenefitApplication",
        "partnercentral:SubmitBenefitApplication",
        "partnercentral:AmendBenefitApplication",
        "partnercentral:CancelBenefitApplication",
        "partnercentral:RecallBenefitApplication",
        "partnercentral:AssociateBenefitApplicationResource",
        "partnercentral:DisassociateBenefitApplicationResource"
    ],
    "Resource": "*"
}
```

**Marketplace アクセス:**

```
{
    "Effect": "Allow",
    "Action": [
        "aws-marketplace:DescribeEntity",
        "aws-marketplace:DescribeAgreement",
        "aws-marketplace:SearchAgreements",
        "aws-marketplace:ListEntities"
    ],
    "Resource": "*"
}
```

**Partner Central オンボーディング:**

```
{
    "Effect": "Allow",
    "Action": [
        "partnercentral:ListPartners",
        "partnercentral:GetPartner",
        "partnercentral:GetProfileVisibility",
        "partnercentral:GetAllianceLeadContact",
        "partnercentral:GetProfileUpdateTask",
        "partnercentral:StartProfileUpdateTask",
        "partnercentral:CancelProfileUpdateTask",
        "partnercentral:PutProfileVisibility",
        "partnercentral:PutAllianceLeadContact",
        "partnercentral:SendEmailVerificationCode",
        "partnercentral:AssociateAwsTrainingCertificationEmailDomain",
        "partnercentral:DisassociateAwsTrainingCertificationEmailDomain",
        "partnercentral:GetAccountConnections",
        "partnercentral:GetConnectionInvitations",
        "partnercentral:CreateConnectionInvitation",
        "partnercentral:CancelConnectionInvitation",
        "partnercentral:RespondConnectionInvitation",
        "partnercentral:CancelConnection",
        "partnercentral:ManageConnectionPreferences"
    ],
    "Resource": "*"
}
```

Marketplace 販売者のセットアップでは、以下も追加します。

```
{
    "Effect": "Allow",
    "Action": [
        "aws-marketplace:ListEntities",
        "aws-marketplace:DescribeEntity",
        "aws-marketplace:DescribeChangeSet",
        "aws-marketplace:StartChangeSet"
    ],
    "Resource": "*"
}
```

サービスにリンクされたロール管理 (再販認可/CPPO) の場合:

```
{
    "Effect": "Allow",
    "Action": [
        "iam:GetRole",
        "iam:CreateServiceLinkedRole"
    ],
    "Resource": "*"
}
```

### フルアクセスポリシー
<a name="mcp-full-access-policy"></a>

開発とテストでは、すべてのアクセス許可を 1 つのポリシーにまとめることができます。

```
aws iam create-policy \
    --policy-name PartnerCentralAgentsFullAccess \
    --policy-document '{
        "Version": "2012-10-17",		 	 	 
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "partnercentral:UseSession",
                    "partnercentral:List*",
                    "partnercentral:Get*",
                    "partnercentral:CreateOpportunity",
                    "partnercentral:UpdateOpportunity",
                    "partnercentral:SubmitOpportunity",
                    "partnercentral:AssignOpportunity",
                    "partnercentral:AssociateOpportunity",
                    "partnercentral:DisassociateOpportunity",
                    "partnercentral:CreateResourceSnapshot",
                    "partnercentral:CreateResourceSnapshotJob",
                    "partnercentral:StartResourceSnapshotJob",
                    "partnercentral:CreateEngagement",
                    "partnercentral:CreateEngagementInvitation",
                    "partnercentral:RejectEngagementInvitation",
                    "partnercentral:StartEngagementByAcceptingInvitationTask",
                    "partnercentral:StartEngagementFromOpportunityTask",
                    "partnercentral:CreateBenefitApplication",
                    "partnercentral:UpdateBenefitApplication",
                    "partnercentral:SubmitBenefitApplication",
                    "partnercentral:AmendBenefitApplication",
                    "partnercentral:CancelBenefitApplication",
                    "partnercentral:RecallBenefitApplication",
                    "partnercentral:AssociateBenefitApplicationResource",
                    "partnercentral:DisassociateBenefitApplicationResource",
                    "partnercentral:ListPartners",
                    "partnercentral:StartProfileUpdateTask",
                    "partnercentral:CancelProfileUpdateTask",
                    "partnercentral:PutProfileVisibility",
                    "partnercentral:PutAllianceLeadContact",
                    "partnercentral:SendEmailVerificationCode",
                    "partnercentral:AssociateAwsTrainingCertificationEmailDomain",
                    "partnercentral:DisassociateAwsTrainingCertificationEmailDomain",
                    "partnercentral:CreateConnectionInvitation",
                    "partnercentral:CancelConnectionInvitation",
                    "partnercentral:RespondConnectionInvitation",
                    "partnercentral:CancelConnection",
                    "partnercentral:ManageConnectionPreferences"
                ],
                "Resource": "*"
            },
            {
                "Effect": "Allow",
                "Action": [
                    "aws-marketplace:DescribeEntity",
                    "aws-marketplace:DescribeAgreement",
                    "aws-marketplace:SearchAgreements",
                    "aws-marketplace:ListEntities",
                    "aws-marketplace:DescribeChangeSet",
                    "aws-marketplace:StartChangeSet"
                ],
                "Resource": "*"
            },
            {
                "Effect": "Allow",
                "Action": [
                    "iam:GetRole",
                    "iam:CreateServiceLinkedRole"
                ],
                "Resource": "*"
            }
        ]
    }'
```

### 読み取り専用ポリシー
<a name="mcp-read-only-policy"></a>

本番環境または読み取り専用のユースケースでは、読み取りオペレーションへのアクセス許可を制限します。

```
aws iam create-policy \
    --policy-name PartnerCentralAgentReadOnly \
    --policy-document '{
        "Version": "2012-10-17",		 	 	 
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "partnercentral:UseSession",
                    "partnercentral:List*",
                    "partnercentral:Get*",
                    "partnercentral:ListPartners",
                    "partnercentral:GetPartner",
                    "partnercentral:GetProfileVisibility",
                    "partnercentral:GetAllianceLeadContact",
                    "partnercentral:GetProfileUpdateTask",
                    "partnercentral:GetAccountConnections",
                    "partnercentral:GetConnectionInvitations"
                ],
                "Resource": "*"
            },
            {
                "Effect": "Allow",
                "Action": [
                    "aws-marketplace:DescribeEntity",
                    "aws-marketplace:DescribeAgreement",
                    "aws-marketplace:SearchAgreements",
                    "aws-marketplace:ListEntities",
                    "aws-marketplace:DescribeChangeSet"
                ],
                "Resource": "*"
            },
            {
                "Effect": "Allow",
                "Action": [
                    "iam:GetRole"
                ],
                "Resource": "*"
            }
        ]
    }'
```

## ステップ 2: MCP クライアントを接続する
<a name="mcp-step2-connect"></a>

Partner Central Agent MCP Server は、SigV4 リクエスト署名で直接 HTTPS を使用します。プロキシレイヤーはありません。MCP クライアントは JSON-RPC 2.0 リクエストをエンドポイントに直接送信します。

### Endpoint
<a name="mcp-endpoint"></a>

```
https://partnercentral-agents-mcp.us-east-1.api.aws/mcp
```

### 認証
<a name="mcp-authentication"></a>

すべてのリクエストは、以下を使用して[AWS署名バージョン 4 ](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html)で署名する必要があります。
+ サービス名: `partnercentral-agents-mcp`
+ リージョン : `us-east-1`

### MCP 接続を初期化する
<a name="mcp-initialize-connection"></a>

リクエストを送信`initialize`してプロトコルを確立します。

```
{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "initialize",
    "params": {
        "protocolVersion": "2025-03-26",
        "capabilities": {},
        "clientInfo": {
            "name": "my-partner-client",
            "version": "1.0.0"
        }
    }
}
```

予想されるレスポンス

```
{
    "jsonrpc": "2.0",
    "id": 1,
    "result": {
        "protocolVersion": "2025-03-26",
        "capabilities": {
            "tools": {
                "listChanged": false
            }
        },
        "serverInfo": {
            "name": "PartnerCentralAgentMCPServer",
            "version": "1.0.0"
        }
    }
}
```

### 使用可能なツールを一覧表示する
<a name="mcp-list-tools"></a>

```
{
    "jsonrpc": "2.0",
    "id": 2,
    "method": "tools/list",
    "params": {}
}
```

## MCP ヘッダーを使用した通話の署名
<a name="mcp-signing-calls-header"></a>

Partner Central エージェント MCP にリクエストを行うときは、次の方法を使用してカスタム MCP ヘッダーを含めることをお勧めします。これは、クライアントアプリケーションのソースAWSの特定、使用状況のモニタリング、パフォーマンスの監査に役立ちます。 はこのヘッダーAWSを使用して、呼び出しを行うクライアントアプリケーションのタイプを区別し、さまざまなクライアント実装の成功率に関するインサイトを収集します。

### 方法 1: \_meta フィールド (プログラム/ステートレス MCP)
<a name="mcp-header-meta-field"></a>

MCP `tools/call`リクエストを直接構築するコードの場合は、リクエストの `_meta`フィールドを指定します。

```
{
    "method": "tools/call",
    "params": {
        "name": "sendMessage",
        "arguments": {
            "content": [
                {
                    "type": "text",
                    "text": "List my open opportunities with expected close date in Q1 2026"
                }
            ],
            "catalog": "AWS"
        },
        "_meta": {
            "integrator": "<Integrator's Company Name / Direct>",
            "sourceProduct": "<Integrator's Application Name>"
        }
    }
}
```

### 方法 2: clientInfo (セッションベースのカスタムエージェント)
<a name="mcp-header-client-info"></a>

セッションを確立するカスタム MCP クライアントの場合は、 `clientInfo`フィールド内に MCP ヘッダー情報を指定します。

```
{
    "method": "initialize",
    "params": {
        "protocolVersion": "2024-11-05",
        "clientInfo": {
            "integrator": "<Integrator's Company Name / Direct>",
            "sourceProduct": "<Integrator's Application Name>"
        }
    }
}
```

のフィールド`clientInfo`:
+ `integrator` — パートナーの会社名または「Direct」

  例: `AWS`
+ `sourceProduct` — 製品/エージェント名

  例: `AWS CRM Connector`

### 方法 3: URL パラメータ (ホストされた MCP のみ)
<a name="mcp-header-url-parameter"></a>

インテグレーターがプロトコルフィールドを変更できないホストされた MCP クライアントのみ。URL パラメータを使用します。

サーバー URL: `https://mcp.partnercentral.aws?appId=<Integrator's Company Name / Direct>`

## ステップ 3: セットアップを確認する
<a name="mcp-step3-verify"></a>

簡単なメッセージを送信して、すべてが機能していることを確認します。`Sandbox` カタログをテストに使用します。

```
{
    "jsonrpc": "2.0",
    "id": 3,
    "method": "tools/call",
    "params": {
        "name": "sendMessage",
        "arguments": {
            "content": [
                {
                    "type": "text",
                    "text": "Hello, what can you help me with?"
                }
            ],
            "catalog": "Sandbox"
        }
    }
}
```

`"status": "complete"` とエージェントからのテキスト返信を受信した場合、セットアップは正常に動作しています。レスポンスには、フォローアップメッセージ`sessionId`に使用できる も含まれます。

## ステップ 4: 最初のタスクを実行する
<a name="mcp-step4-tasks"></a>

### オポチュニティをクエリする
<a name="mcp-query-opportunities"></a>

```
{
    "jsonrpc": "2.0",
    "id": 4,
    "method": "tools/call",
    "params": {
        "name": "sendMessage",
        "arguments": {
            "sessionId": "session-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
            "content": [
                {
                    "type": "text",
                    "text": "List my open opportunities with expected revenue over $50K"
                }
            ],
            "catalog": "AWS"
        }
    }
}
```

### 資金の適格性を確認する
<a name="mcp-check-funding"></a>

```
{
    "jsonrpc": "2.0",
    "id": 5,
    "method": "tools/call",
    "params": {
        "name": "sendMessage",
        "arguments": {
            "sessionId": "session-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
            "content": [
                {
                    "type": "text",
                    "text": "Am I eligible for MAP funding for opportunity O1234567890?"
                }
            ],
            "catalog": "AWS"
        }
    }
}
```

### セッション履歴を取得する
<a name="mcp-retrieve-session"></a>

```
{
    "jsonrpc": "2.0",
    "id": 6,
    "method": "tools/call",
    "params": {
        "name": "getSession",
        "arguments": {
            "sessionId": "session-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
            "catalog": "AWS"
        }
    }
}
```

### パートナーオンボーディング
<a name="mcp-partner-onboarding-task"></a>

```
{
    "jsonrpc": "2.0",
    "id": 7,
    "method": "tools/call",
    "params": {
        "name": "sendMessage",
        "arguments": {
            "sessionId": "session-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
            "content": [
                {
                    "type": "text",
                    "text": "Help me onboard to Partner Central"
                }
            ],
            "catalog": "AWS"
        }
    }
}
```

試すその他のオンボーディングタスク:
+ 「面接プロセスを案内する」
+ 「ウェブサイトを見てパートナープロファイルを入力できますか？」
+ 「 Marketplace で販売する準備を整えるには、まだ何をする必要がありますか？」

## セキュリティに関する考慮事項
<a name="mcp-security-considerations"></a>
+ MCP ツールパラメータを介してAWS認証情報を渡さないでください。認証は、トランスポートレイヤーで SigV4 リクエスト署名によって処理されます。
+ テストと開発にはサンドボックスカタログを使用します。`"Sandbox"` カタログは、本番パートナーデータに影響を与えない分離された環境を提供します。
+ 最小特権の IAM ポリシーを本番環境に適用します。ユースケースのモニタリングと報告には、読み取り専用ポリシーを使用します。ユーザーが機会を更新したり、資金調達アプリケーションを送信したりする必要がある場合にのみ、書き込みアクセス許可を付与します。
+ 書き込みオペレーションを慎重に確認してください。サーバーは、すべての書き込みオペレーションにhuman-in-the-loop承認を使用します。書き込みアクションが提案された場合は、承認する前にパラメータを確認してください。
+ セッションデータは一時的なものです。セッションは作成から 48 時間後に期限切れになります。長期データストレージのセッションに依存しないでください。
+ ファイルのアップロードはエフェメラル S3 バケットに送信されます。アップロードされたファイルは一時的に保存され、永続的に保持されません。認証情報、シークレット、またはその他の機密情報を含むファイルをアップロードしないでください。

## 次の手順
<a name="mcp-next-steps"></a>
+ [https://docs.aws.amazon.com/partner-central/latest/APIReference/mcp-configuration-reference.html](https://docs.aws.amazon.com/partner-central/latest/APIReference/mcp-configuration-reference.html) — エンドポイント、IAM アクション、セッション管理、エラーコードの完全なリファレンス
+ [https://docs.aws.amazon.com/partner-central/latest/APIReference/mcp-tools-reference.html](https://docs.aws.amazon.com/partner-central/latest/APIReference/mcp-tools-reference.html) — `sendMessage`および `getSession` ツールの詳細なドキュメント