DropCPL espone un server MCP pubblico (Model Context Protocol). Collega una volta il tuo assistente AI e potrà leggere i tuoi dati DropCPL (campagne, annunci Meta con la loro spesa, landing page e le loro performance) e, se lo permetti, agire su di essi con gli stessi tool che usa l’agente AI dentro l’app. Tutto resta limitato alla subaccount che scegli quando ti colleghi.
URL del server:
https://mcp.dropcpl.com/mcp
Non ci sono chiavi API né token da copiare: ti colleghi con il tuo normale login DropCPL (OAuth) e scegli accesso in sola lettura o lettura + scrittura nella schermata di consenso.
Configurazione rapida
Se hai npx (arriva con Node.js), un solo comando configura tutti i client installati che supportano MCP:
npx -y add-mcp https://mcp.dropcpl.com/mcp
Rileva Claude Code, Cursor, VS Code Copilot e gli altri strumenti supportati, scrive la loro configurazione e apre il browser per l’autorizzazione.
Collegare Claude
Claude Code
claude mcp add --transport http dropcpl https://mcp.dropcpl.com/mcp
Poi lancia /mcp dentro Claude Code e completa l’autorizzazione (si apre il browser con il tuo login DropCPL). Prompt da provare:
- “Elenca le mie campagne e le loro landing page.”
- “Quale combinazione di creatività e landing page ha il CPL più basso questa settimana?”
Claude (web e desktop)
- Apri Customize → Connectors (Personalizza → Connettori).
- Clicca + Add, poi Add custom connector.
- Nome:
dropcpl· URL:https://mcp.dropcpl.com/mcp - Mantieni l’accesso OAuth rilevato e approva l’autorizzazione nel browser.
- In una chat, attiva il connettore dal pulsante + → Connectors.
I connettori personalizzati sono disponibili su tutti i piani di Claude; il piano Free è limitato a uno. Sui piani Team ed Enterprise un Owner aggiunge il connettore in Organization settings → Connectors, poi i membri cliccano Connect. Fonte: la guida di Anthropic ai connettori personalizzati.
Collegare ChatGPT e Codex
ChatGPT
- Apri chatgpt.com/plugins.
- Clicca +, poi Add custom MCP server.
- Chiamalo
dropcpl, scegli un endpoint HTTPS pubblico e incollahttps://mcp.dropcpl.com/mcp. - Imposta l’autenticazione su OAuth, leggi l’avviso sui rischi e conferma.
- Clicca Create as a plugin, controlla i tool che ChatGPT rileva, poi approva l’accesso nel browser.
Sono le policy del tuo account o del workspace a decidere se i server MCP personalizzati sono consentiti. Fonte: la guida di OpenAI per collegare ChatGPT.
Codex CLI
codex mcp add dropcpl --url https://mcp.dropcpl.com/mcp
codex mcp login dropcpl # apre il browser: approva con il tuo login DropCPL
Codex si registra come client OAuth al primo login (registrazione dinamica del client), quindi non c’è un client ID da chiedere né una chiave da incollare. Codex legge i server MCP anche da ~/.codex/config.toml, o da un .codex/config.toml di progetto nei progetti fidati:
[mcp_servers.dropcpl]
url = "https://mcp.dropcpl.com/mcp"
La CLI, l’estensione per IDE e l’app desktop di ChatGPT condividono questa configurazione.
Collegare qualsiasi altro client MCP
Client configurati in JSON (Cursor, VS Code Copilot, Windsurf)
{
"mcpServers": {
"dropcpl": {
"url": "https://mcp.dropcpl.com/mcp"
}
}
}
Riavvia il client: la prima chiamata a un tool apre il flusso OAuth.
Client che supportano solo stdio
Usa il bridge mcp-remote:
{
"mcpServers": {
"dropcpl": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.dropcpl.com/mcp"]
}
}
}
Client che risolvono OAuth da soli
Incolla questi due documenti solo se il client li chiede:
https://mcp.dropcpl.com/.well-known/oauth-protected-resource/mcp (RFC 9728)
https://app.dropcpl.com/.well-known/oauth-authorization-server (RFC 8414)
Il secondo pubblica gli endpoint di autorizzazione, token e registrazione. La registrazione è dinamica, quindi il client crea le proprie credenziali quando si collega.
Cosa può fare l’assistente
| Gruppo | Tool | Serve la scrittura? |
|---|---|---|
| Campagne | elenco campagne, statistiche, stato del setup | No |
| Landing page (lettura) | elenco delle landing page per campagna, stato, una landing page con il suo HTML completo, ricerca dentro l’HTML o lettura di un intervallo di righe, versioni, stato di pubblicazione, URL pubblici, verifica dal vivo | No |
| Domini (lettura) | i domini della subaccount e il loro stato di verifica | No |
| Meta ads (lettura) | collegamento Meta (account pubblicitario, Pagina, pixel, token, controllo preliminare opzionale), campagne dell’account, annunci di una campagna per ad set con spesa e creatività collegata, ad set attivi | No |
| Valori personalizzati | elenco dei segnaposto | No |
| Domini (scrittura) | aggiungere un dominio, avviarne la verifica | Sì |
| Landing page (scrittura) | creare una landing page, sostituirne l’HTML, modificarla con sostituzioni di testo esatte, salvare/elencare/ripristinare versioni, validare prima di pubblicare, pubblicare, ritirare, archiviare | Sì |
| Landing page (distruttivo) | eliminare una landing page; segnalato come distruttivo, quindi il client chiede l’approvazione | Sì |
| Meta ads (scrittura) | impostare Pagina e pixel degli annunci, creare una campagna Meta o collegarne una esistente, aggiungere una creatività da un URL pubblico, creare un ad set, lanciare una creatività come annuncio (tutto nasce in pausa), collegare un annuncio a una creatività, sincronizzare subito | Sì |
| Meta ads (delivery) | attivare o mettere in pausa un annuncio; segnalato come distruttivo, quindi il client chiede l’approvazione (attivare spende budget) | Sì |
| Valori personalizzati (scrittura) | creare o aggiornare segnaposto | Sì |
L’intero ciclo di vita di una landing page passa dall’assistente, senza repository e senza accesso ai server: collega un dominio → crea la landing page → scrivi il suo HTML → valida → pubblica → verifica che l’URL pubblico risponda. La verifica dal vivo risponde con un verdetto (not-reachable più un suggerimento) quando DNS o SSL non sono ancora pronti, quindi una landing page che non risolve è un risultato da leggere, non una chiamata fallita.
Per cambiare una parola, un titolo o un prezzo su una landing page esistente, chiedi di modificare il frammento: l’assistente cerca nell’HTML e invia solo il testo esatto e la sua sostituzione. Chiedere di “riscrivere la landing page” rigenera l’intero documento, che è lento e facile da sbagliare su una landing page grande. La modifica mantiene la stessa validazione, salva prima una versione e viene rifiutata se il testo cercato manca o compare più di una volta.
Le modifiche a budget e targeting dopo la creazione, e l’eliminazione degli annunci, non sono disponibili via MCP: restano in Gestione inserzioni di Meta. Campagne e ad set creati via MCP restano in pausa finché non li attivi in Gestione inserzioni; via MCP si accendono o si spengono i singoli annunci.
Sicurezza e accessi
- La sola lettura è il default. L’assistente vede quello che vedi tu nell’app, niente di più.
- La scrittura è facoltativa e vale solo per la subaccount che selezioni durante il consenso. Eliminare una landing page e accendere o spegnere un annuncio sono tool segnalati come distruttivi: i client MCP ti chiedono di approvarli, quindi non impostarli su “consenti sempre”.
- OAuth 2.1 con PKCE: nessuna chiave API di lunga durata nei file di configurazione. I token di accesso scadono e l’assistente li rinnova da solo.
- Ogni azione di scrittura è registrata nell’Action Log di DropCPL.
- Revoca: scollega il server dalle impostazioni MCP del client, oppure revoca il collegamento in DropCPL in AI Connections (area agenzia su
/mcp, area subaccount su/<subaccount>/mcp).
Quello che l’assistente può fare resta sempre entro i tuoi permessi di sezione su quella subaccount, qualunque sia l’accesso approvato.
Risoluzione dei problemi
| Sintomo | Soluzione |
|---|---|
401 invalid_token | Autorizza di nuovo: scollega e ricollega il server nel client. |
forbidden: write scope required | Il collegamento è stato autorizzato in sola lettura. Scollegalo e autorizzalo di nuovo con la scrittura. |
forbidden: no "…" permission | Il tuo ruolo DropCPL non consente quella sezione per la subaccount scelta: chiedi al titolare dell’agenzia. |
| I tool non compaiono dopo il collegamento | Riavvia il client: la maggior parte dei client carica i tool MCP all’avvio. |
| “Connector not approved” (Claude) | Sui piani Team ed Enterprise un Owner deve prima aggiungere il connettore; sul piano Free puoi avere un solo connettore personalizzato. |
Riferimenti
- Protocollo: Model Context Protocol, server remoto, Streamable HTTP (spec 2026-07-28, stateless).
- Discovery:
https://mcp.dropcpl.com/.well-known/oauth-protected-resource/mcp - Cosa fa l’agente AI dentro l’app: agente AI. Come si creano e si sincronizzano gli annunci: Meta Ads.
- Le strade per collegare un assistente agli annunci Meta (server ufficiale di Meta, server di terze parti, DropCPL), a confronto: Meta Ads MCP.