{
  "data": {
    "a": {
      "slug": "creatomate",
      "name": "Creatomate",
      "vendor": "Creatomate",
      "vendorUrl": "https://creatomate.com",
      "kind": "http-api",
      "category": "design-assets",
      "summary": "Creatomate renders videos, images and GIFs from templates or from RenderScript, its JSON format. Agents reach it through a REST API with a project key or a hosted MCP server with OAuth.",
      "url": "https://www.anchorterminal.com/tools/creatomate",
      "markdownUrl": "https://www.anchorterminal.com/tools/creatomate.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/creatomate.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/creatomate.json",
      "repo": "https://github.com/creatomate/creatomate-node",
      "license": "Proprietary service under Creatomate's Terms and Conditions. The Node, PHP and Preview SDK libraries on GitHub are MIT",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.creatomate.com/v2",
      "packages": [
        {
          "registry": "npm",
          "name": "creatomate"
        },
        {
          "registry": "npm",
          "name": "@creatomate/preview"
        }
      ],
      "auth": "mixed",
      "authNotes": "REST calls take a project API key as a bearer token. Each project has one key, copied from Project Settings after a browser signup, with no scopes found in the docs. The MCP server uses OAuth (authorisation code with PKCE S256, dynamic client registration, one scope, `mcp`), and each connection reaches one project. It also accepts the project key as a bearer token for headless use. Connections are listed and revoked under Account Settings.",
      "pricing": "paid",
      "pricingNotes": "Trial with 50 credits and no card, with output limited to 480 px per side. Paid plans are monthly credit allowances that do not carry over. The docs name Essential at $54 a month (2,000 credits) and Growth 10K at $129 (10,000 credits). Other plan prices are drawn by a Paddle script and were not read. An image is 1 credit and video is width x height x frame rate x seconds / 100,000,000 (checked 2026-10-08).",
      "priceSummary": "$54 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "Subscription credits billed through Paddle. No x402, MPP or L402 in the docs, llms.txt or pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 8,
      "popularity": {
        "githubStars": 9,
        "npmWeekly": 12714,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://creatomate.com/docs/api/reference/introduction",
      "llmsTxt": "https://creatomate.com/llms.txt",
      "capabilities": [
        "design.templates",
        "design.render",
        "video.render"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "mcp",
        "oauth",
        "llms-txt",
        "async-jobs",
        "webhooks",
        "video",
        "images"
      ],
      "lastRelease": "2026-09-03",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 47.7,
        "grade": "D",
        "agentReady": false,
        "rank": 894,
        "ranked": true,
        "rankOf": 1084,
        "categoryRank": 6,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 67,
          "maintenance": 34,
          "payments": 35,
          "reliability": 40,
          "schema": 53,
          "security": 48,
          "transparency": 51
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "A hosted MCP server with eight tools, OAuth with PKCE and per-project connections sits beside a small REST API whose errors carry a hint and a documentation link, and `dry_run` validates a render at no cost. No status page, changelog, OpenAPI file or security contact was found, and the terms and privacy policy date from June 2022.",
        "bestFor": "Teams that render video, images and GIFs from templates or JSON and want an agent to draft templates and start renders through MCP.",
        "strengths": [
          "Hosted MCP server at `https://api.creatomate.com/mcp` with eight named tools, OAuth authorisation code with PKCE and dynamic client registration",
          "Every API failure returns a `hint` and a `documentation` URL, confirmed first-hand on a 401",
          "`dry_run` on `POST /v2/renders` validates a request and returns the effective source with no credits spent",
          "Rate limit of 30 requests per 10 seconds is documented, with `X-RateLimit-*` headers on every response and `Retry-After` on 429",
          "Trial with 50 credits and no card, and a public credit formula (1 credit an image, 1 credit per 100 million video pixels)"
        ],
        "weaknesses": [
          "No status page, incident history or SLA found. `status.creatomate.com` does not resolve",
          "No OpenAPI file and no changelog. `/v1` and `/v2` routes are both documented with no deprecation policy",
          "Plan prices on the pricing page are drawn by a Paddle script. The docs name only $54 (Essential) and $129 (Growth 10K)",
          "No security.txt, disclosure policy or certification found, and REST keys have no scopes",
          "Terms and privacy policy are dated 27 June 2022, define the Service as the website, and let Creatomate make user Content available to other users"
        ],
        "agentNotes": [
          "Send `\"dry_run\": true` to `POST /v2/renders` before a paid render. It returns `valid`, `errors`, `warnings` and the effective source",
          "Read `warnings` on every render response. A modification keyed to an unknown element or property name is ignored without an error",
          "Keep under 30 requests per 10 seconds across the whole account, and wait for `Retry-After` on a 429",
          "Download each file when the webhook fires. Renders, their URLs and their status records are deleted after 30 days",
          "Use `render_scale` 0.5 for draft videos, about a quarter of the credits, and remember MCP `create_render` spends credits without a confirmation step from the server"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 47.7
          }
        ],
        "editorialScores": {
          "ergonomics": 67,
          "maintenance": 34,
          "payments": 35,
          "reliability": 40,
          "schema": 53,
          "security": 48,
          "transparency": 37
        },
        "provenanceScore": 65
      },
      "connect": {
        "install": "npm install creatomate",
        "http": "curl -X POST https://api.creatomate.com/v2/renders -H \"Content-Type: application/json\" -H \"Authorization: Bearer $CREATOMATE_API_KEY\" -d '{\"template_id\": \"YOUR_TEMPLATE_ID\", \"dry_run\": true, \"modifications\": {\"Title-1\": \"Your headline here\"}}'",
        "claudeCode": "claude mcp add creatomate --transport http https://api.creatomate.com/mcp",
        "config": {
          "mcpServers": {
            "creatomate": {
              "url": "https://api.creatomate.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/design.templates",
        "tool": "https://letme.dev/creatomate"
      },
      "area": "design-diagrams",
      "unitPrices": [
        {
          "item": "Essential",
          "unit": "month",
          "usd": 54,
          "note": "2,000 credits, price as stated in the docs"
        },
        {
          "item": "Growth 10K",
          "unit": "month",
          "usd": 129,
          "note": "10,000 credits, price as stated in the docs"
        }
      ],
      "provenance": {
        "legalEntity": "Creatomate",
        "domain": "creatomate.com",
        "domainRegistered": "2021-03-27",
        "endpointOnVendorDomain": true,
        "terms": "https://creatomate.com/terms-of-service",
        "privacy": "https://creatomate.com/privacy-policy",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The terms and privacy policy name the company as Creatomate, Leeuwarden, The Netherlands, with no legal form. The site footer gives the Dutch company number 90174356.",
          "Both documents are dated 27 June 2022 and define the Service as the website. They are the only terms and privacy policy published, and the terms cover subscriptions, so they govern API use. No DPA was found.",
          "The API and the MCP server answer at api.creatomate.com, and rendered files are served from cdn.creatomate.com.",
          "creatomate.com/.well-known/security.txt returns 404.",
          "No status page was found. status.creatomate.com does not resolve, and no page we read links to one.",
          "No changelog was found. /changelog returns 404 and /docs/changelog redirects to the docs introduction.",
          "RDAP for creatomate.com gives a registration date of 2021-03-27 and Cloudflare, Inc. as registrar."
        ],
        "score": 65
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/creatomate.json",
      "live": {
        "slug": "creatomate",
        "probe": {
          "target": "https://api.creatomate.com/v2",
          "method": "get",
          "lastAt": "2026-10-15T00:24:07.386144932Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 481,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 99.86,
          "p50ms24h": 470,
          "p95ms24h": 588,
          "samples24h": 250,
          "samples30d": 1412,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 169,
              "ok": 169
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 246
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-15",
              "probes": 5,
              "ok": 5
            }
          ]
        },
        "versions": [
          {
            "registry": "github",
            "name": "creatomate/creatomate-node",
            "version": "1.2.1",
            "released": "2024-09-23",
            "seenAt": "2026-10-14T23:46:57.327905069Z"
          },
          {
            "registry": "npm",
            "name": "@creatomate/preview",
            "version": "1.6.1",
            "seenAt": "2026-10-14T23:46:55.966879659Z"
          },
          {
            "registry": "npm",
            "name": "creatomate",
            "version": "1.2.1",
            "seenAt": "2026-10-14T23:46:55.121459568Z"
          }
        ],
        "githubStars": 9,
        "npmWeekly": 11034,
        "securityTxt": {
          "url": "https://creatomate.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-14T15:47:28.708498545Z"
        },
        "llmsTxt": {
          "url": "https://creatomate.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-14T14:13:51.78003058Z"
        },
        "domain": {
          "domain": "creatomate.com",
          "registered": "2021-03-27",
          "source": "https://rdap.verisign.com/com/v1/domain/creatomate.com",
          "checkedAt": "2026-10-11T13:20:55.83401048Z"
        },
        "pages": [
          {
            "url": "https://creatomate.com/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-14T20:55:45.541100856Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "7679daa5c968"
          },
          {
            "url": "https://creatomate.com/terms-of-service",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-14T20:55:48.237371257Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "a4b5ce36278d"
          }
        ],
        "updatedAt": "2026-10-15T00:24:07.386144932Z"
      }
    },
    "answer": "Creatomate scores 47.7 (D) on agent readiness against PostNitro's 44.5 (E), and leads in 4 of 7 scored categories. PostNitro leads on schema \u0026 documentation and maintenance \u0026 community.",
    "b": {
      "slug": "postnitro",
      "name": "PostNitro",
      "vendor": "PostNitro Inc.",
      "vendorUrl": "https://postnitro.ai",
      "kind": "mcp",
      "category": "design-assets",
      "summary": "PostNitro designs carousels, single-image posts and slide videos from templates and brand kits, then schedules them to six social networks. Agents use a hosted MCP server with 35 tools, a REST API, a CLI or an agent plugin.",
      "url": "https://www.anchorterminal.com/tools/postnitro",
      "markdownUrl": "https://www.anchorterminal.com/tools/postnitro.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/postnitro.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/postnitro.json",
      "repo": "https://github.com/postnitro/postnitro-agent",
      "license": "Proprietary hosted service under PostNitro's Terms of Service. The CLI, agent skill and agent plugin repositories are MIT",
      "transports": [
        "streamable-http",
        "http"
      ],
      "remoteUrl": "https://mcp.postnitro.ai/mcp",
      "packages": [
        {
          "registry": "npm",
          "name": "@postnitro/cli"
        },
        {
          "registry": "npm",
          "name": "@postnitro/embed"
        }
      ],
      "auth": "mixed",
      "authNotes": "The MCP server takes OAuth 2.1 with PKCE and dynamic client registration (scopes `postnitro` and `offline_access`), used by the Claude and ChatGPT directory listings, or a `pn-` API key as `Authorization: Bearer`. The REST API takes the same key in the `embed-api-key` header. A person generates the key under Profile \u003e Embed in the web app. No read-only key or finer scope is documented.",
      "pricing": "paid",
      "pricingNotes": "API, MCP and CLI calls spend Embed API credits, 1 per imported slide and 2 per AI-written slide. Credits come with Creator+ ($30 a month, 200) or Team+ ($60, 500), or as a $10 add-on for 250 on a paid plan, $0.04 each. Scheduling needs Creator+ or above (https://postnitro.ai/plans).",
      "priceSummary": "$15 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the Embed API OpenAPI document, llms.txt, llms-full.txt, the MCP docs or the plans page (checked 2026-10-14).",
        "endpoints": []
      },
      "toolCount": 35,
      "popularity": {
        "githubStars": 2,
        "npmWeekly": 200,
        "pypiWeekly": null,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://postnitro.ai/docs/embed/mcp",
      "llmsTxt": "https://postnitro.ai/llms.txt",
      "openapi": "https://postnitro.ai/.well-known/openapi/embed.json",
      "capabilities": [
        "design.templates",
        "design.render",
        "design.brand",
        "social.schedule",
        "social.post"
      ],
      "tags": [
        "hosted",
        "mcp",
        "oauth",
        "openapi",
        "llms-txt",
        "closed-source",
        "async-jobs",
        "cli",
        "n8n",
        "no-status-page"
      ],
      "lastRelease": "2026-10-07",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 44.5,
        "grade": "E",
        "agentReady": false,
        "rank": 945,
        "ranked": true,
        "rankOf": 1084,
        "categoryRank": 9,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 49,
          "maintenance": 65,
          "payments": 20,
          "reliability": 42,
          "schema": 77,
          "security": 30,
          "transparency": 48
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-14"
        },
        "negative": -2,
        "negativeNotes": [
          "Conflicting training statements on PostNitro's own pages, read 14 October 2026. The privacy policy body (5 October 2023) says the data saved from carousel creation is used to train PostNitro's AI model, while the same page's description and the Claude connector page say content is never used to train AI models. At least one is wrong, and no dated update settles it (-2) (https://postnitro.ai/privacy, https://postnitro.ai/claude)"
        ],
        "verdict": "A hosted MCP server and REST API let an agent turn a topic, article or own slides into a branded carousel, image or slide video and schedule it, with OAuth, numbered rate limits and Markdown docs. No status page, security contact or idempotency key was found, and the privacy policy contradicts the vendor's no-training statement.",
        "bestFor": "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.",
        "strengths": [
          "OAuth 2.1 with dynamic client registration on the MCP server, so Claude and ChatGPT connect without a stored API key",
          "Rate limits are published per key and endpoint, and 429 responses carry `Retry-After` and `X-RateLimit` headers",
          "OpenAPI 3.1 document, `llms.txt`, `llms-full.txt` and a Markdown version of every page by content negotiation",
          "Per-slide credit prices are public at $0.04 a credit, 1 per imported slide and 2 per AI-written slide",
          "The one-call generate-and-schedule tool returns the `designId` when scheduling fails, so a retry does not spend credits again"
        ],
        "weaknesses": [
          "No status page, incident history, SLA, security.txt or certification was found",
          "35 MCP tools load at once, with no toolsets or read-only subset, and the OAuth flow has one broad `postnitro` scope",
          "The privacy policy says carousel data trains PostNitro's AI model, while the Claude connector page says content is never used for training",
          "No idempotency key on create or schedule calls, and the Embed API has no changelog or deprecation policy",
          "Pages disagree on the API free tier and tool count. One docs index still says 12 MCP tools and four scheduling networks"
        ],
        "agentNotes": [
          "Call `postnitro_set_defaults` once with a template, brand and AI preset, or every generate call must carry those IDs",
          "Pass the `designId` from `postnitro_get_output` to scheduling, never the `embedPostId`, or the call fails with `Design not found`",
          "For a LinkedIn PDF post, set `linkedinPostSettings.postType` to `document` with a 5 to 90 character `postTitle`",
          "Ask for the `DESIGN` output or save as `DRAFT` when a person must approve before anything publishes",
          "Keep to 5 create calls a minute per key and wait for `Retry-After` on a 429"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "E",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 44.5
          }
        ],
        "editorialScores": {
          "ergonomics": 49,
          "maintenance": 65,
          "payments": 20,
          "reliability": 42,
          "schema": 77,
          "security": 30,
          "transparency": 33
        },
        "provenanceScore": 63
      },
      "connect": {
        "install": "npm install -g @postnitro/cli",
        "http": "curl https://embed-api.postnitro.ai/template -H \"embed-api-key: pn-your-api-key\"",
        "claudeCode": "claude mcp add --transport http postnitro https://mcp.postnitro.ai/mcp --header \"Authorization: Bearer pn-your-api-key-here\"",
        "config": {
          "mcpServers": {
            "postnitro": {
              "headers": {
                "Authorization": "Bearer pn-your-api-key-here"
              },
              "type": "http",
              "url": "https://mcp.postnitro.ai/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/design.templates",
        "tool": "https://letme.dev/postnitro"
      },
      "area": "design-diagrams",
      "unitPrices": [
        {
          "item": "Starter",
          "unit": "month",
          "usd": 15,
          "note": "No scheduling or API access unless the Embed API add-on is bought"
        },
        {
          "item": "Creator+",
          "unit": "month",
          "usd": 30,
          "note": "200 API credits a month, scheduling to 10 social accounts"
        },
        {
          "item": "Team+",
          "unit": "month",
          "usd": 60,
          "note": "500 API credits a month, scheduling to 30 social accounts"
        },
        {
          "item": "Embed API add-on",
          "unit": "month",
          "usd": 10,
          "note": "250 credits on top of a paid plan, scalable to 25,000"
        },
        {
          "item": "Embed API credit",
          "unit": "credit",
          "usd": 0.04,
          "note": "1 credit per imported slide, 2 per AI-written slide"
        }
      ],
      "provenance": {
        "legalEntity": "PostNitro Inc.",
        "domain": "postnitro.ai",
        "domainRegistered": "2023-03-23",
        "endpointOnVendorDomain": true,
        "terms": "https://postnitro.ai/terms",
        "privacy": "https://postnitro.ai/privacy",
        "statusPage": "",
        "changelog": "https://github.com/postnitro/postnitro-agent/blob/main/CHANGELOG.md",
        "securityTxt": "none",
        "checked": "2026-10-14",
        "notes": [
          "The Terms of Service, last updated 20 May 2024, cover the website, applications and APIs. They name no legal entity or governing law. The privacy policy names PostNitro Inc. as controller.",
          "The privacy policy is dated 5 October 2023 and names UserMaven, CrispChat and an unnamed payment processor. No DPA or sub-processor list was found.",
          "No status page was found. status.postnitro.ai did not connect and /status returns 404. The MCP server answers a health check at https://mcp.postnitro.ai/health, reporting version 1.3.0.",
          "The changelog covers the CLI only. No changelog for the Embed API or MCP server was found.",
          "postnitro.ai/.well-known/security.txt and /security.txt return 404.",
          "RDAP gives a registration date of 2023-03-23 for postnitro.ai. The fact sheet says the company was founded in 2023."
        ],
        "score": 63
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/postnitro.json",
      "live": {
        "slug": "postnitro",
        "probe": {
          "target": "https://mcp.postnitro.ai/mcp",
          "method": "mcp-initialize",
          "lastAt": "2026-10-15T00:24:22.389748682Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 101,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 103,
          "p95ms24h": 146,
          "samples24h": 31,
          "samples30d": 31,
          "days": [
            {
              "date": "2026-10-14",
              "probes": 26,
              "ok": 26
            },
            {
              "date": "2026-10-15",
              "probes": 5,
              "ok": 5
            }
          ]
        },
        "versions": [
          {
            "registry": "github",
            "name": "postnitro/postnitro-agent",
            "version": "v1.5.0",
            "released": "2026-10-07",
            "seenAt": "2026-10-15T00:15:12.63443761Z"
          },
          {
            "registry": "npm",
            "name": "@postnitro/cli",
            "version": "1.5.0",
            "seenAt": "2026-10-15T00:15:10.434524788Z"
          },
          {
            "registry": "npm",
            "name": "@postnitro/embed",
            "version": "2.0.3",
            "seenAt": "2026-10-15T00:15:11.257477478Z"
          }
        ],
        "githubStars": 2,
        "npmWeekly": 200,
        "mcpTools": {
          "url": "https://mcp.postnitro.ai/mcp",
          "checkedAt": "2026-10-14T22:17:48.649874285Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-10-14T22:17:48.649874285Z"
        },
        "updatedAt": "2026-10-15T00:24:22.389748682Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "Creatomate",
        "b": "PostNitro Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://api.creatomate.com/v2",
        "b": "https://mcp.postnitro.ai/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP",
        "b": "Streamable HTTP, HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under Creatomate's Terms and Conditions. The Node, PHP and Preview SDK libraries on GitHub are MIT",
        "b": "Proprietary hosted service under PostNitro's Terms of Service. The CLI, agent skill and agent plugin repositories are MIT",
        "name": "Licence"
      },
      {
        "a": "8",
        "b": "35",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-03",
        "b": "2026-10-07",
        "name": "Last release"
      },
      {
        "a": "2022-06-27",
        "b": "2024-05-20",
        "name": "Terms last updated"
      },
      {
        "a": "2022-06-27",
        "b": "2023-10-05",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "9 stars, 13k npm/wk",
        "b": "2 stars, 200 npm/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Creatomate scores 47.7 (D) on agent readiness against PostNitro's 44.5 (E), and leads in 4 of 7 scored categories. PostNitro leads on schema \u0026 documentation and maintenance \u0026 community.",
        "question": "Which is better for AI agents, Creatomate or PostNitro?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Creatomate and PostNitro need an API key?"
      },
      {
        "answer": "Yes. Creatomate has a hosted endpoint at https://api.creatomate.com/v2 and PostNitro at https://mcp.postnitro.ai/mcp.",
        "question": "Can an agent call Creatomate and PostNitro without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Agent ergonomics, 67 against 49",
          "Security \u0026 auth, 48 against 30",
          "Payments \u0026 pricing, 35 against 20"
        ],
        "also": null,
        "goodFor": "Teams that render video, images and GIFs from templates or JSON and want an agent to draft templates and start renders through MCP.",
        "slug": "creatomate",
        "watchFor": "No status page, incident history or SLA found. `status.creatomate.com` does not resolve"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 77 against 53",
          "Maintenance \u0026 community, 65 against 34"
        ],
        "also": null,
        "goodFor": "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.",
        "slug": "postnitro",
        "watchFor": "No status page, incident history, SLA, security.txt or certification was found"
      }
    ],
    "job": {
      "capability": "design.templates",
      "name": "Design templates"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-creatomate.json",
        "title": "Adobe Photoshop API vs Creatomate",
        "url": "https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-creatomate"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-postnitro.json",
        "title": "Adobe Photoshop API vs PostNitro",
        "url": "https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-postnitro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/apitemplate-io-vs-creatomate.json",
        "title": "APITemplate.io vs Creatomate",
        "url": "https://www.anchorterminal.com/compare/apitemplate-io-vs-creatomate"
      },
      {
        "json": "https://www.anchorterminal.com/compare/apitemplate-io-vs-postnitro.json",
        "title": "APITemplate.io vs PostNitro",
        "url": "https://www.anchorterminal.com/compare/apitemplate-io-vs-postnitro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bannerbear-vs-creatomate.json",
        "title": "Bannerbear API + MCP vs Creatomate",
        "url": "https://www.anchorterminal.com/compare/bannerbear-vs-creatomate"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bannerbear-vs-postnitro.json",
        "title": "Bannerbear API + MCP vs PostNitro",
        "url": "https://www.anchorterminal.com/compare/bannerbear-vs-postnitro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/canva-vs-creatomate.json",
        "title": "Canva REST APIs + MCP vs Creatomate",
        "url": "https://www.anchorterminal.com/compare/canva-vs-creatomate"
      },
      {
        "json": "https://www.anchorterminal.com/compare/canva-vs-postnitro.json",
        "title": "Canva REST APIs + MCP vs PostNitro",
        "url": "https://www.anchorterminal.com/compare/canva-vs-postnitro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/creatomate-vs-photoroom.json",
        "title": "Creatomate vs Photoroom API",
        "url": "https://www.anchorterminal.com/compare/creatomate-vs-photoroom"
      },
      {
        "json": "https://www.anchorterminal.com/compare/creatomate-vs-placid.json",
        "title": "Creatomate vs Placid API + MCP",
        "url": "https://www.anchorterminal.com/compare/creatomate-vs-placid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/creatomate-vs-shotstack.json",
        "title": "Creatomate vs Shotstack",
        "url": "https://www.anchorterminal.com/compare/creatomate-vs-shotstack"
      },
      {
        "json": "https://www.anchorterminal.com/compare/creatomate-vs-templated.json",
        "title": "Creatomate vs Templated API + MCP",
        "url": "https://www.anchorterminal.com/compare/creatomate-vs-templated"
      },
      {
        "json": "https://www.anchorterminal.com/compare/photoroom-vs-postnitro.json",
        "title": "Photoroom API vs PostNitro",
        "url": "https://www.anchorterminal.com/compare/photoroom-vs-postnitro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/placid-vs-postnitro.json",
        "title": "Placid API + MCP vs PostNitro",
        "url": "https://www.anchorterminal.com/compare/placid-vs-postnitro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/postnitro-vs-shotstack.json",
        "title": "PostNitro vs Shotstack",
        "url": "https://www.anchorterminal.com/compare/postnitro-vs-shotstack"
      },
      {
        "json": "https://www.anchorterminal.com/compare/postnitro-vs-templated.json",
        "title": "PostNitro vs Templated API + MCP",
        "url": "https://www.anchorterminal.com/compare/postnitro-vs-templated"
      },
      {
        "json": "https://www.anchorterminal.com/compare/creatomate-vs-osmo-cli.json",
        "title": "Creatomate vs Osmo CLI",
        "url": "https://www.anchorterminal.com/compare/creatomate-vs-osmo-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/osmo-cli-vs-postnitro.json",
        "title": "Osmo CLI vs PostNitro",
        "url": "https://www.anchorterminal.com/compare/osmo-cli-vs-postnitro"
      }
    ],
    "scores": [
      {
        "by": 2,
        "creatomate": 40,
        "edge": "postnitro",
        "key": "reliability",
        "name": "Reliability",
        "postnitro": 42,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 24,
        "creatomate": 53,
        "edge": "postnitro",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "postnitro": 77,
        "weight": 13
      },
      {
        "by": 18,
        "creatomate": 67,
        "edge": "creatomate",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "postnitro": 49,
        "weight": 13
      },
      {
        "by": 18,
        "creatomate": 48,
        "edge": "creatomate",
        "key": "security",
        "name": "Security \u0026 auth",
        "postnitro": 30,
        "weight": 14
      },
      {
        "by": 15,
        "creatomate": 35,
        "edge": "creatomate",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "postnitro": 20,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 31,
        "creatomate": 34,
        "edge": "postnitro",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "postnitro": 65,
        "weight": 7
      },
      {
        "by": 3,
        "creatomate": 51,
        "edge": "creatomate",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "postnitro": 48,
        "weight": 7
      }
    ],
    "summary": "Creatomate scores 47.7 (D) on agent readiness against PostNitro's 44.5 (E), and leads in 4 of 7 scored categories. PostNitro leads on schema \u0026 documentation and maintenance \u0026 community. Both do design templates.",
    "verdicts": {
      "creatomate": "A hosted MCP server with eight tools, OAuth with PKCE and per-project connections sits beside a small REST API whose errors carry a hint and a documentation link, and `dry_run` validates a render at no cost. No status page, changelog, OpenAPI file or security contact was found, and the terms and privacy policy date from June 2022.",
      "postnitro": "A hosted MCP server and REST API let an agent turn a topic, article or own slides into a branded carousel, image or slide video and schedule it, with OAuth, numbered rate limits and Markdown docs. No status page, security contact or idempotency key was found, and the privacy policy contradicts the vendor's no-training statement."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/creatomate-vs-postnitro",
    "json": "https://www.anchorterminal.com/compare/creatomate-vs-postnitro.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/creatomate-vs-postnitro.md",
    "slim": "https://www.anchorterminal.com/compare/creatomate-vs-postnitro.min.md"
  },
  "markdown": "Creatomate scores 47.7 (D) on agent readiness against PostNitro's 44.5 (E), and leads in 4 of 7 scored categories. PostNitro leads on schema \u0026 documentation and maintenance \u0026 community. Both do design templates.\n\n- Creatomate: grade D, 47.7/100, rank #894 of 1084. Markdown https://www.anchorterminal.com/tools/creatomate.md · JSON https://www.anchorterminal.com/api/v1/tools/creatomate.json\n- PostNitro: grade E, 44.5/100, rank #945 of 1084. Markdown https://www.anchorterminal.com/tools/postnitro.md · JSON https://www.anchorterminal.com/api/v1/tools/postnitro.json\n- Best programmatic image and design asset APIs for AI agents: https://www.anchorterminal.com/best/design-assets/index.md\n- All 55 assets comparisons: https://www.anchorterminal.com/compare/design-assets/index.md\n\n## Which one, for what\n\n### Creatomate (D)\n\nGood for: Teams that render video, images and GIFs from templates or JSON and want an agent to draft templates and start renders through MCP.\n\nAhead on:\n- Agent ergonomics, 67 against 49\n- Security \u0026 auth, 48 against 30\n- Payments \u0026 pricing, 35 against 20\n\nWatch for: No status page, incident history or SLA found. `status.creatomate.com` does not resolve\n\n### PostNitro (E)\n\nGood 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.\n\nAhead on:\n- Schema \u0026 documentation, 77 against 53\n- Maintenance \u0026 community, 65 against 34\n\nWatch for: No status page, incident history, SLA, security.txt or certification was found\n\n\n## Score by category\n\n| Category | Weight | Creatomate | PostNitro | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 40 | 42 | PostNitro +2 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 53 | 77 | PostNitro +24 |\n| Agent ergonomics | 13% (16.2 this run) | 67 | 49 | Creatomate +18 |\n| Security \u0026 auth | 14% (17.5 this run) | 48 | 30 | Creatomate +18 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 35 | 20 | Creatomate +15 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 34 | 65 | PostNitro +31 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 51 | 48 | Creatomate +3 |\n| Negative events | ≤15 | 0 | -2 | |\n| **Total** | | **47.7 · D** | **44.5 · E** | |\n\n## Facts side by side\n\n| Fact | Creatomate | PostNitro |\n| --- | --- | --- |\n| Kind | HTTP API | MCP server |\n| Vendor | Creatomate | PostNitro Inc. |\n| Hosted endpoint | `https://api.creatomate.com/v2` | `https://mcp.postnitro.ai/mcp` |\n| Transports | HTTP, Streamable HTTP | Streamable HTTP, HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Paid | Paid |\n| x402 | no | no |\n| Licence | Proprietary service under Creatomate's Terms and Conditions. The Node, PHP and Preview SDK libraries on GitHub are MIT | Proprietary hosted service under PostNitro's Terms of Service. The CLI, agent skill and agent plugin repositories are MIT |\n| Tools exposed | 8 | 35 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-09-03 | 2026-10-07 |\n| Terms last updated | 2022-06-27 | 2024-05-20 |\n| Privacy policy last updated | 2022-06-27 | 2023-10-05 |\n| Customer content may train models | not found in the text | yes |\n| Terms restrict automated access | not found in the text | not found in the text |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n| Popularity | 9 stars, 13k npm/wk | 2 stars, 200 npm/wk |\n\n## Verdicts\n\n**Creatomate.** A hosted MCP server with eight tools, OAuth with PKCE and per-project connections sits beside a small REST API whose errors carry a hint and a documentation link, and `dry_run` validates a render at no cost. No status page, changelog, OpenAPI file or security contact was found, and the terms and privacy policy date from June 2022.\n\n**PostNitro.** A hosted MCP server and REST API let an agent turn a topic, article or own slides into a branded carousel, image or slide video and schedule it, with OAuth, numbered rate limits and Markdown docs. No status page, security contact or idempotency key was found, and the privacy policy contradicts the vendor's no-training statement.\n\n## Before you call either\n\n### Creatomate\n\n1. Send `\"dry_run\": true` to `POST /v2/renders` before a paid render. It returns `valid`, `errors`, `warnings` and the effective source\n2. Read `warnings` on every render response. A modification keyed to an unknown element or property name is ignored without an error\n3. Keep under 30 requests per 10 seconds across the whole account, and wait for `Retry-After` on a 429\n4. Download each file when the webhook fires. Renders, their URLs and their status records are deleted after 30 days\n5. Use `render_scale` 0.5 for draft videos, about a quarter of the credits, and remember MCP `create_render` spends credits without a confirmation step from the server\n\n### PostNitro\n\n1. Call `postnitro_set_defaults` once with a template, brand and AI preset, or every generate call must carry those IDs\n2. Pass the `designId` from `postnitro_get_output` to scheduling, never the `embedPostId`, or the call fails with `Design not found`\n3. For a LinkedIn PDF post, set `linkedinPostSettings.postType` to `document` with a 5 to 90 character `postTitle`\n4. Ask for the `DESIGN` output or save as `DRAFT` when a person must approve before anything publishes\n5. Keep to 5 create calls a minute per key and wait for `Retry-After` on a 429\n\n## Questions\n\n### Which is better for AI agents, Creatomate or PostNitro?\n\nCreatomate scores 47.7 (D) on agent readiness against PostNitro's 44.5 (E), and leads in 4 of 7 scored categories. PostNitro leads on schema \u0026 documentation and maintenance \u0026 community.\n\n### Do Creatomate and PostNitro need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Creatomate and PostNitro without installing anything?\n\nYes. Creatomate has a hosted endpoint at https://api.creatomate.com/v2 and PostNitro at https://mcp.postnitro.ai/mcp.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/creatomate-vs-postnitro.json, and with the fewest tokens: https://www.anchorterminal.com/compare/creatomate-vs-postnitro.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"creatomate\", \"b\": \"postnitro\"}`. From a terminal: `anchor compare creatomate postnitro`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/creatomate.json and https://www.anchorterminal.com/api/v1/tools/postnitro.json\n\n## Other comparisons with Creatomate or PostNitro\n\n- [Adobe Photoshop API vs Creatomate](https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-creatomate.md)\n- [Adobe Photoshop API vs PostNitro](https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-postnitro.md)\n- [APITemplate.io vs Creatomate](https://www.anchorterminal.com/compare/apitemplate-io-vs-creatomate.md)\n- [APITemplate.io vs PostNitro](https://www.anchorterminal.com/compare/apitemplate-io-vs-postnitro.md)\n- [Bannerbear API + MCP vs Creatomate](https://www.anchorterminal.com/compare/bannerbear-vs-creatomate.md)\n- [Bannerbear API + MCP vs PostNitro](https://www.anchorterminal.com/compare/bannerbear-vs-postnitro.md)\n- [Canva REST APIs + MCP vs Creatomate](https://www.anchorterminal.com/compare/canva-vs-creatomate.md)\n- [Canva REST APIs + MCP vs PostNitro](https://www.anchorterminal.com/compare/canva-vs-postnitro.md)\n- [Creatomate vs Photoroom API](https://www.anchorterminal.com/compare/creatomate-vs-photoroom.md)\n- [Creatomate vs Placid API + MCP](https://www.anchorterminal.com/compare/creatomate-vs-placid.md)\n- [Creatomate vs Shotstack](https://www.anchorterminal.com/compare/creatomate-vs-shotstack.md)\n- [Creatomate vs Templated API + MCP](https://www.anchorterminal.com/compare/creatomate-vs-templated.md)\n- [Photoroom API vs PostNitro](https://www.anchorterminal.com/compare/photoroom-vs-postnitro.md)\n- [Placid API + MCP vs PostNitro](https://www.anchorterminal.com/compare/placid-vs-postnitro.md)\n- [PostNitro vs Shotstack](https://www.anchorterminal.com/compare/postnitro-vs-shotstack.md)\n- [PostNitro vs Templated API + MCP](https://www.anchorterminal.com/compare/postnitro-vs-templated.md)\n- [Creatomate vs Osmo CLI](https://www.anchorterminal.com/compare/creatomate-vs-osmo-cli.md)\n- [Osmo CLI vs PostNitro](https://www.anchorterminal.com/compare/osmo-cli-vs-postnitro.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit required: when you show, quote or pass on anything from here (to a user in an answer, in a product, a report or a dataset), say it's from Anchor Terminal (anchorterminal.com) and link the page or API address you took it from. Reviews also credit their author.",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-15",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Creatomate vs PostNitro",
        "url": ""
      }
    ],
    "description": "Creatomate scores 47.7 (D) to PostNitro's 44.5 (E) for design templates. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Creatomate D 47.7",
      "PostNitro E 44.5",
      "scores"
    ],
    "h1": "Creatomate vs PostNitro",
    "image": "https://www.anchorterminal.com/assets/og/compare-creatomate-vs-postnitro.png",
    "path": "/compare/creatomate-vs-postnitro",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Creatomate vs PostNitro for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-14",
    "url": "https://www.anchorterminal.com/compare/creatomate-vs-postnitro"
  },
  "tokens": {
    "markdown": 2350,
    "slim": 680
  },
  "version": 1
}
