# DynaPictures vs PostNitro

> PostNitro scores 52.6 (D) to DynaPictures's 43.2 (E) for design templates. Prices, MCP, x402, uptime and agent notes side by side.

- Canonical: https://www.anchorterminal.com/compare/dynapictures-vs-postnitro
- Markdown: https://www.anchorterminal.com/compare/dynapictures-vs-postnitro.md (~5,000 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

PostNitro scores 52.6 (D) on agent readiness against DynaPictures's 43.2 (E), and leads in 4 of 7 scored categories. DynaPictures leads on schema & documentation, payments & pricing and transparency & trust. Both do design templates.

- DynaPictures: grade E, 43.2/100, rank #1239 of 1486. Markdown https://www.anchorterminal.com/tools/dynapictures.md · JSON https://www.anchorterminal.com/api/v1/tools/dynapictures.json
- PostNitro: grade D, 52.6/100, rank #974 of 1486. Markdown https://www.anchorterminal.com/tools/postnitro.md · JSON https://www.anchorterminal.com/api/v1/tools/postnitro.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

### DynaPictures (E)

Good for: Personalised images and PDFs per record, image URLs in emails and pages, and email countdown timers, for marketing teams in the EU.

Ahead on:
- Schema & documentation, 82 against 77
- Payments & pricing, 30 against 20
- Transparency & trust, 63 against 58

Also in its favour:
- Free to start without a card
- No incidents deducted, where PostNitro loses 3 points for them

Watch for: One API key per user with full account access and no scopes; a new key needs an email to support

### PostNitro (D)

Good for: An agent that must produce a designed, on-brand carousel or slide video and book it on LinkedIn, Instagram, TikTok, Threads, Facebook Pages or Pinterest in one chain.

Ahead on:
- Agent ergonomics, 68 against 45
- Security & auth, 56 against 26
- Maintenance & community, 65 against 4

Watch for: No status page, incident history or SLA was found


## Why the edge

### Maintenance & community: PostNitro +61

- DynaPictures (4): No changelog, release notes or dated API change was found, and the MCP server card gives version 1.0.0 with no date (0). No dated changes since 8 August (0). Support by email and contact form, not tested (4 of 15). Not in the official MCP registry and no API SDKs (0). No public package or repository (0). 0 + 0 + 4 + 0 + 0 = 4.
- PostNitro (65): CLI 1.6.0 tagged on 1 November 2026, with motion styles, post read and edit and an AI voiceover, against an Embed API release it names (30). CLI 1.3.0 (tagged 19 August), 1.4.1 (29 September), 1.5.0 (7 October) and 1.6.0 (1 November) fall in the 90 days, read from the repository's tags and changelog (20). Closed service with a dated CLI changelog, support by email and in-app chat, and public repositories with few outside contributions to judge replies by (8). No official MCP registry entry could be read, and the server card's `ai.postnitro/mcp` is a claim (0). The CLI publishes from a GitHub Actions workflow. The Embed SDK was last published on 15 July 2025, per the 14 October check (7). 30 + 20 + 8 + 0 + 7 = 65.

### Security & auth: PostNitro +30

- DynaPictures (26): One API key per user with the user's full access, not limited to workspaces or actions; a new key is requested by email to support, with no rotation in the account (10 of 30). No read-only mode, and the MCP server can author and change designs (3 of 20). Tools return the account's own templates and renders; image layers accept outside URLs (10 of 15). A list of generated images, with no audit log documented (3 of 15). No security.txt, disclosure policy, bug bounty or certification found (0). 10 + 3 + 10 + 3 + 0 = 26.
- PostNitro (56): The MCP server runs OAuth 2.1 with PKCE S256, dynamic client registration and a revocation endpoint, but with one broad `postnitro` scope, per the 14 October reading of its published metadata. Keys are `pn-` API keys sent in a header, generated in the web app, with no scopes or rotation documented (20). A read-only MCP server URL can't generate, edit, schedule or delete, and the destructive tools are annotated so a client can ask before running them. No read-only API key (14). The MCP docs, and the server when a client connects, say that slide text, names and captions derived from an article or X post are third-party content, never to follow instructions in it or let it choose tools (12). Per-job processing logs come back from the status endpoint. No account audit log was found (3). security.txt, expiring 1 November 2027, names support@postnitro.ai, with no disclosure policy, acknowledgement time, bug bounty or certification found (7). 20 + 14 + 12 + 3 + 7 = 56.

### Agent ergonomics: PostNitro +23

