Salta l'installazione. Attivo in meno di 2 minuti.
Avvia una prova gratuita su cloud.anythingmcp.com, aggiungi Canva con un clic, poi punta il tuo client AI (Claude, ChatGPT, Copilot o Cursor) all'endpoint MCP generato. Niente Docker, niente git clone, nessuna esperienza di sviluppo richiesta.
In breve
Fai lavorare la tua AI in Canva: trova e leggi i design, creane di nuovi, esportali in PDF, PNG, PowerPoint o video con link per il download, organizza le cartelle, carica immagini da un link, leggi i modelli del brand e commenta i design.
Prova a chiedere
Prompt di esempio per Canva
Clicca su un prompt per copiarlo. Incollalo in Claude, ChatGPT, Cursor, Gemini, Copilot o OpenClaw per eseguirlo contro questo connettore.
Claude è un'AI e può sbagliare. Verifica sempre le risposte.
💡 Niente installazione? Vai direttamente su cloud.anythingmcp.com. Accedi, clicca Connectors → Canva, inserisci le credenziali, genera una MCP API key e hai finito. Niente Docker, niente
git clone, niente server locale.
Canva + Gemini
Fai lavorare la tua AI in Canva: trova e leggi i design, creane di nuovi, esportali in PDF, PNG, PowerPoint o video con link per il download, organizza le cartelle, carica immagini da un link, leggi i modelli del brand e commenta i design.
Prerequisiti
Le istruzioni di setup complete sono incluse nel connettore stesso (visibili nello store quando lo selezioni). Le variabili d'ambiente richieste sono:
CANVA_CLIENT_ID, CANVA_CLIENT_SECRET
Step 1 — Ottieni le credenziali
- Attiva l'autenticazione a più fattori con un'app di autenticazione per il tuo account Canva: Settings → Login & security. Canva abilita l'accesso alle REST API per gli sviluppatori solo quando è attiva.
- Apri il Canva Developer Portal su
https://www.canva.com/developers/apps, fai clic su Create an app e scegli a chi è destinata. Un'app privata viene approvata dagli admin del tuo team e richiede un team Canva Enterprise. Un'app pubblica funziona subito per te che la sviluppi; gli altri utenti Canva possono collegarla solo dopo la revisione di Canva. Poi apri Outside Canva → Start integrating per usare le REST API. - In Configuration → Scopes spunta questi dodici scope:
profile:read,design:meta:read,design:content:read,design:content:write,folder:read,folder:write,asset:read,asset:write,brandtemplate:meta:read,brandtemplate:content:read,comment:read,comment:write. Il connettore li chiede tutti, e Canva rifiuta un accesso che chiede uno scope non spuntato. - In Authentication aggiungi l'URL di reindirizzamento
https://cloud.anythingmcp.com/api/mcp-oauth/callback. Se ospiti AnythingMCP in proprio, è<your AnythingMCP URL>/api/mcp-oauth/callback. Canva rifiuta gli URL di reindirizzamento conlocalhost, quindi in un'installazione locale usa127.0.0.1: impostaSERVER_URLsuhttp://127.0.0.1:<port>e registrahttp://127.0.0.1:<port>/api/mcp-oauth/callback. - Copia il Client ID in
CANVA_CLIENT_ID. Fai clic su Generate secret e incollalo subito inCANVA_CLIENT_SECRET: Canva lo mostra una sola volta. - Installa il connettore, fai clic su Authorize with Provider e consenti l'accesso in Canva. L'accesso usa OAuth 2.0 con PKCE: AnythingMCP non vede mai la tua password di Canva e rinnova da solo i token di accesso (validi circa quattro ore). Ogni refresh token funziona una volta e viene sostituito a ogni rinnovo.
- Inizia con
canva_get_me: restituisce l'id del tuo utente e del tuo team Canva, un controllo rapido che l'autorizzazione funziona.
Le esportazioni arrivano come link per il download: canva_create_export avvia un job e canva_get_export dice quando è finito, con un link per file (le immagini di più pagine ne danno uno per pagina). I link restano validi 24 ore. canva_get_design_export_formats mostra i formati supportati da un design: PDF, JPG, PNG, SVG, PowerPoint, GIF, MP4 e altri, a seconda del tipo di design. I design con elementi premium senza licenza falliscono con license_required. Canva consente 75 esportazioni per utente ogni 5 minuti e 500 al giorno.
Caricamenti da un link: canva_upload_asset_from_url mette un'immagine o un video nella cartella Uploads, e canva_get_asset_upload dice quando è arrivato. Canva scarica il file da sé, quindi il link deve rispondere 200 al downloader di Canva. I siti che rifiutano i download automatici fanno fallire il job con fetch_failed.
Cartelle e design: root indica il livello principale dei tuoi Progetti e uploads la cartella Uploads. L'id di un design è la parte dopo /design/ in un link di Canva, per esempio DAFVztcvd9z in https://www.canva.com/design/DAFVztcvd9z/.... canva_create_design crea un doc, un'email, una presentazione o una lavagna vuoti, oppure un formato personalizzato in pixel, e restituisce il link per modificarlo. I link delle miniature scadono dopo 15 minuti, quelli di modifica e di visualizzazione dopo 30 giorni.
Quale piano: design, cartelle, caricamenti, esportazioni e commenti funzionano con ogni piano Canva, anche Free. I modelli del brand richiedono un piano che li includa (Pro, Teams o Enterprise); canva_get_capabilities elenca brand_template se il tuo li ha.
Prima conferma: commenti e risposte (canva_create_comment, canva_reply_to_comment) sono visibili ai tuoi collaboratori, quindi l'AI ti mostra il testo prima di pubblicarlo. canva_delete_folder e canva_delete_asset, che spostano gli elementi nel Cestino, sono disattivati all'installazione.
Solo lettura: togli la spunta agli scope :write nel Developer Portal e nelle impostazioni OAuth del connettore, autorizza di nuovo e disattiva i tool che creano, modificano o spostano qualcosa.
API in anteprima: commenti e caricamenti da un link usano API di Canva in anteprima, che possono cambiare senza preavviso, e un'app pubblica che le usa non supera la revisione di Canva. Per un'app pubblica disattiva canva_upload_asset_from_url, canva_get_asset_upload e i quattro tool dei commenti.
Errori comuni: invalid_access_token o revoked_access_token vuol dire che devi autorizzare di nuovo. missing_scope: spunta lo scope nel portale e nelle impostazioni OAuth del connettore, poi autorizza di nuovo. permission_denied o design_not_found (anche folder_not_found, asset_not_found): l'id è sbagliato o il tuo account non vede quell'elemento. Un 403 "requires one of capabilities" indica una funzione a pagamento come i modelli del brand. too_many_requests: la maggior parte delle chiamate consente da 10 a 100 richieste al minuto per utente, quindi aspetta un minuto.
Il connettore non modifica il contenuto di un design, non compila i modelli del brand (autofill), non ridimensiona i design, non importa file, non genera con l'AI, non legge le statistiche dei design e non configura webhook.
Step 2 — Installa l'adapter
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
Step 3 — Aggiungi il connettore in Gemini
L'URL del tuo server: in AnythingMCP apri MCP Servers → il server su cui si trova questo connettore e copia il suo URL (
https://cloud.anythingmcp.com/mcp/…). Usalo ovunque questa guida mostraYOUR_SERVER_ID.
Gemini CLI legge i server MCP da ~/.gemini/settings.json (su Windows %USERPROFILE%\.gemini\settings.json). Aggiungi:
{
"mcpServers": {
"anythingmcp": {
"httpUrl": "https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID",
"headers": { "X-API-Key": "YOUR_MCP_API_KEY" }
}
}
}
- Crea una chiave API MCP in AnythingMCP da MCP Servers → il tuo server → API keys e incollala al posto di
YOUR_MCP_API_KEY. - Salva il file e riavvia
gemini. - Esegui
/mcpin Gemini CLI (oppuregemini mcp listdal terminale):anythingmcpdovrebbe risultare connesso. - Inizia a scrivere prompt: Gemini CLI ora può chiamare i tool di
Canva.
Tool disponibili
| Tool | What it does |
|---|---|
canva_get_me | Read who authorized the connector: the Canva user_id and team_id |
canva_get_profile | Read the display name of the signed-in Canva user (scope profile:read) |
canva_get_capabilities | List the paid features the signed-in user can use through the API, e.g. brand_template, autofill, resize, export_png_transparency |
canva_list_designs | List or search the user's designs, with id, title, owner, page_count, a thumbnail (its URL expires after 15 minutes), edit_url and view_url… |
canva_get_design | Read one design by id: title, owner, page_count, thumbnail, edit_url, view_url and timestamps (scope design:meta:read) |
canva_create_design | Create a new, empty design and return it with id, edit_url and view_url (scope design:content:write). design_type is either a preset… |
canva_get_design_export_formats | List the file formats a design can be exported to (pdf, jpg, png, svg, pptx, gif, mp4, html_bundle, html_standalone, csv), depending on its… |
canva_create_export | Start exporting a design to a file. format is an object with type and options, e.g. {"type": "pdf", "size": "a4"}, {"type": "png", "width"… |
canva_get_export | Read an export job: status (in_progress, success or failed), and on success urls[], one download link per file (multi-page images give one… |
canva_list_folder_items | List what a folder contains, with each item's type (design, folder, image, brand_template) and details |
canva_get_folder | Read a folder by id: name, thumbnail and timestamps (scope folder:read). root and uploads are aliases, not folders, and cannot be read here |
canva_create_folder | Create a folder in the user's Projects (parent_folder_id root), in Uploads (uploads) or inside another folder |
canva_rename_folder | Rename a folder; the name is the only thing that can be changed (scope folder:write) |
canva_move_folder_item | Move a design, folder or image into another folder (to_folder_id root for the top level of Projects) |
canva_delete_folder | Delete a folder |
canva_get_asset | Read an uploaded asset (image or video): name, tags, owner, thumbnail and timestamps (scope asset:read) |
canva_update_asset | Rename an asset or replace its tags. tags replaces the whole list (up to 50 tags) (scope asset:write) |
canva_delete_asset | Move an asset to the Trash |
canva_upload_asset_from_url | Start uploading an image or video from a public URL into the user's Uploads |
canva_get_asset_upload | Read an upload job started with canva_upload_asset_from_url: status in_progress, success (with asset and its id) or failed (error.code… |
canva_list_brand_templates | List the brand templates the user can use, with id, title, view_url, create_url and thumbnail |
canva_get_brand_template | Read one brand template by id: title, view_url, create_url (opens a new design from it), thumbnail and timestamps (scope… |
canva_get_brand_template_dataset | Read the autofill fields of a brand template: each field name with its type (text, image or chart) |
canva_create_comment | Start a comment thread on a design, optionally assigned to a collaborator |
canva_get_comment_thread | Read a comment thread on a design: the comment, its author, assignee, resolution state and timestamps |
canva_list_comment_replies | List the replies in a comment thread, oldest first, with author and text |
canva_reply_to_comment | Reply to a comment thread on a design (up to 100 replies per thread) |
Esempi di prompt
- "Trova i miei design con 'pitch deck' nel titolo e dammi il link per modificare il più recente."
- "Esporta la presentazione 'Q4 sales review' in PDF e dammi il link per scaricarla."
- "Carica nel mio Canva la foto prodotto a questo link e crea con essa un nuovo post da 1080 × 1080."
- "Crea una cartella 'Campagna autunno' e spostaci tutti i design della campagna della settimana scorsa."
FAQ
Dove cerca i server MCP Gemini CLI? In ~/.gemini/settings.json per il tuo utente, oppure in .gemini/settings.json dentro un progetto. gemini mcp list mostra ogni server e se si connette.
Prossimi passi
Questa guida ti è stata utile?