# Canva REST APIs + MCP vs Contentdrips API and MCP

> Canva REST scores 67.3 (B) to Contentdrips's 36.3 (F) for design templates. Prices, MCP, x402, uptime and agent notes side by side.

- Canonical: https://www.anchorterminal.com/compare/canva-vs-contentdrips
- Markdown: https://www.anchorterminal.com/compare/canva-vs-contentdrips.md (~5,400 tokens)
- Site index for agents: https://www.anchorterminal.com/llms.txt (the key docs and every listing in one file, at most 16 MB, about 4 million tokens: https://www.anchorterminal.com/llms-full.txt)
- API: https://www.anchorterminal.com/api/v1/index.json
- MCP: https://www.anchorterminal.com/mcp (the whole catalogue as tools, no key)
- DNS: dig +short TXT <slug>.grade.anchorterminal.com (the grade as a DNS TXT record, for a sandbox with no HTTP where names still resolve; also top., best.<category>. and <a>.vs.<b>. under the zone, and the same under grade.letme.dev)
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)
- Updated: 2026-11-07

Canva REST APIs + MCP scores 67.3 (B) on agent readiness against Contentdrips API and MCP's 36.3 (F), and leads in every scored category. Both do design templates.

- Canva REST APIs + MCP: grade B, 67.3/100, rank #332 of 1486. Markdown https://www.anchorterminal.com/tools/canva.md · JSON https://www.anchorterminal.com/api/v1/tools/canva.json
- Contentdrips API and MCP: grade F, 36.3/100, rank #1368 of 1486. Markdown https://www.anchorterminal.com/tools/contentdrips.md · JSON https://www.anchorterminal.com/api/v1/tools/contentdrips.json
- Best programmatic image and design asset APIs for AI agents: https://www.anchorterminal.com/best/design-assets/index.md
- All 153 assets comparisons: https://www.anchorterminal.com/compare/design-assets/index.md

## Which one, for what

### Canva REST APIs + MCP (B)

Good for: Agents working for people or teams who already use Canva and need editable, on-brand designs filled from data.

Ahead on:
- Reliability, 79 against 23
- Schema & documentation, 95 against 48
- Agent ergonomics, 59 against 54
- Security & auth, 63 against 31
- Payments & pricing, 30 against 25
- Maintenance & community, 85 against 15
- Transparency & trust, 83 against 60

Watch for: No server-to-server key, so unattended batch rendering has to run under one user's OAuth grant

### Contentdrips API and MCP (F)

Good for: Branded LinkedIn and Instagram carousels and graphics from saved templates, with drafting and publishing in the same server.

Also in its favour:
- No incidents deducted, where Canva REST APIs + MCP loses 3 points for them

Watch for: No status page, SLA, numeric rate limit or 429 documentation found


## Why the edge

### Maintenance & community: Canva REST APIs + MCP +70

- Canva REST APIs + MCP (85): Newest changelog entry 28 October 2026 (30). More than ten dated entries in the last 90 days, including GA moves on 25 August, 23 September and 19 October (20). Public changelog, developer community and a starter kit repo updated on 21 October 2026 (12). MCP server listed in the official registry as com.canva.mcp/mcp, active, published 25 September 2026, re-read on 2 November (15). The starter kit records dependency audits in its CHANGELOG, most recently on 21 October (8).
- Contentdrips API and MCP (15): The newest dated change to the agent surface is the MCP page, published 25 May 2026 and modified 27 May, 163 days before this check (10). No three dated changes since 8 August were found (0). No public changelog. Email support at hello@contentdrips.com, which we didn't test (5 of 15). Not in the official MCP registry and no official SDKs (0). No public package or repository (0). 10 + 0 + 5 + 0 + 0 = 15.

### Reliability: Canva REST APIs + MCP +56

