KosmoKrator

design

Canva MCP Integration for LangGraph

Connect Canva to LangGraph through the local KosmoKrator MCP gateway with scoped tools, credentials, and write policy.

7 functions 5 read 2 write Bearer token auth

Connect Canva to LangGraph

Run KosmoKrator integration calls from LangGraph nodes while preserving local credentials and permissions.

Use a graph node that calls the KosmoKrator CLI for deterministic steps or an MCP client for dynamic tool selection. The gateway is local, scoped to this integration, and starts with --write=deny so LangGraph can inspect read-capable tools without receiving write access by default.

Canva MCP Config for LangGraph

Headless CLI calls fit repeatable graph edges; MCP fits exploratory agent nodes.

{
  "mcpServers": {
    "kosmokrator-canva": {
      "type": "stdio",
      "command": "kosmo",
      "args": [
        "mcp:serve",
        "--integration=canva",
        "--write=deny"
      ]
    }
  }
}

Run the Gateway Manually

kosmokrator mcp:serve --integration=canva --write=deny

Why Use KosmoKrator Here

Scoped tools

Expose only Canva instead of a broad multi-service tool list.

Local credentials

Reuse credentials already configured for the KosmoKrator CLI and Lua runtime.

Write policy

Start read-only, then opt into ask or allow for trusted workspaces.

Canva Tools Visible to LangGraph

LangGraph sees stable MCP tool names generated from the Canva integration catalog.

MCP toolSource functionTypeDescription
integration__canva__canva_list_designs canva.canva_list_designs Read List designs the user has access to in Canva. Supports filtering by search query and design type. Returns design titles and IDs that can be used with canva_get_design.
integration__canva__canva_get_design canva.canva_get_design Read Get details of a specific Canva design by its ID, including title, type, dimensions, and URLs.
integration__canva__canva_create_design canva.canva_create_design Write Create a new design in Canva. Specify a title and optionally a type (e.g., "presentation", "poster") and dimensions (width/height in pixels).
integration__canva__canva_list_folders canva.canva_list_folders Read List folders the user has access to in Canva. Returns folder names and IDs that can be used with canva_get_folder.
integration__canva__canva_get_folder canva.canva_get_folder Read Get details of a specific Canva folder by its ID, including name and contained items.
integration__canva__canva_upload_asset canva.canva_upload_asset Write Upload an asset to Canva from a URL. The file is imported into the user's Canva account and can optionally be placed in a specific folder.
integration__canva__canva_get_current_user canva.canva_get_current_user Read Get the authenticated Canva user's profile information, including display name and user ID.

Related Canva Pages