Skip to main content Announcing Tool Gateway MCP: the universal MCP Read the announcement
Live 36 Actions

Canva MCP Server
for AI Agents

Connect your AI agent to StackOne's Canva MCP server and give it 36 MCP tools out of the box. Auth, tool execution, and security all managed.

Canva logo
Canva MCP Server
Built by StackOne StackOne
DrataGPLocalyzeFlipMindtoolsScreenloop

Coverage

36 Agent Actions

Create, read, update, and delete across Canva — and extend your agent's capabilities with custom actions.

Authentication

Agent Tool Authentication

Per-user OAuth in one call. Your Canva MCP server gets session-scoped tokens with zero credentials stored on your infra.

Agent Auth →

Security

Agent Protection

Every Canva tool response scanned for prompt injection in milliseconds — 88.7% accuracy, all running on CPU.

Prompt Injection Defense →

Performance

Max Agent Context. Min Cost.

Free up to 96% of your agent's context window to enhance reasoning and reduce cost, on every Canva call.

Tools Discovery →

What is the Canva MCP Server?

A Canva MCP server lets AI agents read and write Canva data through the Model Context Protocol — Anthropic's open standard for connecting LLMs to external tools. StackOne's Canva MCP server ships with 36 pre-built actions, fully extensible via the Connector Builder — plus managed authentication, prompt injection defense, observability, and agent execution runtime. Connect it from MCP clients like Claude Desktop, Claude Code, Cursor, Goose, and VS Code, or from agent frameworks like OpenAI Agents SDK, LangChain, and Vercel AI SDK.

All Canva MCP Tools

Every action from Canva's API, ready for your agent. Create, read, update, and delete — scoped to exactly what you need.

Designs

  • Create Design

    Create a new Canva design

  • List Designs

    List designs owned by the authenticated user

  • Get Design

    Retrieve a design by its ID

Folder Items

  • List Folder Items

    List items in a folder

  • Move Folder Item

    Move an item to a different folder

Folders

  • Create Folder

    Create a new folder

  • Get Folder

    Retrieve a folder by its ID

  • Update Folder

    Update a folder's name

  • Delete Folder

    Delete a folder

Assets

  • Get Asset

    Retrieve an asset by its ID

  • Update Asset

    Update an asset's metadata

  • Delete Asset

    Delete an asset

Asset Upload Jobs

  • Create Asset Upload Job

    Start an asset upload job via URL

  • Get Asset Upload Job

    Get the status and result of an asset upload job

Jobs

  • Create Export Job

    Start a design export job

  • Get Export Job

    Get the status and result of an export job

Comment Threads

  • Create Comment Thread

    Create a new comment thread on a design

  • Get Comment Thread

    Retrieve a comment thread from a design

Brand Templates

  • Publish Brand Template

    Publish a design as a brand template

  • List Brand Templates

    List brand templates owned by the authenticated user

  • Get Brand Template

    Retrieve a brand template by its ID

Unified Groups

  • List Unified Groups

    List the teams in the Canva organization as groups, read from the Canva Admin API. Each record has the team id, name and created date.

  • Get Unified Group

    Retrieve one Canva team as a group, read from the Canva Admin API. Fields match unified_list_groups.

Unified Organizations

  • List Unified Organizations

    List the Canva organization the connection belongs to, read from the Canva Admin API. A connection has exactly one organization, so the list always has one record.

  • Get Unified Organization

    Retrieve the Canva organization the connection belongs to, read from the Canva Admin API. A connection has exactly one organization, so only `self` (or the id from the list) resolves; any other id returns 404.

Unified Roles

  • List Unified Roles

    List the six roles Canva defines, three for the organization and three for teams. The Canva Admin API has no roles endpoint, so the list is fixed.

  • Get Unified Role

    Retrieve one of the six roles Canva defines by id, such as team_designer. An id outside the catalog returns 404.

Unified Users

  • List Unified Users

    List the users in the Canva organization, read from the Canva Admin API. Each record has the email, name and last active time. Pass expand roles or groups to add the user's organization and team roles or teams.

  • Get Unified User

    Retrieve one Canva user as an IAM user, read from the Canva Admin API. Fields match unified_list_users, including expand roles and groups.