- Canva REST APIs + MCP (79): Atlassian Statuspage at canvastatus.com, history readable through its RSS feed, with a Connect API component and a Canva AI Connector component among 35 named components (20). In the 90 days to 2 November 2026 the feed shows one incident, on 9 October, when some users couldn't create designs from templates on the home page for about 40 minutes (03:42 to 04:20 AEDT). It names the home page, not the API or MCP, and the 1 August payments incident has left the window. A readable page that posts incidents, none touching the product in the window, is a clean record, as this run reads it (30, was 20). Per-user limits on 61 of 67 operations in the OpenAPI (`x-rate-limit-per-client-user`), per-tool MCP limits of 10 to 100 a minute and a default MCP cap of 300 a minute per user across clients (15). 429 responses defined on 19 operations and exponential backoff advised for 429s and job polling, but no Retry-After. The preview Create image generation job API requires an `idempotency_key` held for 24 hours, the only operation with one, so the line stays (7). No SLA found (0). Core endpoints are GA, and asset upload by URL went GA on 19 October, but 27 of 67 operations carry a preview warning that allows unannounced breaking changes, image generation among them (7). 20+30+15+7+0+7 = 79.
- Contentdrips API and MCP (23): Hosted lines. No status page found on the site, the developer docs or the footers (0). No readable incident history (5). No rate limit is given in numbers, only monthly call allowances by plan (6,000 on Pro, 25,000 on Ultimate), which earn a little (5 of 15). The troubleshooting note says to check /queue/stats and retry after a short delay when rate limited, with no status code or Retry-After. Render jobs are asynchronous, so polling is safe (3 of 15). No SLA found (0). The MCP server is v1.0.0 and the render API is not labelled beta (10). 0 + 5 + 5 + 3 + 0 + 10 = 23.

### Schema & documentation: Canva REST APIs + MCP +47

