{
  "markdown": "# Canva Agent Skills\n\nAgent skills for working with Canva designs. This repo is a marketplace-style\npackage: root-level marketplace metadata points to one shared plugin package\nunder `plugins/canva/`, which supports Claude, Cursor, and Codex.\n\n## How This Repo Is Organized\n\nThis repo separates host entrypoints from the reusable Canva plugin package:\n\n```text\nmarketplace/catalog -> exposes plugin package -> plugin contains skills\n```\n\n- **Marketplaces/catalogs** expose installable plugins to a host.\n- **Plugins** are the installable distribution unit.\n- **Skills** live inside the plugin package because they are bundled with the\n  plugin when installed.\n\nThe shared Canva plugin package is `plugins/canva/`. It contains the active\n`skills/` directory, host-specific plugin manifests, and Canva MCP registration.\n\nThe root hidden folders are host entrypoints:\n\n- `.agents/plugins/marketplace.json` — Codex marketplace entrypoint\n- `.claude-plugin/marketplace.json` — Claude marketplace entrypoint\n- `.cursor-plugin/marketplace.json` — Cursor marketplace entrypoint\n- `.cursor/` — Cursor project config, not a marketplace\n\nEach host entrypoint folder has a small README with setup notes for that host.\n\n## Active Plugin Skills\n\nThese skills are exposed by every supported host through the shared\n`plugins/canva/skills/` directory.\n\n### resize-for-social-media\n\nResize designs for multiple social media platforms (Facebook, Instagram, LinkedIn) in one operation.\n\n**Use when:** You want to quickly distribute a design across multiple social media formats.\n\n**Capabilities:**\n\n- Creates platform-optimized versions (e.g. Facebook post/story, Instagram post/story, LinkedIn post)\n- Provides Canva edit links so users can download or refine each version\n- Resizes selected formats in parallel\n\n### bulk-create\n\nBulk-create Canva designs from tabular data using a brand template, one design per row.\n\n**Use when:** You want to generate many designs from a CSV, spreadsheet, pasted table, or JSON (e.g. one design per product or row).\n\n**Capabilities:**\n\n- Accepts tabular data from uploaded files, pasted content, or URLs\n- Finds brand templates that support autofill and maps columns to template fields\n- Creates one design per row with `autofill-design` (text, image, and chart fields where supported)\n- Requires Canva Enterprise for autofill\n\n### implement-feedback\n\nImplement reviewer feedback on a Canva design: read comment threads and apply the changes the API supports.\n\n**Use when:** A design has been reviewed and you want to apply the feedback without manually reading every comment thread and editing each slide.\n\n**Capabilities:**\n\n- Reads all comment threads and replies across the design\n- Triages feedback into actionable, ambiguous, and manual-only categories\n- Applies API-supported changes (text, formatting, images) after user approval\n- Presents a checklist of remaining manual changes with step-by-step instructions\n- Replies to comment threads after changes are made\n\n### edit-design\n\nMake safe, approval-gated edits to an existing Canva design.\n\n**Use when:** You want to change, fix, replace, or reformat content in a specific Canva design.\n\n**Capabilities:**\n\n- Starts a Canva editing transaction, performs batched operations, and commits only after approval\n- Changes text content and supported text formatting\n- Replaces, inserts, deletes, repositions, or resizes supported media and elements\n- Clearly flags changes that the Canva API cannot perform\n\n### get-design-feedback\n\nRead a Canva design and return structured, actionable design feedback.\n\n**Use when:** You want critique on visual hierarchy, copy, layout, spacing, consistency, readability, accessibility, or fit for purpose.\n\n**Capabilities:**\n\n- Reads rendered thumbnails and design text\n- Uses read-only inspection for layout details where available\n- Prioritizes page-specific findings with concrete fixes\n- Never edits or commits changes\n\n### brand-check\n\nCheck a Canva design against a brand kit and report where it diverges.\n\n**Use when:** You want to know whether a design is on brand, including colors, typography, logo handling, tone, and consistency.\n\n**Capabilities:**\n\n- Lists available brand kits and compares against the selected kit\n- Uses design and brand-kit thumbnails when exact colors or fonts are not available from the API\n- Marks findings as on brand, off brand, or can't verify\n- Offers to hand off fixable items to `edit-design` if the user wants changes made\n\n## Inactive Skills\n\nThe repo also keeps additional skill work under\n`plugins/canva/inactive-skills/`. These are not registered by any plugin host\nbecause each host exposes the same active subset from `plugins/canva/skills/`.\n\n- `branded-presentation`\n- `classroom-helper`\n- `design-translation`\n- `presentation-time-fitting`\n\n## Installation\n\nEach host uses the Canva MCP server at `https://mcp.canva.com/mcp`. Connect the\n`canva` MCP server and sign in to Canva when prompted.\n\n### Claude\n\nInstall from GitHub:\n\n```bash\n/plugin marketplace add canva-sdks/canva-skills\n/plugin install canva@canva-skills\n```\n\nIf you already added this marketplace before, refresh it instead:\n\n```bash\n/plugin marketplace update canva-skills\n```\n\nThis works in Claude Code, Claude Desktop, and other Claude clients that support\nplugin marketplaces. See [.claude-plugin/README.md](.claude-plugin/README.md)\nfor details.\n\n### Cursor\n\nCursor Marketplace installs use `.cursor-plugin/marketplace.json` and\n`plugins/canva/.cursor-plugin/plugin.json`. See\n[.cursor-plugin/README.md](.cursor-plugin/README.md) for marketplace details.\n\nTo use the skills while working in this repo:\n\n1. Open this repo in Cursor (`.cursor/mcp.json` and `.cursor/skills/` load automatically), or open `plugins/canva/` directly\n2. In **Settings → MCP Tools**, connect the `canva` server and sign in with Canva\n3. Use the skills naturally in agent chat — see [.cursor/README.md](.cursor/README.md) for details\n\n### Codex\n\n```bash\ncodex plugin marketplace add canva-sdks/canva-skills\ncodex plugin add canva@canva-skills\ncodex mcp login canva\n```\n\nIf you already added this marketplace before, refresh it instead:\n\n```bash\ncodex plugin marketplace upgrade canva-skills\n```\n\nThen start a new Codex thread and use `@canva` or ask for Canva workflows\nnaturally. See [.agents/plugins/README.md](.agents/plugins/README.md) for\ndetails.\n\nCodex uses `.agents/plugins/marketplace.json` to find the package at\n`plugins/canva/`, then `plugins/canva/.codex-plugin/plugin.json` for plugin\nmetadata, `plugins/canva/.mcp.json` for the Canva MCP server, and\n`plugins/canva/skills/` for the active skill set.\n\n## Usage\n\nSimply reference the skills naturally in your conversations:\n\n**Examples:**\n\n```\n# Social media resize\n\"Resize design DABcd1234ef for all social media platforms\"\n\n# Bulk create\n\"Bulk create designs from this spreadsheet using my brand template\"\n\n# Implement feedback\n\"Implement the feedback on my deck\"\n\n# Edit design\n\"Change the headline in this Canva design and make it bold\"\n\n# Design feedback\n\"Review this Canva design and tell me what to improve\"\n\n# Brand check\n\"Check this Canva design against my brand kit\"\n```\n\nWorks in Claude, Cursor, and Codex.\n\n## Repository Structure\n\n```\ncanva-skills/\n├── LICENSE\n├── README.md\n├── .agents/plugins/                      # Codex marketplace entrypoint\n│   ├── README.md\n│   └── marketplace.json\n├── .claude-plugin/                       # Claude marketplace entrypoint\n│   ├── README.md\n│   └── marketplace.json\n├── .cursor-plugin/                       # Cursor marketplace entrypoint\n│   ├── README.md\n│   └── marketplace.json\n├── .cursor/                              # Cursor project config, not a marketplace\n│   ├── README.md\n│   ├── mcp.json\n│   └── skills -> ../plugins/canva/skills\n└── plugins/\n    └── canva/\n        ├── README.md\n        ├── .claude-plugin/plugin.json    # Claude plugin manifest\n        ├── .cursor-plugin/plugin.json    # Cursor plugin manifest\n        ├── .codex-plugin/plugin.json     # Codex plugin manifest\n        ├── .cursor/                      # Cursor project config when opening package directly\n        ├── .mcp.json                     # MCP registration for Cursor marketplace and Codex\n        ├── skills/                       # Active plugin skills exposed by all hosts\n        │   ├── brand-check/\n        │   ├── bulk-create/\n        │   ├── edit-design/\n        │   ├── get-design-feedback/\n        │   ├── implement-feedback/\n        │   └── resize-for-social-media/\n        └── inactive-skills/              # Kept in repo, not registered by plugin hosts\n            ├── branded-presentation/\n            ├── classroom-helper/\n            ├── design-translation/\n            └── presentation-time-fitting/\n```\n\n## Contributing\n\nTo add a new skill:\n\n1. Create a new directory under `plugins/canva/inactive-skills/` while drafting, or under `plugins/canva/skills/` when it should be exposed by every plugin host\n2. Add a `SKILL.md` file with skill metadata and workflow\n3. Follow the existing skill patterns for consistency\n4. Register active skills in `plugins/canva/.claude-plugin/plugin.json` (Claude requires an explicit list; Cursor and Codex discover skills from `./skills/`)\n5. Update this README with the new skill\n\n## License\n\nApache License 2.0 - see [LICENSE](LICENSE) for details.\n",
  "bytes": 9319,
  "sha": "4bbeb131c0de496ba3ebff518619707cfe332d2864b7261a061ce7fdfe3d9ccf",
  "repo_slug": "canva-sdks/canva-skills",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_canva_sdks_canva_skills_canva_e922f5d4/readme"
}