

L' AWS Partner Central API Reference è stato ristrutturato. Per ulteriori informazioni sulle operazioni API supportate, consulta l'[AWS Partner Central API Reference.](https://docs.aws.amazon.com/partner-central/latest/APIReference/Welcome.html)

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Guida introduttiva al server MCP Partner Central Agent
<a name="mcp-getting-started"></a>

Questa guida illustra come configurare l'accesso programmatico al server MCP Partner Central Agent utilizzando un client MCP personalizzato. Il server utilizza HTTPS diretto con autenticazione SigV4: non è richiesto alcun proxy o plug-in IDE.

## Prerequisiti
<a name="mcp-prerequisites"></a>

Prima di iniziare, assicurati di avere:
+ Un account Partner Central attivo (migrato alla AWS console)
+ Un AWS account con autorizzazioni IAM per Partner Central
+ AWS CLI installata e configurata con credenziali
+ Accesso alla regione us-east-1 (Virginia settentrionale)
+ Connettività HTTPS a `partnercentral-agents-mcp.us-east-1.api.aws`
+ Supporto TLS 1.2\+ nel tuo client HTTP
+ Un MCP-compatible client che supporta la firma delle richieste JSON-RPC 2.0 e SigV4

## Fase 1: configurare le autorizzazioni IAM
<a name="mcp-step1-iam"></a>

Il server MCP Partner Central Agent richiede autorizzazioni IAM a due livelli: accesso al protocollo (per comunicare con l'endpoint MCP) e accesso ai dati (per eseguire le operazioni di Partner Central).

### Allegare le politiche IAM
<a name="mcp-attaching-iam-policies"></a>

Per allegare una policy alla tua identità IAM utilizzando la console di AWS gestione:

1. Apri la [console IAM](https://console.aws.amazon.com/iam/).

1. Nel riquadro di navigazione a sinistra, scegli **Utenti****, Gruppi** di utenti o **Ruoli** a seconda dell'identità a cui desideri allegare la policy, quindi scegli il nome dell'utente, del gruppo o del ruolo specifico.

1. Scegli la scheda **Autorizzazioni**.

1. Scegli **Allega politiche** (o **Aggiungi autorizzazioni** se è la prima volta).

1. Nell'elenco delle policy, cerca e seleziona la policy gestita che desideri allegare (ad esempio, una policy personalizzata che hai creato dai blocchi JSON riportati di seguito).

1. Scegli **Allega politiche** (o **Avanti** e poi **Aggiungi autorizzazioni**) per confermare.

Le autorizzazioni hanno effetto immediato. È possibile allegare più politiche alla stessa identità.

### Consigliato: utilizza la politica gestita
<a name="mcp-managed-policy"></a>

Il modo più semplice per concedere l'accesso al protocollo MCP è collegare la policy `AWSMcpServiceActionsFullAccess` gestita alla tua identità IAM. Questa policy include tutte le autorizzazioni necessarie per interagire con il server MCP.

Per un controllo granulare, puoi utilizzare la chiave `aws:IsMcpServiceAction` condition nelle tue policy IAM per definire le autorizzazioni in modo specifico per le azioni del servizio MCP.

### Autorizzazioni minime per l'accesso al protocollo MCP
<a name="mcp-minimum-permissions"></a>

Come minimo, la tua identità IAM necessita di questa azione per interagire con il server MCP:


| Azione | Description | 
| --- | --- | 
| partnercentral:UseSession | Necessario per creare, aggiornare e recuperare le sessioni di conversazione | 

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

}
```

### Autorizzazioni di accesso ai dati
<a name="mcp-data-access-permissions"></a>

Per eseguire effettivamente le operazioni di Partner Central tramite l'agente, sono necessarie autorizzazioni aggiuntive in base al caso d'uso.

**Gestione delle opportunità:**

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

**Programmi di finanziamento:**

```
{
    "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": "*"
}
```

**Accesso al Marketplace:**

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

**Registrazione iniziale di 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": "*"
}
```

Per la configurazione del venditore su Marketplace, aggiungi anche:

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

Per la gestione dei ruoli collegata ai servizi (rivendita): Authorizations/CPPO

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

### Politica di accesso completo
<a name="mcp-full-access-policy"></a>

Per lo sviluppo e il test, puoi combinare tutte le autorizzazioni in un'unica politica:

```
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": "*"
            }
        ]
    }'
```

### Read-only politica
<a name="mcp-read-only-policy"></a>

Per ambienti di produzione o casi d'uso di sola lettura, limita le autorizzazioni alle operazioni di lettura:

```
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": "*"
            }
        ]
    }'
```

## Fase 2: Connect il client MCP
<a name="mcp-step2-connect"></a>

Il server MCP Partner Central Agent utilizza HTTPS diretto con firma delle richieste SigV4. Non esiste un livello proxy: il client MCP invia le richieste JSON-RPC 2.0 direttamente all'endpoint.

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

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

### Autenticazione
<a name="mcp-authentication"></a>

Tutte le richieste devono essere firmate con [AWS Signature Version 4](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) utilizzando:
+ Nome del servizio: `partnercentral-agents-mcp`
+ Regione: `us-east-1`

### Inizializza la connessione MCP
<a name="mcp-initialize-connection"></a>

Invia una `initialize` richiesta per stabilire il protocollo:

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

Risposta prevista:

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

### Elenca gli strumenti disponibili
<a name="mcp-list-tools"></a>

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

## Firma delle chiamate con l'intestazione MCP
<a name="mcp-signing-calls-header"></a>

Quando si effettuano richieste agli agenti MCP di Partner Central, si consiglia di includere l'intestazione MCP personalizzata utilizzando i seguenti metodi per AWS identificare l'origine dell'applicazione client, monitorare l'utilizzo e controllare le prestazioni.AWS utilizza questa intestazione per distinguere il tipo di applicazione client che effettua la chiamata e per raccogliere informazioni sulla percentuale di successo delle diverse implementazioni client.

### Metodo 1: \_meta field (MCP) programmatic/stateless
<a name="mcp-header-meta-field"></a>

Per il codice che crea direttamente le richieste MCP, fornisci il `_meta` campo sulle `tools/call` richieste.

```
{
    "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>"
        }
    }
}
```

### Metodo 2: ClientInfo (agenti personalizzati basati sulla sessione)
<a name="mcp-header-client-info"></a>

Per i client MCP personalizzati che stabiliscono sessioni, fornisci le informazioni sull'intestazione MCP all'interno del campo: `clientInfo`

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

Campi in: `clientInfo`
+ `integrator`— Nome dell'azienda o «Direct» per i partner

  Ad esempio: `AWS`
+ `sourceProduct`— Product/agent nome

  Ad esempio: `AWS CRM Connector`

### Metodo 3: parametro URL (solo MCP ospitato)
<a name="mcp-header-url-parameter"></a>

Solo per client MCP ospitati in cui l'integratore non può modificare i campi del protocollo. Usa il parametro URL:

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

## Fase 3: Verifica la configurazione
<a name="mcp-step3-verify"></a>

Invia un semplice messaggio per confermare che tutto funziona. Usa il `Sandbox` catalogo per testare:

```
{
    "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"
        }
    }
}
```

Se ricevi una risposta `"status": "complete"` e una risposta via SMS dall'agente, la configurazione funziona correttamente. La risposta includerà anche un messaggio `sessionId` che potrai utilizzare per i messaggi di follow-up.

## Passaggio 4: Esegui le tue prime attività
<a name="mcp-step4-tasks"></a>

### Consulta le tue opportunità
<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"
        }
    }
}
```

### Verifica l'idoneità al finanziamento
<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"
        }
    }
}
```

