canva-mcp-server
canva-mcp-server
Servidor MCP (Model Context Protocol) educativo que conecta un agente de IA a la Canva Connect API. Hecho como material de clase sobre medios creativos con IA — muestra en la práctica cómo está estructurado un servidor MCP.
Qué hace
Expone 3 herramientas (tools) que un agente de IA (Claude, etc.) puede llamar:
Herramienta | Qué hace |
| Busca diseños existentes en la cuenta de Canva por título |
| Crea un diseño nuevo en blanco (póster, presentación, post de Instagram, etc.) |
| Exporta un diseño como PNG, JPG, PDF, PPTX, GIF o MP4 |
Related MCP server: mcp-toolbox
Estructura del proyecto
canva-mcp-server/
├── package.json
├── tsconfig.json
├── src/
│ ├── index.ts # ponto de entrada, registra as ferramentas
│ ├── constants.ts
│ ├── services/canva.ts # cliente HTTP + tratamento de erros da API
│ └── tools/ # uma ferramenta por arquivo
│ ├── searchDesigns.ts
│ ├── createDesign.ts
│ └── exportDesign.ts1. Instalar dependencias
cd canva-mcp-server
npm install2. Obtener un token de acceso de Canva
La Canva Connect API usa OAuth 2.0 (Authorization Code + PKCE). Paso a paso:
Accede al Canva Developer Portal y crea una app (tipo "Connect API integration").
Anota el Client ID y el Client Secret.
Configura un Redirect URI (para pruebas locales, algo como
http://127.0.0.1:3333/callback).Define los scopes necesarios, como mínimo:
design:content:read,design:content:write,design:meta:read,asset:read.Sigue el flujo OAuth de Canva (autorización en el navegador → intercambio del
codeporaccess_token) — la guía oficial está en https://www.canva.dev/docs/connect/authentication/. Para una clase, lo más sencillo es usar Postman/Insomnia con el flujo OAuth2 integrado, o el script de ejemplo del propio Canva Developer Portal.Guarda el
access_tokenobtenido (expira — para reutilización continua, sería necesario implementar el refresh token; queda como ejercicio avanzado para la clase).
3. Configurar la variable de entorno
export CANVA_ACCESS_TOKEN="seu_access_token_aqui"(hay un .env.example en el repositorio con la misma plantilla, si prefieres usar un archivo .env)
4. Build y ejecución
npm run build
npm startPara desarrollo con recarga automática:
npm run dev5. Conectar a Claude Code / Claude Desktop
Añade a tu configuración mcp (ej.: .claude/settings.json del proyecto, o claude_desktop_config.json):
{
"mcpServers": {
"canva": {
"command": "node",
"args": ["/caminho/absoluto/para/canva-mcp-server/dist/index.js"],
"env": {
"CANVA_ACCESS_TOKEN": "seu_access_token_aqui"
}
}
}
}6. Probar con el MCP Inspector
npx @modelcontextprotocol/inspector node dist/index.jsEsto abre una interfaz web para llamar a las herramientas manualmente y ver los resultados — ideal para demostrar en clase antes de conectar a un agente real.
Ideas para ejercicios de la clase
Añadir una herramienta
canva_list_brand_templates(usar plantillas de marca).Implementar la actualización automática del token de acceso.
Añadir soporte para
response_format(markdown vs JSON) como en la guía de buenas prácticas de MCP.Cambiar el transporte de stdio a Streamable HTTP y ejecutarlo como servicio remoto.
Licencia
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityDmaintenanceAn MCP server that connects to Pollinations.ai API, enabling AI models to generate and download images and text through natural language commands.39Apache 2.0
- AlicenseNot gradedqualityDmaintenanceA comprehensive MCP server enabling LLMs to execute commands, manage files, interact with Figma, search the web, generate images, and more, extending their capabilities beyond text generation.Apache 2.0
- FlicenseDqualityDmaintenanceA comprehensive Model Context Protocol (MCP) server for interacting with Canva's API. It enables managing designs, brands, assets, and users through natural language.98
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol (MCP) server for Canva integration. Connect Claude Code or any MCP-compatible AI client to your Canva account to search designs, generate AI designs, edit content, manage folders, and collaborate through comments.2MIT
Related MCP Connectors
Connect AI agents to Flato's editable canvas runtime through a hosted MCP server.
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
An MCP server that gives your AI access to the source code and docs of all public github repos
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/GUIPETAV/canva-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server