Sáltate la instalación. Funcionando en menos de 2 minutos.
Inicia una prueba gratuita en cloud.anythingmcp.com, añade Canva con un clic y apunta tu cliente de IA (Claude, ChatGPT, Copilot o Cursor) al endpoint MCP generado. Sin Docker, sin git clone, sin experiencia de desarrollo.
AnythingMCP está en el directorio de conectores de Claude: añádelo a Claude con un clic (se abre en una pestaña nueva), inicia sesión y elige qué servidores MCP puede usar Claude.
Resumen
Deja que tu IA trabaje en Canva: busca y lee diseños, crea otros nuevos, expórtalos a PDF, PNG, PowerPoint o vídeo con enlaces de descarga, organiza carpetas, sube imágenes desde un enlace, lee plantillas de marca y comenta diseños.
Prueba a pedir
Prompts de ejemplo para Canva
Haz clic en un prompt para copiarlo. Pégalo en Claude, ChatGPT, Cursor, Gemini, Copilot u OpenClaw para ejecutarlo contra este conector.
Claude es IA y puede equivocarse. Verifica siempre las respuestas.
💡 ¿Sin instalación? Usa cloud.anythingmcp.com directamente. Inicia sesión, pulsa Connectors → Canva, pega tus credenciales, genera una MCP API key y listo. Sin Docker, sin
git clone, sin servidor local.
Canva + Claude
Deja que tu IA trabaje en Canva: busca y lee diseños, crea otros nuevos, expórtalos a PDF, PNG, PowerPoint o vídeo con enlaces de descarga, organiza carpetas, sube imágenes desde un enlace, lee plantillas de marca y comenta diseños.
Requisitos previos
Las instrucciones de configuración completas están incluidas en el conector (visibles en el store al seleccionarlo). Las variables de entorno requeridas:
CANVA_CLIENT_ID, CANVA_CLIENT_SECRET
Paso 1 — Obtener credenciales
- Activa la autenticación multifactor con una app de autenticación en tu cuenta de Canva: Settings → Login & security. Canva solo habilita el acceso a la REST API para desarrolladores que la tienen activada.
- Abre el Canva Developer Portal en
https://www.canva.com/developers/apps, haz clic en Create an app y elige para quién es. Una app privada la aprueban los administradores de tu propio equipo y requiere un equipo de Canva Enterprise. Una app pública funciona para ti, su desarrollador, desde el primer momento; otros usuarios de Canva solo pueden conectarla después de que Canva la revise. Después abre Outside Canva → Start integrating para usar las REST API. - En Configuration → Scopes, marca estos doce scopes:
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. El conector los pide todos, y Canva rechaza un inicio de sesión que pida un scope que no hayas marcado. - En Authentication, añade la URL de redirección
https://cloud.anythingmcp.com/api/mcp-oauth/callback. Si alojas AnythingMCP tú mismo, es<your AnythingMCP URL>/api/mcp-oauth/callback. Canva rechaza las URL de redirección conlocalhost, así que en una instalación local usa127.0.0.1: ponSERVER_URLenhttp://127.0.0.1:<port>y registrahttp://127.0.0.1:<port>/api/mcp-oauth/callback. - Copia el Client ID en
CANVA_CLIENT_ID. Haz clic en Generate secret y pégalo enseguida enCANVA_CLIENT_SECRET, porque Canva solo lo muestra una vez. - Instala el conector, haz clic en Authorize with Provider y permite el acceso en Canva. El inicio de sesión usa OAuth 2.0 con PKCE: AnythingMCP nunca ve tu contraseña de Canva y renueva por sí solo los tokens de acceso (válidos unas cuatro horas). Cada refresh token funciona una vez y se sustituye en cada renovación.
- Empieza con
canva_get_me: devuelve el id de tu usuario y de tu equipo de Canva, una comprobación rápida de que la autorización funciona.
Las exportaciones llegan como enlaces de descarga: canva_create_export inicia un trabajo y canva_get_export avisa cuando termina, con un enlace por archivo (las imágenes de varias páginas dan uno por página). Los enlaces son válidos durante 24 horas. canva_get_design_export_formats muestra qué formatos admite un diseño: PDF, JPG, PNG, SVG, PowerPoint, GIF, MP4 y más, según el tipo de diseño. Los diseños con elementos premium sin licencia fallan con license_required. Canva permite 75 exportaciones por usuario cada 5 minutos y 500 al día.
Subidas desde un enlace: canva_upload_asset_from_url pone una imagen o un vídeo en tu carpeta Uploads, y canva_get_asset_upload avisa cuando ya está. Canva descarga el archivo por su cuenta, así que el enlace tiene que responder 200 al descargador de Canva. Los sitios que rechazan las descargas automáticas hacen que el trabajo falle con fetch_failed.
Carpetas y diseños: root es el nivel superior de tus Proyectos y uploads la carpeta Uploads. El id de un diseño es la parte que va después de /design/ en un enlace de Canva, por ejemplo DAFVztcvd9z en https://www.canva.com/design/DAFVztcvd9z/.... canva_create_design crea un doc, un email, una presentación o una pizarra vacíos, o un tamaño personalizado en píxeles, y devuelve su enlace de edición. Los enlaces de miniaturas caducan a los 15 minutos, y los de edición y visualización a los 30 días.
Qué plan: diseños, carpetas, subidas, exportaciones y comentarios funcionan en todos los planes de Canva, también en Free. Las plantillas de marca necesitan un plan que las incluya (Pro, Teams o Enterprise); canva_get_capabilities muestra brand_template cuando el tuyo las tiene.
Primero, confirmar: tus colaboradores ven los comentarios y las respuestas (canva_create_comment, canva_reply_to_comment), así que la IA te enseña el texto antes de publicarlo. canva_delete_folder y canva_delete_asset, que mueven elementos a la Papelera, vienen desactivados al instalar.
Solo lectura: desmarca los scopes :write en el Developer Portal y en los ajustes OAuth del conector, autoriza de nuevo y desactiva las herramientas que crean, cambian o mueven cosas.
API en vista previa: los comentarios y las subidas desde un enlace usan API de Canva en vista previa, que pueden cambiar sin aviso, y una app pública que las use no pasa la revisión de Canva. Para una app pública, desactiva canva_upload_asset_from_url, canva_get_asset_upload y las cuatro herramientas de comentarios.
Errores comunes: invalid_access_token o revoked_access_token significa que hay que autorizar de nuevo. missing_scope: marca el scope en el portal y en los ajustes OAuth del conector, y vuelve a autorizar. permission_denied o design_not_found (también folder_not_found, asset_not_found): el id es incorrecto o tu cuenta no ve ese elemento. Un 403 "requires one of capabilities" es una función de pago, como las plantillas de marca. too_many_requests: la mayoría de las llamadas permiten de 10 a 100 por minuto y usuario, así que espera un minuto.
El conector no edita el contenido de un diseño, no rellena plantillas de marca (autofill), no cambia el tamaño de los diseños, no importa archivos, no genera con IA, no lee estadísticas de diseños ni configura webhooks.
Paso 2 — Instalar el 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
Paso 3 — Añadir el conector en Claude
La URL de tu servidor: en AnythingMCP abre MCP Servers → el servidor donde está este conector y copia su URL (
https://cloud.anythingmcp.com/mcp/…). Úsala donde esta guía muestraYOUR_SERVER_ID.
Ruta recomendada: funciona en claude.ai web sin tocar ningún archivo de configuración.
- En Claude, abre Customize → Connectors.
- Pulsa + y después Add custom connector.
- Escribe un nombre, por ejemplo
Canva, y la URL del servidor MCP remotohttps://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID, y pulsa Add. - Pulsa Connect e inicia sesión en AnythingMCP (OAuth) para permitir el acceso.
Todas las herramientas debajo aparecen en tu chat: empieza a escribir prompts.
Herramientas disponibles
| 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) |
Ejemplos de prompts
- "Busca mis diseños con 'pitch deck' en el título y dame el enlace de edición del más reciente."
- "Exporta la presentación 'Q4 sales review' a PDF y dame el enlace de descarga."
- "Sube a mi Canva la foto de producto de este enlace y crea con ella una nueva publicación de 1080 × 1080."
- "Crea una carpeta 'Campaña de otoño' y mueve allí todos los diseños de la campaña de la semana pasada."
FAQ
¿Funciona con Claude Code igual que con Claude Desktop? Sí, apunta ambos a https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID.
Siguientes pasos
¿Te ha sido útil esta guía?