### Recupera la cronologia delle sessioni
<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"
        }
    }
}
```

### Inserimento dei partner
<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"
        }
    }
}
```

Altre attività di onboarding da provare:
+ «Guidami nella procedura del questionario fiscale»
+ «Puoi dare un'occhiata al mio sito Web e compilare il mio profilo di partner?»
+ «Cosa devo fare ancora per essere pronto a vendere su Marketplace?»

## Considerazioni relative alla sicurezza
<a name="mcp-security-considerations"></a>
+ Non passate AWS le credenziali tramite i parametri dello strumento MCP. L'autenticazione è gestita dalla firma delle richieste SigV4 a livello di trasporto.
+ Utilizza il catalogo Sandbox per test e sviluppo. Il `"Sandbox"` catalogo fornisce un ambiente isolato che non influisce sui dati dei partner di produzione.
+ Applica le politiche IAM con privilegi minimi nella produzione. Utilizza la policy di sola lettura per il monitoraggio e la segnalazione dei casi d'uso. Concedi le autorizzazioni di scrittura solo quando l'utente deve aggiornare le opportunità o inviare richieste di finanziamento.
+ Esamina attentamente le operazioni di scrittura. Il server utilizza l'approvazione human-in-the-loop per tutte le operazioni di scrittura. Quando viene proposta un'azione di scrittura, rivedi i parametri prima dell'approvazione.
+ I dati della sessione sono transitori. Le sessioni scadono 48 ore dopo la creazione. Non fare affidamento sulle sessioni per l'archiviazione dei dati a lungo termine.
+ I file caricati vengono trasferiti in un bucket S3 temporaneo. I file caricati vengono archiviati temporaneamente e non vengono conservati in modo permanente. Non caricare file contenenti credenziali, segreti o altre informazioni sensibili.

## Fasi successive
<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): riferimento completo per endpoint, azioni IAM, gestione delle sessioni e codici di errore
+ [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): documentazione dettagliata per `sendMessage` e `getSession` strumenti