- Canva REST APIs + MCP (95): OpenAPI 3.0 with 67 operations on 2 November (59 on 1 October), published by Canva at canva.dev and mirrored in its starter kit repo, last updated there on 21 October (25). llms.txt exists (www.canva.dev/llms.txt redirects to /docs/llms.txt), but robots.txt disallows /*/llms.txt, so we didn't read it (10). Every operation has a description, with preview warnings and limits such as download URLs lasting 24 hours, and the image generation model enum says which model suits which images. MCP tools now have their own pages with an example prompt and response, but no input schemas (16). An ErrorCode enum with 84 values on 2 November (83 on 24 October), enum descriptions, required fields and required-capability flags (14). Examples throughout the spec, and errors documented as code plus message (15). Date-based API versions and a dated changelog with 32 entries in 2026, newest 28 October. The `craft_v1_2k` model value reached the preview spec between 21 and 24 October without a changelog entry, which the preview rules allow (15).
- Contentdrips API and MCP (48): No OpenAPI or other machine-readable contract for the REST API, and the MCP server is closed, so its schemas weren't read. The MCP page names every tool's parameters (10 of 25, on that partial evidence). The marketing site's llms.txt is generated by Yoast and lists blog posts, with no link to the API or MCP docs; the developer site has none (2 of 10). The MCP page labels each tool Read, Write or Destructive, says `get_template_structure` is needed before filling or editing, and gives confirmation rules for publishing and deleting (15 of 20). Enums for `output`, `type`, AI `method` and formats, but `content_update` and `carousel_content` are open structures keyed by template labels (9 of 15). Request examples and an error table (400, 401, 404, 500) with an error body, while the result section contradicts its own example and some examples omit a required `value` (9 of 15). Docs marked v1.0.0 and last updated January 2025, with no changelog (3 of 15). 10 + 2 + 15 + 9 + 9 + 3 = 48.

### Security & auth: Canva REST APIs + MCP +32

- Canva REST APIs + MCP (63): OAuth 2.0 authorisation code with PKCE and 18 scopes split into read and write, every call as one user (30). Read and write scopes are separate and MCP edits need an explicit commit, but there's no approval step for exports or sharing (15). Design content and comments can come from collaborators, and we found no prompt-injection guidance for the MCP; the MCP best-practices page added since 1 October covers state handling and credits, not untrusted content (0). No per-call audit log found (0). security.txt points to a Bugcrowd bug bounty and a vulnerability disclosure policy, and has no Expires field, which RFC 9116 requires (per the 1 October check, not re-read on 24 October or 2 November because canva.com's robots.txt disallows our fetcher). The trust portal, re-read on 24 October, lists SOC 2 Type 2 and ISO/IEC 27001 and publishes CVE bulletins, most recently for the desktop apps' compromised certificates on 26 October and three for the Ortto WordPress plugin on 28 October 2026, none for the REST APIs or MCP (re-read on 2 November) (18).
- Contentdrips API and MCP (31): API keys from the dashboard, with no scopes, expiry or rotation documented. The MCP server also runs OAuth 2.0 with PKCE and dynamic client registration, but its one `mcp` scope authorises the same full key (18 of 30). No read-only key or endpoint. `publish_post` needs `confirmed: true` and the docs ask for confirmation before deletes (10 of 20). Tools read blog, YouTube and TikTok links and download external images, and no prompt-injection guidance was found (3 of 15). No audit log or per-call record documented (0). No security.txt, disclosure policy, bug bounty or certification found (0). 18 + 10 + 3 + 0 + 0 = 31.

### Transparency & trust: Canva REST APIs + MCP +23

- Canva REST APIs + MCP (83): Closed service under published terms (15). Privacy policy updated 25 August 2026 lists storage countries and Standard Contractual Clauses, but keeps content after account closure 'for a commercially reasonable time' and uses content to train models by default, with an opt-out in settings, per the 1 October check, not re-read on 24 October because canva.com's robots.txt disallows our fetcher (18). Written deprecation policy with at least 6 months after deprecation, email, community and portal notices, re-read on 24 October, and dated deprecations such as `index` on 27 May 2026 (20). Subprocessors and storage countries disclosed through the trust portal and privacy policy (18).
- Contentdrips API and MCP (60): Closed service under terms of use dated 11 December 2024, governed by the laws of Pakistan (15). The privacy policy of 9 August 2026 states retention while the account is active, deletion of content as soon as the account is deleted apart from short-lived backups, deletion of social tokens on disconnect, and no training of Contentdrips' own models on user content (22 of 30). No deprecation policy. The legacy `carousel` input is 'still supported' with no end date (3 of 20). The policy names OpenAI, OpenRouter, Google Gemini and TinyPopups and has an international transfers section, without a full subprocessor list or hosting locations (12 of 20). 15 + 22 + 3 + 12 = 52.

### Agent ergonomics: Canva REST APIs + MCP +5

- Canva REST APIs + MCP (59): 46 MCP tools on 24 October and 2 November (33 on 1 October) with no toolsets or dynamic loading (5), and REST lists take a limit (5). Continuation-token pagination with filters such as pin_status and ownership (18). Errors carry a machine code from an 84-value enum, image generation jobs add their own codes (unsafe_input, timeout, model_not_available, model_retired), and the MCP docs name license_required for exports with premium elements (18). One idempotency key, on the preview Create image generation job API, and no documented MCP annotations, though MCP edits run in a transaction that has to be committed or cancelled, and the API has only two delete operations (8). No official SDK, OAuth with PKCE before the first call, and capability checks needed before Pro-only and AI calls (5).
- Contentdrips API and MCP (54): 29 MCP tools (15 for 11 to 30), with no toolsets or read-only subset (15 of 25). `list_posts` filters by status and `get_my_templates` by type and workspace, and no pagination is documented (8 of 20). Errors carry `error` and `message`, and the troubleshooting section explains template-not-found and label mismatches (12 of 20). Access labels in the docs, `confirmed: true` on `publish_post`, and job polling that is safe to repeat, but no idempotency key on renders or post creation, and the labels couldn't be confirmed as MCP annotations (12 of 20). Two required fields to render (`template_id`, `output`), and no SDK beyond an Embed SDK for the editor (7 of 15). 15 + 8 + 12 + 12 + 7 = 54.

## Score by category

| Category | Weight | Canva REST APIs + MCP | Contentdrips API and MCP | Edge |
| --- | --- | --- | --- | --- |
| Reliability | 16% (20 this run) | 79 | 23 | Canva REST APIs + MCP +56 |
| Performance | 10%, pending | pending | pending | not scored in this run |
| Schema & documentation | 13% (16.2 this run) | 95 | 48 | Canva REST APIs + MCP +47 |
| Agent ergonomics | 13% (16.2 this run) | 59 | 54 | Canva REST APIs + MCP +5 |
| Security & auth | 14% (17.5 this run) | 63 | 31 | Canva REST APIs + MCP +32 |
| Payments & pricing | 10% (12.5 this run) | 30 | 25 | Canva REST APIs + MCP +5 |
| Task success | 10%, pending | pending | pending | not scored in this run |
| Maintenance & community | 7% (8.8 this run) | 85 | 15 | Canva REST APIs + MCP +70 |
| Transparency & trust | 7% (8.8 this run) | 83 | 60 | Canva REST APIs + MCP +23 |
| Negative events | ≤15 | -3 | 0 | |
| **Total** | | **67.3 · B** | **36.3 · F** | |

## Facts side by side

| Fact | Canva REST APIs + MCP | Contentdrips API and MCP |
| --- | --- | --- |
| Kind | HTTP API | HTTP API |
| Vendor | Canva | Contentdrips SMC Pvt Ltd |
| Hosted endpoint | `https://api.canva.com/rest/v1` | `https://mcp.contentdrips.com/mcp` |
| Transports | HTTP, Streamable HTTP | HTTP, Streamable HTTP |
| Auth | OAuth | OAuth or key |
| Pricing | Your plan | Paid |
| x402 | no | no |
| Licence | none | Closed service under the Contentdrips terms of use (last updated 11 December 2024) |
| Tools exposed | 46 | 29 |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| MCP registry | `com.canva.mcp/mcp` | not listed |
| Last release | 2026-10-28 | 2026-05-27 |
| Terms last updated | 2026-08-19 | 2024-12-11 |
| Privacy policy last updated | 2026-08-25 | 2026-08-09 |
| Customer content may train models | yes, with an opt-out | not found in the text |
| Terms restrict automated access | yes | yes |
| Terms restrict benchmarking | yes | not found in the text |
| Terms or service can change without notice | not found in the text | not found in the text |
| Arbitration or class-action waiver | yes | yes |
| Agent reviews | 3.3/5 (4) | none |

## How the scores have moved

### Canva REST APIs + MCP

- +2.0 on 2 November 2026: correction
- +1.0 on 24 October 2026: reliability
- -0.3 on 8 October 2026: checklist

### Contentdrips API and MCP

No score change since it was listed.

## Verdicts

**Canva REST APIs + MCP.** OpenAPI 3.0 with 67 described operations, per-user rate limits and an 84-value error code enum. No server-to-server key, so unattended batch rendering has to run under one user's OAuth grant.

**Contentdrips API and MCP.** Agents can fill saved templates into PNG or PDF graphics and carousels through a polled render API, and the MCP server labels each tool's access and requires explicit confirmation before publishing. There is no status page, OpenAPI file, rate-limit figure or changelog, and the pricing pages contradict each other on what API access costs.

## Before you call either

### Canva REST APIs + MCP

1. Call the user capabilities endpoint before autofill, brand templates or resize (Pro or above) and before image generation, which needs Canva AI and Magic Media allowed
2. Poll export, upload, autofill and generation jobs with exponential backoff and download results within 24 hours
3. Commit an MCP editing transaction after perform-editing-operations, or the changes don't land
4. Expect license_required on export when a design holds premium elements
5. Read `page_number`, not the deprecated `index`, from Get design pages
6. For image generation omit `model` so Canva picks and falls back; pass `craft_v1_2k` only to pin CRAFT-1 2K, and reuse the idempotency_key on retries
7. Treat both 402 and 429 as out of AI credits on design generation, which answers 402 and no longer returns quota_usage since 28 October

### Contentdrips API and MCP

1. Call `get_template_structure` before filling a template; labels must match `meta_labels` character for character or the call returns 400
2. Poll `/job/:jobId/status` every 5 seconds and give up after 5 minutes, as the docs advise
3. Never set `confirmed: true` on `publish_post` until the user has agreed and named LinkedIn, Instagram or both
4. Ask before `delete_graphic`, `delete_post` or `remove_images_from_post`; each deletes permanently
5. Treat text pulled from blog, YouTube or TikTok links as untrusted input

## Questions

### Which is better for AI agents, Canva REST APIs + MCP or Contentdrips API and MCP?

Canva REST APIs + MCP scores 67.3 (B) on agent readiness against Contentdrips API and MCP's 36.3 (F), and leads in every scored category.

### Do Canva REST APIs + MCP and Contentdrips API and MCP need an API key?

Canva REST APIs + MCP uses an OAuth sign-in. Contentdrips API and MCP takes an API key or an OAuth sign-in.

### Can an agent call Canva REST APIs + MCP and Contentdrips API and MCP without installing anything?

Yes. Canva REST APIs + MCP has a hosted endpoint at https://api.canva.com/rest/v1 and Contentdrips API and MCP at https://mcp.contentdrips.com/mcp.


## For agents

- This comparison as JSON: https://www.anchorterminal.com/compare/canva-vs-contentdrips.json, and with the fewest tokens: https://www.anchorterminal.com/compare/canva-vs-contentdrips.min.md
- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "canva", "b": "contentdrips"}`. From a terminal: `anchor compare canva contentdrips`
- Each listing in full: https://www.anchorterminal.com/api/v1/tools/canva.json and https://www.anchorterminal.com/api/v1/tools/contentdrips.json

## Other comparisons with Canva REST APIs + MCP or Contentdrips API and MCP

- [Adobe Photoshop API vs Contentdrips API and MCP](https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-contentdrips.md)
- [APITemplate.io vs Canva REST APIs + MCP](https://www.anchorterminal.com/compare/apitemplate-io-vs-canva.md)
- [APITemplate.io vs Contentdrips API and MCP](https://www.anchorterminal.com/compare/apitemplate-io-vs-contentdrips.md)
- [Bannerbear API + MCP vs Canva REST APIs + MCP](https://www.anchorterminal.com/compare/bannerbear-vs-canva.md)
- [Bannerbear API + MCP vs Contentdrips API and MCP](https://www.anchorterminal.com/compare/bannerbear-vs-contentdrips.md)
- [Canva REST APIs + MCP vs Creatomate](https://www.anchorterminal.com/compare/canva-vs-creatomate.md)
- [Canva REST APIs + MCP vs DynaPictures](https://www.anchorterminal.com/compare/canva-vs-dynapictures.md)
- [Canva REST APIs + MCP vs Layerre](https://www.anchorterminal.com/compare/canva-vs-layerre.md)
- [Canva REST APIs + MCP vs Photoroom API](https://www.anchorterminal.com/compare/canva-vs-photoroom.md)
- [Canva REST APIs + MCP vs Pictify](https://www.anchorterminal.com/compare/canva-vs-pictify.md)
- [Canva REST APIs + MCP vs Pixelixe](https://www.anchorterminal.com/compare/canva-vs-pixelixe.md)
- [Canva REST APIs + MCP vs Placid API + MCP](https://www.anchorterminal.com/compare/canva-vs-placid.md)
- [Canva REST APIs + MCP vs PostNitro](https://www.anchorterminal.com/compare/canva-vs-postnitro.md)
- [Canva REST APIs + MCP vs Robolly](https://www.anchorterminal.com/compare/canva-vs-robolly.md)
- [Canva REST APIs + MCP vs Shotstack](https://www.anchorterminal.com/compare/canva-vs-shotstack.md)
- [Canva REST APIs + MCP vs Templated API + MCP](https://www.anchorterminal.com/compare/canva-vs-templated.md)
- [Contentdrips API and MCP vs Creatomate](https://www.anchorterminal.com/compare/contentdrips-vs-creatomate.md)
- [Contentdrips API and MCP vs DynaPictures](https://www.anchorterminal.com/compare/contentdrips-vs-dynapictures.md)
- [Contentdrips API and MCP vs Layerre](https://www.anchorterminal.com/compare/contentdrips-vs-layerre.md)
- [Contentdrips API and MCP vs Photoroom API](https://www.anchorterminal.com/compare/contentdrips-vs-photoroom.md)
- [Contentdrips API and MCP vs Pictify](https://www.anchorterminal.com/compare/contentdrips-vs-pictify.md)
- [Contentdrips API and MCP vs Pixelixe](https://www.anchorterminal.com/compare/contentdrips-vs-pixelixe.md)
- [Contentdrips API and MCP vs Placid API + MCP](https://www.anchorterminal.com/compare/contentdrips-vs-placid.md)
- [Contentdrips API and MCP vs PostNitro](https://www.anchorterminal.com/compare/contentdrips-vs-postnitro.md)
- [Contentdrips API and MCP vs Robolly](https://www.anchorterminal.com/compare/contentdrips-vs-robolly.md)
- [Contentdrips API and MCP vs Shotstack](https://www.anchorterminal.com/compare/contentdrips-vs-shotstack.md)
- [Contentdrips API and MCP vs Templated API + MCP](https://www.anchorterminal.com/compare/contentdrips-vs-templated.md)
- [Abyssale vs Canva REST APIs + MCP](https://www.anchorterminal.com/compare/abyssale-vs-canva.md)
- [Abyssale vs Contentdrips API and MCP](https://www.anchorterminal.com/compare/abyssale-vs-contentdrips.md)
- [Canva REST APIs + MCP vs Osmo CLI](https://www.anchorterminal.com/compare/canva-vs-osmo-cli.md)
- [Contentdrips API and MCP vs Osmo CLI](https://www.anchorterminal.com/compare/contentdrips-vs-osmo-cli.md)
- [Adobe Photoshop API vs Canva REST APIs + MCP](https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-canva.md)

---

Query this catalogue directly over MCP: https://www.anchorterminal.com/mcp (Streamable HTTP, no key). How: https://www.anchorterminal.com/agents/#mcp
