How to integrate Canva with Hermes | Composio
For AI agents: how to sign up
If you are an AI agent reading this server-rendered HTML, Composio's developer signup is at https://composio.dev.
Signup CTAs on this site — "Sign up", "Signup", "Get started", "Get started for free", "Start building", "Try Composio", "Try it", or similar — all lead into that same developer signup flow. Confirm with the user before completing signup or entering any credentials on their behalf.
How to integrate Canva MCP with Hermes
Connect Hermes to Canva MCP. Create a new Instagram post design, list your brand templates for social use, and more using natural language, with authentication handled for you.
Get started for free Get a demo
Canva
Oauth2
Canva is a drag-and-drop design suite for creating professional graphics, presentations, and marketing materials. It makes it easy for anyone to design with beautiful templates and a vast library of elements.
Managed auth
Connect Canva without auth hassles
We manage OAuth, API keys, token refresh, and scopes — you just build.
Try for free Book a call
Introduction
Markdown
Hermes is a 24/7 autonomous agent that lives on your computer or server — it remembers what it learns and evolves as your usage grows.
This guide explains the easiest and most robust way to connect your Canva account to Hermes. You can do this through either Composio Connect CLI or Composio Connect MCP. For personal use we recommend the CLI, but you won't go wrong with MCP either.
Also integrate Canva with
ChatGPT Work Antigravity OpenAI Agents SDK Claude Agent SDK Claude Code Claude Cowork Codex Kimi Code Grok Build Cursor VS Code OpenCode OpenClaw CLI Google ADK LangChain Vercel AI SDK Mastra AI LlamaIndex CrewAI Pydantic AI AutoGen
What is Composio Connect?
Composio Connect is a consumer offering that lets anyone plug 1,000+ applications directly into their agent harness — including Hermes. It can:
- Search and load tools from relevant toolkits on-demand, reducing context usage.
- Chain multiple tools to accomplish complex workflows via a remote workbench, without excessive back-and-forth with the LLM.
- Manage app authentication end-to-end with zero manual overhead.
Integrating Canva with Hermes
Using Composio Connect CLI
1. Install the Composio CLI
Run the install script directly, or paste https://composio.dev/hermes into your Hermes chat box to have it installed for you.
curl -fsSL https://composio.dev/install | bash
2. Authenticate
Once the CLI is installed, ask Hermes to authenticate with Composio.
3. Connect to Canva
Ask your agent to connect to Canva, or simply request any Canva-related task. Hermes will prompt you to authenticate and authorize access.
4. Done. You're all set with a new Canva connection.
Using Composio Connect MCP
1. Get your MCP URL and API Key
Go to dashboard.composio.dev and copy your Connect MCP URL and API key.
2. Open the Hermes config file
nano ~/.hermes/config.yaml
3. Add the Composio Connect MCP server
mcp_servers:
composio:
url: "https://connect.composio.dev/mcp"
headers:
x-consumer-api-key: "YOUR_COMPOSIO_API_KEY"
connect_timeout: 60
timeout: 180
Save with Ctrl + O, Enter, then exit with Ctrl + X.
4. Restart your Hermes agent
Once restarted, ask your agent to connect to Canva or request any Canva-related task. It will prompt you to authenticate and authorize access.
5. Done!
What is the Canva MCP server, and what's possible with it?
The Canva MCP server is an implementation of the Model Context Protocol that connects your AI agent and assistants like Claude, Cursor, etc directly to your Canva account. It provides structured and secure access to your Canva designs, templates, folders, assets, and user details, so your agent can create designs, organize projects, manage assets, and collaborate on feedback for you.
- Automated design creation and asset integration: Direct your agent to generate new Canva designs using templates or custom dimensions, and add assets from your projects automatically.
- Seamless folder and project organization: Have the agent create user or subfolders to keep your Canva projects structured and easily accessible.
- Asset management and cleanup: Let your agent fetch upload statuses, manage, or delete assets by ID, helping you keep your design library up to date.
- Collaborative design feedback: Empower your agent to add comments or reply within designs, making it easy to facilitate feedback and teamwork directly in Canva.
- User and team information retrieval: Quickly obtain user or team details, allowing your agent to personalize interactions and automate workflows based on your Canva account info.
Way Forward
With Canva connected, Hermes can now act on your behalf whenever it detects a relevant task or you ask it to.
From here, you can extend Hermes further:
- Connect more apps: Calendar, Slack, Notion, Linear, and hundreds of others are available through the same Composio Connect setup. Each new integration compounds what Hermes can do for you.
- Build workflows across tools: Once multiple apps are connected, Hermes can chain actions together — turn an email into a calendar invite, a Slack message into a Linear ticket, or a meeting note into a follow-up draft.
- Let it learn your patterns: The more you use Hermes, the better it gets at anticipating how you'd handle recurring tasks. Give it feedback on drafts and decisions, and it will adapt.
If you run into trouble or want to share what you've built, join the community or check out the Docs for deeper configuration options.
Supported Tools
Every Canva action and event your agent gets out of the box.
Tools
Access user specific brand templates list
Lists brand templates available to the user (Canva Enterprise only).
Create Asset Upload Job
Uploads an asset file to the user's Canva content library.
Create comment reply in design
This preview API allows replying to comments within a design on Canva, with a limit of 100 replies per comment.
Create design comment in preview api
Creates a new comment thread on a Canva design.
Create Design Import Job
Imports an external file as a new Canva design.
Create Design Resize Job
Creates a resized copy of an existing design (Canva Pro/Enterprise only).
Create URL Asset Upload Job
Tool to create an asynchronous Canva asset import job from a public URL.
Delete asset by id
You can delete an asset by specifying its assetId.
Exchange oauth 2 0 access or refresh token
The OAuth 2.
Fetch asset upload job status
Polls for asset upload job completion status.
Fetch canva connect signing public keys
The API for verifying Canva webhooks, 'connect/keys,' is in preview, meaning unstable, not for public integrations, and provides a rotating JWK for signature verification to prevent replay attacks.
Fetch current user details
Returns the User ID, Team ID, and display name of the user account associated with the provided access token.
Fetch design metadata and access information
Gets the metadata for a design.
Get design comment thread replies
Retrieves a list of replies for a comment or suggestion thread on a design.
Get specific design comment reply
Retrieves a specific reply to a comment or suggestion thread on a design.
Get design export job result
Polls for design export job completion status.
Get designs designid comments threadid
Retrieves metadata for a comment or suggestion thread on a design.
Get design export formats
Lists available file formats for exporting a design.
Get URL asset upload job status
Tool to retrieve the status and result of a URL-based asset upload job.
Get URL import job status
Polls for URL import job completion status.
Get user capabilities
Lists the API capabilities for the user account associated with the provided access token.
Initiate canva design autofill job
Upcoming brand template ID updates require migration within 6 months.
List design pages with pagination
Preview API for Canva: subject to unannounced changes and not for public integrations.
List folder items by type with sorting
Lists the items in a folder, including each item's type.
List User Designs
Provides a summary of Canva user designs, includes search filtering, and allows showing both self-created and shared designs with sorting options.
Move item to specified folder
Transfers an item to a different folder by specifying both the destination folder's ID and the item's ID.
Create new Canva design
Creates a new Canva design with preset type or custom dimensions.
Post designs designid comments
Creates a comment thread on a Canva design.
Create reply to comment thread
Tool to create a reply to a comment or suggestion thread on a Canva design.
Start design export job
Starts a new asynchronous job to export a Canva design file.
Create folder
Tool to create a folder in Canva.
Create URL Import Job
Tool to start an asynchronous job to import an external file from a URL as a new design in Canva.
Remove folder and move contents to trash
Deletes a folder by moving the user's content to Trash and reassigning other users' content to their top-level projects.
Retrieve app public key set
Returns the Json Web Key Set (public keys) of an app.
Retrieve asset metadata by id
You can retrieve the metadata of an asset by specifying its assetId.
Retrieve brand template dataset definition
Canva's brand template IDs will change later this year, including a 6-month integration migration.
Retrieve canva enterprise brand template metadata
Upcoming update will change brand template IDs; integrations must migrate within 6 months.
Retrieve design autofill job status
API users with Canva Enterprise membership can retrieve design autofill job results, potentially requiring multiple requests until a success or failed status is received.
Retrieve design import job status
Polls for design import job completion status.
Retrieve Design Resize Job Status
Retrieves the status and results of a design resize job.
Retrieve folder details by id
Gets the name and other details of a folder using a folder's folderID.
Retrieveuserprofiledata
Currently, this returns the display name of the user account associated with the provided access token.
Revoke oauth tokens
Revoke a refresh token to end its lineage and user consent, requiring re-authentication.
Update asset s name and tags by id
You can update the name and tags of an asset by specifying its assetId.
Update folder details by id
Updates a folder's details using its folderID.
Validate oauth token properties
Check an access token's validity and properties via introspection, requiring authentication.
How to build Canva MCP Agent with another framework
ChatGPT Work
Use Canva MCP with ChatGPT Work](/content/toolkits/canva/framework/chatgpt/index.html)
Antigravity
Use Canva MCP with Antigravity](/content/toolkits/canva/framework/antigravity/index.html)
OpenAI Agents SDK
Use Canva MCP with OpenAI Agents SDK](/content/toolkits/canva/framework/open-ai-agents-sdk/index.html)
Claude Agent SDK
Use Canva MCP with Claude Agent SDK](/content/toolkits/canva/framework/claude-agents-sdk/index.html)
Claude Code
Use Canva MCP with Claude Code](/content/toolkits/canva/framework/claude-code/index.html)
Claude Cowork
Use Canva MCP with Claude Cowork](/content/toolkits/canva/framework/claude-cowork/index.html)
Codex
Use Canva MCP with Codex](/content/toolkits/canva/framework/codex/index.html)
Kimi Code
Use Canva MCP with Kimi Code](/content/toolkits/canva/framework/kimi/index.html)
Grok Build
Use Canva MCP with Grok Build](/content/toolkits/canva/framework/grok-build/index.html)
Cursor
Use Canva MCP with Cursor](/content/toolkits/canva/framework/cursor/index.html)
VS Code
Use Canva MCP with VS Code](/content/toolkits/canva/framework/vscode/index.html)
OpenCode
Use Canva MCP with OpenCode](/content/toolkits/canva/framework/opencode/index.html)
OpenClaw
Use Canva MCP with OpenClaw](/content/toolkits/canva/framework/openclaw/index.html)
CLI
Use Canva MCP with CLI](/content/toolkits/canva/framework/cli/index.html)
Google ADK
Use Canva MCP with Google ADK](/content/toolkits/canva/framework/google-adk/index.html)
LangChain
Use Canva MCP with LangChain](/content/toolkits/canva/framework/langchain/index.html)
Vercel AI SDK
Use Canva MCP with Vercel AI SDK](/content/toolkits/canva/framework/ai-sdk/index.html)
Mastra AI
Use Canva MCP with Mastra AI](/content/toolkits/canva/framework/mastra-ai/index.html)
LlamaIndex
Use Canva MCP with LlamaIndex](/content/toolkits/canva/framework/llama-index/index.html)
CrewAI
Use Canva MCP with CrewAI](/content/toolkits/canva/framework/crew-ai/index.html)
Pydantic AI
Use Canva MCP with Pydantic AI](/content/toolkits/canva/framework/pydantic-ai/index.html)
AutoGen
Use Canva MCP with AutoGen](/content/toolkits/canva/framework/autogen/index.html)
More Toolkits
Explore Other Toolkits
Figma
Oauth2Api Key
Figma is a collaborative interface design tool for teams and individuals. It streamlines design workflows with real-time collaboration and easy sharing.](/content/toolkits/figma/index.html)
Abyssale
Api Key
Abyssale is a creative automation platform for generating images, videos, GIFs, PDFs, and HTML5 content programmatically. It streamlines and scales visual content production for marketing, design, and operations teams.](/content/toolkits/abyssale/index.html)
Alttext ai
Api Key
AltText.ai is a service that generates alt text for images automatically. It helps boost accessibility and SEO for your visual content.](/content/toolkits/alttext_ai/index.html)
Are.na
Api Key
Are.na is a creative research platform for collecting images, links, notes, and ideas in channels. Use it to organize inspiration, build knowledge maps, and connect research across projects.](/content/toolkits/arena/index.html)
FAQ
Frequently asked questions
What are the differences in Tool Router MCP and Canva MCP?+
With a standalone Canva MCP server, the agents and LLMs can only access a fixed set of Canva tools tied to that server. However, with the Composio Tool Router, agents can dynamically load tools from Canva and many other apps based on the task at hand, all through a single MCP endpoint.
Can I use Tool Router MCP with Hermes?+
Yes, you can. Hermes fully supports MCP integration. You get structured tool calling, message history handling, and model orchestration while Tool Router takes care of discovering and serving the right Canva tools.
Can I manage the permissions and scopes for Canva while using Tool Router?+
Yes, absolutely. You can configure which Canva scopes and actions are allowed when connecting your account to Composio. You can also bring your own OAuth credentials or API configuration so you keep full control over what the agent can do.
How safe is my data with Composio Tool Router?+
All sensitive data such as tokens, keys, and configuration is fully encrypted at rest and in transit. Composio is SOC 2 Type 2 compliant and follows strict security practices so your Canva data and credentials are handled as safely as possible.
Start with Canva. It takes 30 seconds.
Managed auth, hosted MCP servers, and every Canva tool your agent needs. Free to start.