Other (7)

  • Create Reply

    Add a reply to a comment thread

  • List Design Pages

    List pages in a design

  • List Replies

    List replies in a comment thread

  • Get Current User

    Retrieve the authenticated user's information

  • Get User Profile

    Retrieve the authenticated user's profile

  • Get Unified Credentials

    Return the identity behind the current Canva connection. On the Admin API connection that is the client id, checked against the Admin API; on the Connect connection it is the signed-in user, with the display name when the token has the profile scope.

  • IAM Auth Test

    Validate the current Canva Connect OAuth token by calling /users/me and return the raw, unmapped response (team_user.user_id, team_user.team_id). Use this for debugging token expiry, refresh failures, or revocation rather than for normal app flows — unified_get_me is the unified IAM credentials wrapper for the same data.

Set Up Your Canva MCP Server in Minutes

One endpoint. Any framework. Your agent is talking to Canva in under 10 lines of code.

Agent Frameworks

Claude Desktop
{
  "mcpServers": {
    "stackone": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote@latest",
        "https://api.stackone.com/mcp?x-account-id=<account_id>",
        "--header",
        "Authorization: Basic <YOUR_BASE64_TOKEN>"
      ]
    }
  }
}

Check More Design & Visual MCP Servers

Canva MCP Server FAQ

Does StackOne have a Canva MCP server?
Yes. StackOne offers a hosted Canva MCP server with 36 pre-built actions, and every action is tested and QA'd by StackOne. Connect it to Claude, Cursor, and any other MCP client, or to any agent framework through the AI Action SDK. It ships with managed agent authentication, prompt injection defense, and tool discovery with server-side execution that preserve your agent's context window and keep reasoning performance.
Canva MCP server vs direct API integration — what's the difference?
A Canva MCP server and direct API integration serve different use cases. Direct API integration is for software-to-software — backend code calling Canva. A Canva MCP server is for AI agents — MCP clients like Claude and Cursor, plus framework agents built with OpenAI, LangChain, or Vercel AI — discovering and calling Canva at runtime. StackOne provides both.
How does Canva authentication work for AI agents?
Canva authentication for AI agents works through a StackOne Connect Session. Create one via the dashboard or the SDK — you get an auth link and ready-to-paste config for Claude Desktop, Cursor, and other MCP clients. Your user authenticates their own Canva account; StackOne handles token exchange, storage, and refresh. Credentials never reach the LLM, and each user is isolated via origin_owner_id.
Are Canva MCP tools vulnerable to prompt injection?
Yes — Canva MCP tools can be vulnerable to indirect prompt injection. Any tool that reads user-written content — documents, messages, tickets, records, or free-text fields — is a potential vector. StackOne Defender scans every tool response before it enters the agent's context — regex patterns in ~1ms, then a MiniLM classifier in ~4ms. 88.7% accuracy, CPU-only.
What is the context bloat of a Canva agent and how do I avoid it?
Context bloat happens when Canva tool schemas and API responses eat your Canva agent's memory, preventing it from reasoning effectively. A single Canva query can return a massive JSON response, and connecting multiple tools compounds the problem. Tools Discovery and Code Mode reduce context bloat — loading only relevant tools per query and keeping raw responses out of the agent's context.
Can I limit which actions my Canva agent can access?
Yes — you can limit which actions your Canva agent can access directly from the StackOne dashboard. Toggle actions on or off, or restrict them to specific accounts, with no code changes to your agent. Session tokens can be scoped to exact actions so if one leaks, exposure stays contained.
Can I create custom agent actions for my Canva MCP server?
Yes — you can create custom agent actions for your Canva MCP server using Connector Builder. It's an integration agent your coding assistant (Claude Code, Cursor, or Copilot) can invoke to research Canva's API, generate production-ready connector YAML, test against the live API, and validate before you ship.
When should I NOT use a Canva MCP server?
Skip a Canva MCP server if your integration is purely software-to-software — direct Canva API integration is simpler when no AI agent is involved. For deterministic, compliance-critical operations (financial transactions, regulatory reporting), direct API gives you predictable behavior without agent-driven decision-making. MCP shines when AI agents need to dynamically discover and call Canva actions at runtime.
What AI frameworks and AI clients does the StackOne Canva MCP server support?
The StackOne Canva MCP server supports both. MCP clients (paste-and-go apps): Claude Desktop, Claude Code, Cursor, VS Code, Goose. Agent frameworks (code SDKs you build with): OpenAI Agents SDK, Anthropic, Vercel AI, Google ADK, CrewAI, Pydantic AI, LangChain, LangGraph, Azure AI Foundry.

Put your AI agents to work

All the tools you need to build and scale AI agent integrations, with best-in-class connectivity, execution, and security.