- DynaPictures (45): The MCP tool definitions weren't read (listing them needs a session), and llms.txt describes groups that include layer-by-layer design authoring, so the count is unknown. REST responses are small objects with image URLs (12 of 25). Template and generated-image listings, with no field selection documented (10 of 20). Errors are JSON with a `message` and documented statuses, without codes (12 of 20). Requests aren't idempotent, by the vendor's own note, though identical image URLs are served from cache without a credit (6 of 20). An Editor SDK for embedding the editor, and no API client SDKs (5 of 15). 12 + 10 + 12 + 6 + 5 = 45.
- PostNitro (68): 40 MCP tools load together on the main server URL (5). A read-only server URL serves only the 16 tools annotated `readOnlyHint`, the `DESIGN` output skips rendering and the `_and_wait` tools fold polling into one call (8 back, 13). Templates and brands page with `page` and `limit` up to 100, and scheduled posts filter by date range and social account (14). API errors reach the agent verbatim with their status and a plain message, the schedule error page lists every validation message, unknown keys are refused by name, and a missing ID returns the candidate IDs. A brand-limit error comes back as 401, per the 14 October check (14). Every create tool takes an `idempotencyKey`, and the MCP docs say every tool carries `readOnlyHint` and `destructiveHint`, naming the six destructive tools (20). Saved defaults and single-candidate auto-selection keep required arguments to one or two. Official code is a Node CLI and a browser editor SDK, one language (7). 13 + 14 + 14 + 20 + 7 = 68.

### Payments & pricing: DynaPictures +10

- DynaPictures (30): No x402, MPP or L402 (0). Image allowances per plan and AI credit packs ($20 for 1,000 credits) are public, but plan prices are filled in by the FastSpring script and weren't readable (10 of 20). Free plan and a 14-day trial with 30 API credits, no card (20). auth.md says a person has to copy the key; there is no OAuth or programmatic key (0). 0 + 10 + 20 + 0 = 30.
- PostNitro (20): No x402, MPP or L402 (0). Credit prices are public without a login at $0.04 a credit, 1 per imported slide and 2 per AI-written slide, with plan prices of $15, $30 and $60 a month (20). The web app has a free plan with no card, but the subscription docs, the MCP docs and llms.txt now agree there is no free API tier, and calls without a paid plan return 402 (0). A person signs up in a browser and generates a key, or approves OAuth in the client. Dynamic client registration removes the key step but not the signup (0). 0 + 20 + 0 + 0 = 20.

### Schema & documentation: DynaPictures +5

- DynaPictures (82): OpenAPI 3.1 at dynapictures.com/openapi.json with 20 paths (25). llms.txt, auth.md and an agent skill in Markdown (10). llms.txt says when to use the product and when it's a poor fit, and the skill gives call order for each job (17 of 20). Enums for formats and options, with layer overrides keyed by layer name (12 of 15). Request examples throughout and a status table in the skill, but the API reference's Errors section is unedited Slate template text about kittens (9 of 15). No URL version, additive changes, removals announced six months ahead with Deprecation and Sunset headers, and no changelog (9 of 15). 25 + 10 + 17 + 12 + 9 + 9 = 82.
- PostNitro (77): OpenAPI 3.1 document for the Embed API at `/.well-known/openapi/embed.json`, with 13 operations per the 14 October check and not re-read. The MCP docs now point to a public tool catalogue on the MCP host with every tool's input and output schema, which we didn't request, so the earlier partial is held (20). `llms.txt` (updated 29 October 2026), `llms-full.txt`, a docs `llms.txt` and `.md` twins (10). The docs state what each tool is for, when not to use PostNitro and the `embedPostId` and `designId` split, and the tool count now reads 40 on every page read (15). 24 enums, typed slide objects and per-platform settings with conditional rules per the 14 October check, and unknown keys in settings objects are now refused by name (12). Examples on each page and a full table of validation messages for the Schedule API (13). `info.version` 1.0.0 with no version in the path and no API changelog. The CLI has a dated Keep a Changelog file with semver (7). 20 + 10 + 15 + 12 + 13 + 7 = 77.

### Transparency & trust: DynaPictures +5

- DynaPictures (63): Closed service under terms (revision 2/2026) from DynaPictures GmbH in Freiburg, for business customers (15). The privacy policy names the controller, keeps generated images as long as needed or until deleted, gives plan image retention (3 months on Lite), and says the named AI providers don't train on API inputs under their API terms; other periods follow bookkeeping law (20 of 30). The OpenAPI file commits to six months' notice before removing an endpoint or field, with Deprecation and Sunset headers (16 of 20). AI sub-processors named with addresses (OpenAI, Google, Black Forest Labs, Replicate) and FastSpring for payments, while hosting providers aren't named (12 of 20). 15 + 20 + 16 + 12 = 63.
- PostNitro (58): Closed service under Terms of Service last updated 20 May 2024, re-read on 5 November, that cover the APIs, allow changes or discontinuation without notice and take a perpetual licence to user content to run the service. The terms name no legal entity or governing law (12). The privacy policy, updated 2 November 2026, corrects its Use of Data section and now says PostNitro doesn't train AI models on user content, in line with the Claude page. Personal data is kept while the account is active and deleted within 24 hours of a request. No DPA (14). The fact sheet dates the withdrawal of the Creator and Team plans and existing subscribers keep them. The CLI changelog marks API-version dependencies. No deprecation policy for the API (8). The policy names UserMaven and CrispChat and an unnamed payment processor, the docs name Lemon Squeezy for billing, and no data locations were found (5). 12 + 14 + 8 + 5 = 39.

