AWS パートナーセントラル API リファレンスが再構築されました。サポートされている API オペレーションの詳細については、 AWS パートナーセントラル API リファレンスを参照してください。
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Partner Central Agent MCP サーバーの開始方法
このガイドでは、 Partner Central Agent MCP Server へのアクセスを設定する手順を説明します。サーバーは、ブラウザベースのサインイン用の OAuth と直接 HTTPS アクセス用の SigV4 の 2 つの認証方法をサポートしています。プロキシや IDE プラグインは必要ありません。
前提条件
開始する前に、以下の準備が整っていることを確認します。
アクティブな Partner Central アカウント ( AWS コンソールに移行)
Partner Central の IAM アクセス許可を持つ Partner Central 組織にリンクされた AWS アカウント
MCP 互換クライアント (Claude Code、Kiro、Claude Desktop、またはモデルコンテキストプロトコルをサポートする任意のクライアント)
SigV4 認証のみ
以下の前提条件は SigV4 認証にのみ適用されます。
AWS CLI がインストールされ、認証情報で設定されている
JSON-RPC 2.0 および SigV4 リクエスト署名をサポートする MCP 互換クライアント
ステップ 1: 認証と接続を設定する
Partner Central Agent MCP Server では、ブラウザベースのサインインに OAuth を使用するか、直接 HTTPS アクセスに SigV4 を使用して認証できます。ワークフローに最適な方法を選択します。MCP クライアントはエンドポイントに直接接続します。プロキシレイヤーや IDE プラグインは必要ありません。
Endpoint
https://partnercentral-agents-mcp.us-east-1.api.aws/mcp
Partner Central Agent MCP Server は現在、米国東部 (バージニア北部) でのみ使用できます。このエンドポイントには、任意の場所から接続できます。
認証方法の選択
| 質問 | 使用アイテム |
|---|---|
| CLI AWS をインストールしたり、ローカル認証情報を設定したりせずに開始しますか? | OAuth |
| クライアントはブラウザベースのログインでリモート MCP サーバーをサポートしていますか? | OAuth |
| エージェントはブラウザなしで実行されますか (CI/CD、オートメーションスクリプト)? | SigV4 |
組織は signin:AuthorizeOAuth2Accessと アクセスsignin:CreateOAuth2Token許可を制限していますか? |
SigV4 |
MCP クライアントを接続する
タブを選択すると、任意の認証方法の設定手順が表示されます。
重要
MCP サーバーに接続すると、プロトコルアクセスのみ許可されます。機会のクエリや資金管理などの Partner Central オペレーションを実行するには、データアクセス許可も付与する必要があります。「ステップ 2: データアクセス許可を付与する」を参照してください。
MCP アクセスの制限
デフォルトでは、認証されたすべての ID AWS は MCP サーバーへのプロトコルアクセスを持ちます。特定のユーザーまたはアカウントの MCP アクセスをブロックするには、 に明示的な拒否を適用しますpartnercentral:InvokeMcp。
{ "Effect": "Deny", "Action": "partnercentral:InvokeMcp", "Resource": "*" }
MCP プロトコルリファレンス
このセクションでは、カスタム MCP クライアント実装の JSON-RPC プロトコルについて説明します。Claude Code、Kiro、または を使用している場合Claude Desktop、クライアントはこれらのリクエストを自動的に処理します。
リクエストとレスポンスの形式は、OAuth 認証と SigV4 認証の両方で同じです。唯一の違いは HTTP 認証ヘッダーです。OAuth は を使用しAuthorization: Bearer <token>、SigV4 は AWS 署名ヘッダーを使用します。
MCP 接続を初期化する
リクエストを送信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" } } }
使用可能なツールを一覧表示する
{ "jsonrpc": "2.0", "id": 2, "method": "tools/list", "params": {} }
ステップ 2: データアクセス許可を付与する
MCP サーバーに接続すると、プロトコルアクセスのみ許可されます。機会のクエリや資金管理などの Partner Central オペレーションを実行するには、追加の IAM アクセス許可が必要です。以下のセクションでは、ポリシーと使用可能なアクセス許可レベルをアタッチする方法について説明します。
IAM ポリシーのアタッチ
AWS マネジメントコンソールを使用して IAM ID にポリシーをアタッチするには:
[IAM コンソール]
を開きます。 左側のナビゲーションペインで、ポリシーをアタッチする ID に応じてユーザー、ユーザーグループ、またはロールを選択し、特定のユーザー、グループ、またはロールの名前を選択します。
[アクセス許可] タブを選択します。
ポリシーをアタッチする (または、初めてアクセス許可を追加する) を選択します。
ポリシーリストで、アタッチする管理ポリシー (以下の JSON ブロックから作成したカスタムポリシーなど) を検索して選択します。
確認するには、ポリシーのアタッチ (または次へ、アクセス許可の追加) を選択します。
アクセス許可はすぐに有効になります。同じ ID に複数のポリシーをアタッチできます。
推奨: 管理ポリシーを使用する
データアクセス許可を付与する最も簡単な方法は、AWSPartnerCentralFullAccess管理ポリシーを IAM ID にアタッチすることです。このポリシーには、MCP サーバーを介して利用可能なすべての Partner Central オペレーションのアクセス許可が含まれます。
きめ細かな制御を行うには、以下のセクションのカスタムポリシーを使用して、ユースケースに必要な特定のアクションのみを付与します。
データアクセス許可
エージェントを介して 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": "*" }
フルアクセスポリシー
開発とテストでは、すべてのアクセス許可を 1 つのポリシーに結合できます。
aws iam create-policy \ --policy-name PartnerCentralAgentsFullAccess \ --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "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": "*" } ] }'
読み取り専用ポリシー
本番環境または読み取り専用のユースケースでは、読み取りオペレーションへのアクセス許可を制限します。
aws iam create-policy \ --policy-name PartnerCentralAgentReadOnly \ --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "partnercentral:List*", "partnercentral:Get*" ], "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": "*" } ] }'
MCP ヘッダーを使用した通話の署名
Partner Central エージェント MCP にリクエストを行うときは、次の方法を使用してカスタム MCP ヘッダーを含めることをお勧めします。これは、クライアントアプリケーションのソース AWS の特定、使用状況のモニタリング、パフォーマンスの監査に役立ちます。 はこのヘッダー AWS を使用して、呼び出しを行うクライアントアプリケーションのタイプを区別し、さまざまなクライアント実装の成功率に関するインサイトを収集します。
方法 1: _meta フィールド (プログラム/ステートレス MCP)
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 (セッションベースのカスタムエージェント)
セッションを確立するカスタム 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 のみ)
インテグレーターがプロトコルフィールドを変更できないホストされた MCP クライアントのみ。URL パラメータを使用します。
サーバー URL: https://partnercentral-agents-mcp.us-east-1.api.aws/mcp?appId=<Integrator's Company Name / Direct>
ステップ 3: セットアップを確認する
簡単なメッセージを送信して、すべてが機能していることを確認します。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: 最初のタスクを実行する
オポチュニティをクエリする
{ "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" } } }
資金の適格性を確認する
{ "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" } } }
セッション履歴を取得する
{ "jsonrpc": "2.0", "id": 6, "method": "tools/call", "params": { "name": "getSession", "arguments": { "sessionId": "session-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "catalog": "AWS" } } }
パートナーのオンボーディング
{ "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 で販売する準備を整えるには、まだ何をする必要がありますか?」
セキュリティに関する考慮事項
MCP ツールパラメータを介して AWS 認証情報を渡さないでください。SigV4 リクエスト署名または OAuth トークンは、トランスポートレイヤーで認証を処理します。
テストと開発にはサンドボックスカタログを使用します。
"Sandbox"カタログは、本番パートナーデータに影響を与えない分離された環境を提供します。最小特権の IAM ポリシーを本番環境に適用します。ユースケースのモニタリングと報告には、読み取り専用ポリシーを使用します。ユーザーが機会を更新したり、資金調達アプリケーションを送信したりする必要がある場合にのみ、書き込みアクセス許可を付与します。
書き込みオペレーションを慎重に確認してください。サーバーは、すべての書き込みオペレーションにhuman-in-the-loop承認を使用します。書き込みアクションが提案された場合は、承認する前にパラメータを確認してください。
セッションデータは一時的なものです。セッションは作成から 48 時間後に期限切れになります。長期データストレージのセッションに依存しないでください。
ファイルのアップロードはエフェメラル S3 バケットに送信されます。アップロードされたファイルは一時的に保存され、永続的に保持されません。認証情報、シークレット、またはその他の機密情報を含むファイルをアップロードしないでください。
OAuth トークンは最大 12 時間自動的に更新されます。セッションの有効期限が切れたら、ブラウザを使用して再認証します。
エージェントを承認しても、既存の IAM ポリシー、サービスコントロールポリシー、リソースコントロールポリシー、および AWS アクセス許可の境界を超える追加のアクセス許可は付与されません。
トラブルシューティング
次の表に、一般的なエラーとその解決策を示します。
| エラー | 原因 | 解決策 |
|---|---|---|
| リクエストに含まれるセキュリティトークンが無効です | 有効期限切れの認証情報 | aws sso login を実行して認証情報を更新する |
| アクセスが拒否されました: ユーザーには signin:AuthorizeOAuth2Access を実行する権限がありません | OAuth アクセス許可がない | アクセスsignin許可をアタッチAWSMcpServiceActionsFullAccessまたは追加する |
| OAuth サインイン後の 400 エラー | IAM プリンシパルに OAuth アクセス許可がない | signin:AuthorizeOAuth2Access と signin:CreateOAuth2Tokenが許可されていることを確認する |
partnercentral:InvokeMcp または signin:*アクションに対するアクセス拒否または暗黙的な拒否 |
組織は、明示的に許可されていないサービスをブロックする許可リストベースのサービスコントロールポリシー (SCPsを使用します。 | 組織の SCPs で許可されているサービスに partnercentralと signin (OAuth のみ) を追加するように AWS 管理者に依頼します。SCP は、ID ポリシーを有効にする前に、アカウントレベルでこれらのサービスを許可する必要があります。MCP プロトコルアクセスを制御する唯一のアクションは partnercentral:InvokeMcpです。このアクションに対する明示的な拒否は、すべての MCP リクエストをブロックします。 |