design
Canva MCP Integration for CrewAI
Connect Canva to CrewAI through the local KosmoKrator MCP gateway with scoped tools, credentials, and write policy.
Connect Canva to CrewAI
Expose KosmoKrator integrations to CrewAI workers as scoped local tools.
Wrap kosmo integrations:call for specific tasks or connect workers to a local MCP gateway. The gateway is local, scoped to this integration, and starts with
--write=deny so CrewAI can inspect read-capable tools without receiving write access by default.
Canva MCP Config for CrewAI
Use per-worker integration scopes to avoid giving every worker every tool.
{
"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
Expose only Canva instead of a broad multi-service tool list.
Reuse credentials already configured for the KosmoKrator CLI and Lua runtime.
Start read-only, then opt into ask or allow for trusted workspaces.
Canva Tools Visible to CrewAI
CrewAI sees stable MCP tool names generated from the Canva integration catalog.
| MCP tool | Source function | Type | Description |
|---|---|---|---|
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. |