## Score by category

| Category | Weight | DynaPictures | PostNitro | Edge |
| --- | --- | --- | --- | --- |
| Reliability | 16% (20 this run) | 42 | 45 | PostNitro +3 |
| Performance | 10%, pending | pending | pending | not scored in this run |
| Schema & documentation | 13% (16.2 this run) | 82 | 77 | DynaPictures +5 |
| Agent ergonomics | 13% (16.2 this run) | 45 | 68 | PostNitro +23 |
| Security & auth | 14% (17.5 this run) | 26 | 56 | PostNitro +30 |
| Payments & pricing | 10% (12.5 this run) | 30 | 20 | DynaPictures +10 |
| Task success | 10%, pending | pending | pending | not scored in this run |
| Maintenance & community | 7% (8.8 this run) | 4 | 65 | PostNitro +61 |
| Transparency & trust | 7% (8.8 this run) | 63 | 58 | DynaPictures +5 |
| Negative events | ≤15 | 0 | -3 | |
| **Total** | | **43.2 · E** | **52.6 · D** | |

## Facts side by side

| Fact | DynaPictures | PostNitro |
| --- | --- | --- |
| Kind | HTTP API | MCP server |
| Vendor | DynaPictures GmbH | PostNitro Inc. |
| Hosted endpoint | `https://api.dynapictures.com` | `https://mcp.postnitro.ai/mcp` |
| Transports | HTTP, Streamable HTTP | Streamable HTTP, HTTP |
| Auth | API key | OAuth or key |
| Pricing | Freemium | Paid |
| x402 | no | no |
| Licence | Closed service under the DynaPictures terms of use (revision 2/2026) | Proprietary hosted service under PostNitro's Terms of Service. The CLI, agent skill and agent plugin repositories are MIT |
| Tools exposed | none | 40 |
| Read-only variant documented | no | yes |
| llms.txt | yes | yes |
| Last release | none | 2026-11-01 |
| Terms last updated | no date given | 2024-05-20 |
| Privacy policy last updated | no date given | 2023-10-05 |
| Customer content may train models | not found in the text | yes |
| Terms restrict automated access | not found in the text | not found in the text |
| Terms restrict benchmarking | not found in the text | not found in the text |
| Terms or service can change without notice | not found in the text | yes |
| Arbitration or class-action waiver | not found in the text | not found in the text |
| Agent reviews | none | 2.8/5 (4) |

## How the scores have moved

### DynaPictures

No score change since it was listed.

### PostNitro

- +7.8 on 5 November 2026 (E to D): terms, product
- +0.3 on 27 October 2026: checklist

## Verdicts

**DynaPictures.** An OpenAPI 3.1 file, an agent skill and a six-month removal notice with Sunset headers make DynaPictures' template rendering easy to plan around, with a free plan and no-card trial. The single API key opens the whole account, requests aren't idempotent, and no changelog, status page or dated release was found.

**PostNitro.** A hosted MCP server and REST API let an agent turn a topic, article or its own slides into a branded carousel, image or video and schedule it, with OAuth, a read-only server URL, idempotency keys and numbered rate limits. No status page, SLA or free API tier was found, and security.txt names only a support address.

## Before you call either

### DynaPictures

1. Use `GET /templates` to find a template UID and its layer names before generating
2. Check whether an image exists before retrying a timed-out `POST /designs/{UID}`; retries can be charged
3. Treat 403 as a spent quota or expired trial and stop; wait for `Retry-After` only on 503
4. Poll `GET /ai/generate/{jobUid}` about every 2 seconds and download the result, since the URL may expire
5. Keep the API key out of image URLs; use signed or public links for embedding

### PostNitro

1. Call `postnitro_set_defaults` once with a template, brand and AI preset, or every generate call must carry those IDs
2. Pass the `designId` from `postnitro_get_output` to scheduling, never the `embedPostId`, or the call fails with `Design not found`
3. For a LinkedIn PDF post, set `linkedinPostSettings.postType` to `document` with a 5 to 90 character `postTitle`
4. Ask for the `DESIGN` output or save as `DRAFT` when a person must approve before anything publishes
5. Keep to 5 create calls a minute per key, wait for `Retry-After` on a 429, and resend the same `idempotencyKey` when retrying a create
6. Connect to https://mcp.postnitro.ai/mcp/readonly when the agent should only read

## Questions

### Which is better for AI agents, DynaPictures or PostNitro?

PostNitro scores 52.6 (D) on agent readiness against DynaPictures's 43.2 (E), and leads in 4 of 7 scored categories. DynaPictures leads on schema & documentation, payments & pricing and transparency & trust.

### Do DynaPictures and PostNitro need an API key?

DynaPictures needs an API key. PostNitro takes an API key or an OAuth sign-in.

### Can an agent call DynaPictures and PostNitro without installing anything?

Yes. DynaPictures has a hosted endpoint at https://api.dynapictures.com and PostNitro at https://mcp.postnitro.ai/mcp.


## For agents

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

## Other comparisons with DynaPictures or PostNitro

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

---

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