{
  "data": {
    "a": {
      "slug": "pictify",
      "name": "Pictify",
      "vendor": "Pictify.io",
      "vendorUrl": "https://pictify.io",
      "kind": "http-api",
      "category": "design-assets",
      "summary": "Pictify renders HTML, URLs and saved templates into PNG, JPG or WebP images, PDFs, GIFs and MP4 video through a REST API, official SDKs in four languages and an MCP server.",
      "url": "https://www.anchorterminal.com/tools/pictify",
      "markdownUrl": "https://www.anchorterminal.com/tools/pictify.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/pictify.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/pictify.json",
      "dns": "pictify.grade.anchorterminal.com",
      "repo": "https://github.com/pictify-io/mcp",
      "license": "MIT for the MCP server. The Pictify API is a closed service under terms last updated 18 July 2024",
      "transports": [
        "http",
        "stdio",
        "streamable-http"
      ],
      "remoteUrl": "https://api.pictify.io",
      "packages": [
        {
          "registry": "npm",
          "name": "@pictify/mcp-server"
        }
      ],
      "auth": "mixed",
      "authNotes": "API keys (`pic_live_` plus 64 hex characters since September 2026) created in the dashboard and sent as `Authorization: Bearer`. Keys can be rotated (a replacement is made, then the old key revoked) or revoked at once. No scopes. The local MCP server reads `PICTIFY_API_KEY`; a hosted MCP endpoint at mcp.pictify.io advertises OAuth with an `mcp:tools` scope, which the docs don't describe.",
      "pricing": "freemium",
      "pricingNotes": "Free $0 with 50 renders a month, 3 saved templates and no card. Basic $19 a month ($15 yearly) with 1,000 renders and $0.02 per extra render, Pro $49 ($39) with 10,000 and $0.01, Business $249 ($199) with 40,000 and $0.005. One render pool covers images, PDF pages, GIFs and video. Failed requests aren't billed.",
      "priceSummary": "Freemium",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "Subscriptions with overage billing. No x402, MPP or L402 in the OpenAPI, the docs, llms.txt or pricing.md (checked 2026-11-06). Exhausted credits return 429 or 402 with `quota_exceeded` and no payment requirements.",
        "endpoints": []
      },
      "toolCount": 25,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 55,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://docs.pictify.io",
      "llmsTxt": "https://docs.pictify.io/llms.txt",
      "openapi": "https://docs.pictify.io/openapi/v1.yaml",
      "registryName": "io.github.pictify-io/mcp",
      "capabilities": [
        "design.render",
        "design.templates",
        "pdf.generate",
        "video.generate"
      ],
      "tags": [
        "hosted",
        "openapi",
        "llms-txt",
        "mcp",
        "stdio",
        "mcp-registry",
        "api-key",
        "freemium",
        "free-tier",
        "no-card",
        "webhooks",
        "telemetry"
      ],
      "lastRelease": "2026-09-20",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 55.7,
        "grade": "C",
        "agentReady": false,
        "rank": 856,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 7,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 74,
          "maintenance": 68,
          "payments": 40,
          "reliability": 45,
          "schema": 88,
          "security": 45,
          "transparency": 52
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": -3,
        "negativeNotes": [
          "Workflows (CSV or webhook runs with per-recipient email delivery) were retired in September 2026 per the changelog (https://docs.pictify.io/resources/changelog.md), while pictify.io's llms.txt still calls the Render-to-Recipient workflow Pictify's core pattern and pricing.md (last updated 9 August 2026) still says per-recipient email delivery is included on paid workflow runs (https://pictify.io/llms.txt, https://pictify.io/pricing.md), read 6 November 2026. A retired feature still advertised, -3."
        ],
        "verdict": "A public OpenAPI 3.1 contract, per-render overage prices, a recurring no-card free tier and error codes that tell quota apart from rate limits make Pictify easy for an agent to call and budget. Its MCP server reports tool arguments and results to PostHog by default, and the privacy policy, last updated July 2024, mentions neither.",
        "bestFor": "HTML-to-image, template renders, PDFs and short video from one API, with per-render prices an agent can budget.",
        "strengths": [
          "Public OpenAPI 3.1, llms.txt and Markdown docs, with official SDKs in Node.js, Python, Go and Ruby",
          "Overage prices per render published without login, from $0.02 down to $0.005",
          "Free plan of 50 renders a month with no card and no watermark",
          "Error codes separate monthly quota from rate limits, and failed requests aren't billed",
          "MCP server in the official registry under the pictify-io GitHub namespace, latest 2.0.0"
        ],
        "weaknesses": [
          "The MCP server sends tool arguments, results and the account email to PostHog unless turned off",
          "Privacy policy and terms date from 18 July 2024 and name no company or processors",
          "Workflows were retired in September 2026 but llms.txt and pricing.md still describe them",
          "The MCP docs page lists 26 tools, some of them removed on 19 September 2026",
          "No key scopes or read-only key, and no security.txt or disclosure policy"
        ],
        "agentNotes": [
          "Set `PICTIFY_ANALYTICS_DISABLED=1` in the MCP server's env when tool inputs are confidential",
          "On a 429, read `code` first; `quota_exceeded` means wait for the monthly reset, not retry",
          "Retry a 5xx once; a failed generation bills nothing",
          "Pass only one of `html`, `url` or `template` to `pictify_create_image`",
          "Use batch render for one image per row rather than many single calls"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 55.7
          }
        ],
        "editorialScores": {
          "ergonomics": 74,
          "maintenance": 68,
          "payments": 40,
          "reliability": 45,
          "schema": 88,
          "security": 45,
          "transparency": 39
        },
        "provenanceScore": 64,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-06",
            "maintenance": "2026-11-06",
            "payments": "2026-11-06",
            "reliability": "2026-11-06",
            "schema": "2026-11-06",
            "security": "2026-11-06",
            "transparency": "2026-11-06"
          },
          "last": "2026-11-06",
          "oldest": "2026-11-06",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "npx -y @pictify/mcp-server",
        "claudeCode": "claude mcp add pictify -- npx -y @pictify/mcp-server",
        "config": {
          "mcpServers": {
            "pictify": {
              "args": [
                "-y",
                "@pictify/mcp-server"
              ],
              "command": "npx",
              "env": {
                "PICTIFY_API_KEY": "YOUR_API_KEY"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/design.render",
        "tool": "https://letme.dev/pictify"
      },
      "area": "design-diagrams",
      "unitPrices": [
        {
          "item": "Extra render on Basic",
          "unit": "image",
          "usd": 0.02,
          "note": "Basic $19 a month includes 1,000 renders; one pool for images, PDF pages, GIFs and video"
        },
        {
          "item": "Extra render on Pro",
          "unit": "image",
          "usd": 0.01,
          "note": "Pro $49 a month includes 10,000 renders"
        },
        {
          "item": "Extra render on Business",
          "unit": "image",
          "usd": 0.005,
          "note": "Business $249 a month includes 40,000 renders"
        }
      ],
      "provenance": {
        "legalEntity": "",
        "domain": "pictify.io",
        "domainRegistered": "2024-02-18",
        "endpointOnVendorDomain": true,
        "terms": "https://pictify.io/terms",
        "privacy": "https://pictify.io/privacy",
        "statusPage": "https://status.pictify.io",
        "changelog": "https://docs.pictify.io/resources/changelog",
        "securityTxt": "none",
        "checked": "2026-11-06",
        "notes": [
          "The terms and privacy policy, both last updated 18 July 2024, name only Pictify.io and choose United States law. No company form or address is given. The npm package's maintainer is Suyash Thakur.",
          "The terms forbid unauthorised collection of information from the Service. Public pages were read as data.",
          "pictify.io/robots.txt allows all but the dashboard, login, signup, workspace, canvas, invite and /api/ paths, with Content-Signal search=yes, ai-input=yes, ai-train=yes. docs.pictify.io allows the docs. status.pictify.io/robots.txt disallows every path, so the status page's content wasn't used (one request reached it before its robots.txt was read, and what it returned was discarded).",
          "RDAP gives pictify.io a registration date of 18 February 2024.",
          "/.well-known/security.txt returns 404."
        ],
        "score": 64
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/pictify.json",
      "live": {
        "slug": "pictify",
        "probe": {
          "target": "https://api.pictify.io",
          "method": "get",
          "lastAt": "2026-11-07T18:20:46.929814597Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 260,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 247,
          "p95ms24h": 416,
          "samples24h": 200,
          "samples30d": 200,
          "days": [
            {
              "date": "2026-11-06",
              "probes": 13,
              "ok": 13
            },
            {
              "date": "2026-11-07",
              "probes": 187,
              "ok": 187
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.pictify.io",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-07T04:48:36.108648674Z"
        },
        "versions": [
          {
            "registry": "mcp-registry",
            "name": "io.github.pictify-io/mcp",
            "version": "2.0.0",
            "seenAt": "2026-11-07T18:16:28.95801333Z"
          },
          {
            "registry": "npm",
            "name": "@pictify/mcp-server",
            "version": "2.0.0",
            "seenAt": "2026-11-06T23:56:03.791188542Z"
          }
        ],
        "githubStars": 0,
        "npmWeekly": 55,
        "securityTxt": {
          "url": "https://pictify.io/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:00:53.674703481Z"
        },
        "llmsTxt": {
          "url": "https://docs.pictify.io/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:33:37.409193605Z"
        },
        "pages": [
          {
            "url": "https://docs.pictify.io/resources/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:07:29.763829977Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "8886bf07ecff"
          },
          {
            "url": "https://pictify.io/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:16:26.928025338Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "de6aaaa6113c"
          },
          {
            "url": "https://pictify.io/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:16:29.17143268Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "f3dfbe385bd9"
          }
        ],
        "updatedAt": "2026-11-07T18:20:46.929814597Z"
      }
    },
    "answer": "Pictify scores 55.7 (C) on agent readiness against Placid API + MCP's 43 (E), and leads in 5 of 7 scored categories. Placid API + MCP leads on reliability and transparency \u0026 trust.",
    "b": {
      "slug": "placid",
      "name": "Placid API + MCP",
      "vendor": "Placid",
      "vendorUrl": "https://placid.app",
      "kind": "http-api",
      "category": "design-assets",
      "summary": "Template rendering to images, PDFs and videos through a REST API, a URL API and an MCP server, with an embeddable template editor SDK.",
      "url": "https://www.anchorterminal.com/tools/placid",
      "markdownUrl": "https://www.anchorterminal.com/tools/placid.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/placid.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/placid.json",
      "dns": "placid.grade.anchorterminal.com",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.placid.app/api/rest",
      "packages": [],
      "auth": "api-key",
      "authNotes": "Project-scoped API token, sent as a bearer token in the Authorization header. The MCP server has a per-project URL and takes the token as a bearer header or, where a client can't set headers, as ?api_token= in the URL.",
      "pricing": "paid",
      "pricingNotes": "Free trial, and unlimited watermarked previews in test mode. Basic $19 a month (500 credits), Pro $39 (2,500), Business $89 (25,000), VIP $249 (100,000). Yearly billing is 10 times the monthly price. 1 image is 1 credit (up to 4,000 px), 10 seconds of video is 10 credits, 1 PDF page is 2 credits (https://placid.app/pricing).",
      "priceSummary": "$19 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "Subscription credits only. No x402 in the docs (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://placid.app/docs/2.0/introduction",
      "capabilities": [
        "design.templates",
        "design.render",
        "video.render"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "mcp",
        "async-jobs",
        "webhooks"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 43,
        "grade": "E",
        "agentReady": false,
        "rank": 1244,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 14,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 40,
          "maintenance": 7,
          "payments": 35,
          "reliability": 75,
          "schema": 34,
          "security": 34,
          "transparency": 58
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Hyperping status page with separate App and API components and 90-day history. No OpenAPI, no llms.txt, and the MCP tool list isn't published.",
        "bestFor": "Small teams and no-code builders who want template renders to image, PDF and video at a low monthly price, and agents that should be fenced to a few templates.",
        "strengths": [
          "Hyperping status page with separate App and API components and 90-day history",
          "Rate-limit headers (Limit, Remaining, Reset) and exponential backoff guidance documented",
          "Unlimited watermarked previews in test mode, and a trial with no card",
          "MCP settings restrict which templates and which output types an agent can use",
          "Named Austrian legal entity, privacy policy updated in November 2024, DPA on request"
        ],
        "weaknesses": [
          "No OpenAPI, no llms.txt, and the MCP tool list isn't published",
          "MCP setup guide documents the API token in the URL query string",
          "Changelog has no dates, so there's no public record of recent changes",
          "PHP and Laravel libraries last tagged on 2022-07-20, pointing at the older placid.app/api/rest base",
          "Subprocessors and hosting location aren't disclosed"
        ],
        "agentNotes": [
          "Send the token in the `Authorization` header, not as ?api_token=, wherever the client allows it",
          "Read X-RateLimit-Remaining and wait for X-RateLimit-Reset after a 429",
          "Use test mode for watermarked previews while matching layer names, then switch to live renders",
          "Leave create_now off for batches, since it caps at 10 at once and may fail under load",
          "Poll the returned polling_url or pass webhook_success, since images start as queued"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "E",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 43
          }
        ],
        "editorialScores": {
          "ergonomics": 40,
          "maintenance": 7,
          "payments": 35,
          "reliability": 75,
          "schema": 34,
          "security": 34,
          "transparency": 33
        },
        "provenanceScore": 83,
        "checked": {
          "categories": {
            "ergonomics": "2026-10-01",
            "maintenance": "2026-10-01",
            "payments": "2026-10-01",
            "reliability": "2026-10-01",
            "schema": "2026-10-01",
            "security": "2026-10-01",
            "transparency": "2026-10-01"
          },
          "last": "2026-10-01",
          "lastMoved": "2026-10-27",
          "oldest": "2026-10-01",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl https://api.placid.app/api/rest/templates -H \"Authorization: Bearer $PLACID_API_TOKEN\"",
        "claudeCode": "claude mcp add --transport http placid https://mcp.placid.app/\u003cyour-project-url\u003e --header \"Authorization: Bearer $PLACID_API_TOKEN\""
      },
      "letme": {
        "capability": "https://letme.dev/design.templates",
        "tool": "https://letme.dev/placid"
      },
      "area": "design-diagrams",
      "unitPrices": [
        {
          "item": "Basic",
          "unit": "month",
          "usd": 19,
          "note": "500 credits, $190 billed yearly"
        },
        {
          "item": "Pro",
          "unit": "month",
          "usd": 39,
          "note": "2,500 credits, $390 billed yearly"
        },
        {
          "item": "Business",
          "unit": "month",
          "usd": 89,
          "note": "25,000 credits, $890 billed yearly"
        },
        {
          "item": "VIP",
          "unit": "month",
          "usd": 249,
          "note": "100,000 credits, $2,490 billed yearly"
        }
      ],
      "provenance": {
        "legalEntity": "Nifty Software GmbH",
        "domain": "placid.app",
        "domainRegistered": "2018-05-08",
        "endpointOnVendorDomain": true,
        "terms": "https://placid.app/terms-and-conditions",
        "privacy": "https://placid.app/privacy",
        "statusPage": "https://status.placid.app",
        "changelog": "https://headwayapp.co/placid-changelog",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "The changelog is hosted on Headway (headwayapp.co), not on placid.app"
        ],
        "score": 83
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/placid.json",
      "live": {
        "slug": "placid",
        "probe": {
          "target": "https://api.placid.app/api/rest",
          "method": "get",
          "lastAt": "2026-11-07T18:20:47.319012301Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 207,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 99.99,
          "p50ms24h": 169,
          "p95ms24h": 282,
          "samples24h": 239,
          "samples30d": 7910,
          "days": [
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 268,
              "ok": 268
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "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": 248
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-15",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-16",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-17",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-18",
              "probes": 256,
              "ok": 256
            },
            {
              "date": "2026-10-19",
              "probes": 255,
              "ok": 255
            },
            {
              "date": "2026-10-20",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-21",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-22",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-23",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-24",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-25",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-26",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-27",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-28",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-29",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-30",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-31",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-11-01",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-11-02",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-11-03",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-11-04",
              "probes": 246,
              "ok": 246
            },
            {
              "date": "2026-11-05",
              "probes": 185,
              "ok": 184
            },
            {
              "date": "2026-11-06",
              "probes": 241,
              "ok": 241
            },
            {
              "date": "2026-11-07",
              "probes": 187,
              "ok": 187
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.placid.app",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-07T04:48:36.694737265Z"
        },
        "securityTxt": {
          "url": "https://placid.app/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T15:59:42.59382187Z"
        },
        "domain": {
          "domain": "placid.app",
          "registered": "2018-05-08",
          "source": "https://pubapi.registry.google/rdap/domain/placid.app",
          "checkedAt": "2026-11-01T14:12:11.788930956Z"
        },
        "pages": [
          {
            "url": "https://headwayapp.co/placid-changelog",
            "kind": "changelog",
            "status": 0,
            "checkedAt": "2026-11-07T14:10:51.649582378Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "blockedByRobots": true
          },
          {
            "url": "https://placid.app/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-11-07T14:16:31.049458005Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "99e692b08293"
          },
          {
            "url": "https://placid.app/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:16:33.283749241Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "4ce631cc70ce"
          },
          {
            "url": "https://placid.app/terms-and-conditions",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:16:35.47662252Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "c733087a07e6"
          }
        ],
        "updatedAt": "2026-11-07T18:20:47.319012301Z"
      }
    },
    "edges": [
      {
        "by": 61,
        "category": "maintenance",
        "leads": "pictify",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "@pictify/mcp-server 2.0.0 published on 20 September 2026, 47 days before this check, with the changelog's newest entry dated September 2026 (20). Since 8 August, MCP versions 1.5.0 (8 August), 1.5.1 (11 August) and 2.0.0 (20 September), and changelog entries for August and September (20). GitHub issues weren't read, and the repository has one committer (5 of 25, unchecked). io.github.pictify-io/mcp is in the official MCP registry under the GitHub-verified namespace at 2.0.0, and official SDKs exist in four languages (15). CI builds and runs tests on push and pull requests (8 of 10). 20 + 20 + 5 + 15 + 8 = 68.",
          "b": "We found no dated release or API change. The Headway changelog has no dates, its entries mention Integromat and a v2.0 launch, and /changelog on placid.app returns 404 (0). No dated entries in the last 90 days (0). Support by email named in the error docs, public changelog stale (4). Official PHP and Laravel libraries were last tagged v1.0.1 on 2022-07-20 and still call placid.app/api/rest (3). No CI on either library (0)."
        },
        "scores": {
          "a": 68,
          "b": 7
        }
      },
      {
        "by": 54,
        "category": "schema",
        "leads": "pictify",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "Public OpenAPI 3.1 at docs.pictify.io/openapi/v1.yaml with 20 paths (25). llms.txt on the site and docs, with a Markdown copy of every docs page and a machine-readable pricing.md (10). Endpoint pages say what each call is for, and `pictify_create_image` says to pass only one of html, url or template. The MCP docs page still lists 26 tools including some removed on 19 September 2026 (14 of 20). Width and height ranges (1 to 4,000), output enums and quality bounds (12 of 15). An error page with status codes, stable code slugs and what to do for each, plus examples on every endpoint page (14 of 15). Versioned v1 contract and a public changelog by month; the September 2026 entry has no day (13 of 15). 25 + 10 + 14 + 12 + 14 + 13 = 88.",
          "b": "No OpenAPI or other machine-readable contract, and the MCP tool definitions aren't published (0). /llms.txt returns 404 (0). Endpoint pages state purpose and warn that create_now may fail under high load (12). template_uuid is the one required field and status is an enum, but `layers` and `modifications` are open objects keyed by layer name (8). Request and response examples per endpoint, and an error page with six codes but no body format (9). Docs are versioned 2.0, but the changelog on Headway carries no dates and its newest entries predate the MCP server (5)."
        },
        "scores": {
          "a": 88,
          "b": 34
        }
      },
      {
        "by": 34,
        "category": "ergonomics",
        "leads": "pictify",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "25 MCP tools in the 2.0.0 source (15 for 11 to 30), with no toolsets or read-only subset (15). List endpoints page with `page` and `limit` (16 of 20). Error bodies carry `code` slugs such as `quota_exceeded`, `template_limit_reached` and `invalid_variable`, and the docs say which are retryable (18 of 20). Generation is safe to retry and failed calls bill nothing, but the MCP source sets no readOnlyHint or destructiveHint, and the delete tools for templates and video templates run without a confirmation step (10 of 20). Official SDKs for Node.js, Python, Go and Ruby, sensible defaults such as 1200 x 630 PNG (15). 15 + 16 + 18 + 10 + 15 = 74.",
          "b": "Image, PDF and video objects are small and the MCP can be limited to chosen templates and creative types (15). We found no pagination or filter parameters on the pages we read (5). Six status codes documented without an error body format (10). No idempotency key, no MCP tool annotations we could see, and DELETE removes an image for good. Polling the polling_url is safe (3). Only template_uuid is required, but the official libraries are PHP and Laravel only, both last tagged v1.0.1 on 2022-07-20 (7)."
        },
        "scores": {
          "a": 74,
          "b": 40
        }
      },
      {
        "by": 30,
        "category": "reliability",
        "leads": "placid",
        "name": "Reliability",
        "reasons": {
          "a": "Hosted lines, for the REST API. The home page links a status page at status.pictify.io, but its robots.txt disallows every path, so its components and history weren't read. Half for a page that exists (10 of 20) and no readable history (5). Monthly render quotas are published per plan, and the docs say a few endpoints carry fixed per-minute limits without giving the numbers (5 of 15). Retry guidance is explicit. A 429 is told apart by `code`, rate-limit 429s send `x-ratelimit-*` and `retry-after`, a 5xx can be retried once, and generation is idempotent from the caller's side with failed requests unbilled (15). No SLA found (0). The API isn't labelled beta (10). 10 + 5 + 5 + 15 + 0 + 10 = 45.",
          "b": "Hyperping status page at status.placid.app with separate App and API components and 90-day bars (20). No incidents are posted. The page's own figure for the API is 99.963 per cent over 90 days, roughly 48 minutes of recorded downtime with no write-up, so minor rather than clean (20). 60 requests a minute and 10 simultaneous create_now requests, documented (15). X-RateLimit-Limit, -Remaining and -Reset headers and exponential backoff advice on 429, but no idempotency key or safe-retry note for renders, which are writes (10). No SLA found on the pricing page or in the docs (0). REST API 2.0 is GA (10)."
        },
        "scores": {
          "a": 45,
          "b": 75
        }
      },
      {
        "by": 11,
        "category": "security",
        "leads": "pictify",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "Prefixed API keys that can be rotated or revoked at once in the dashboard, with no scopes. The hosted MCP endpoint's metadata names api.pictify.io as authorisation server with one `mcp:tools` scope, not described in the docs (22 of 30). No read-only key or mode, and delete tools need no confirmation (5 of 20). The URL screenshot and render tools return images and URLs rather than page text, and an SSRF protection page documents how fetches are limited (10 of 15). A dashboard usage view and webhook events for renders, with no per-call audit log (5 of 15). No security.txt, disclosure policy, bug bounty or certification found; docs pages on key handling and SSRF only (3 of 20). 22 + 5 + 10 + 5 + 3 = 45.",
          "b": "One bearer token per project, no scopes, and the docs say nothing on revoking or rotating it (15). The MCP setup guide documents ?api_token= in the server URL for clients that can't set headers, less 10 (5). MCP settings restrict which templates and which output types (image, PDF, video, docs only) the server can use (14). Returns renders from your own templates (10). A dashboard activity log is mentioned in the changelog, nothing per call documented (5). No security.txt (404), no certification in the privacy policy and no disclosure policy found (0)."
        },
        "scores": {
          "a": 45,
          "b": 34
        }
      },
      {
        "by": 6,
        "category": "transparency",
        "leads": "placid",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "The MCP server is MIT. The service is closed under terms of 18 July 2024 that name only Pictify.io (20 of 30). The privacy policy of the same date keeps data 'for as long as necessary' with no periods, names no processors and doesn't mention that the MCP server sends tool arguments, results and the account email to PostHog (6 of 30). The changelog records retirements, Workflows in September 2026 and MCP tools on 19 September, with no notice period or deprecation policy (5 of 20). MCP analytics are on by default and disclosed with an opt-out in the README only, and no subprocessors or data locations are listed (8 of 20). 20 + 6 + 5 + 8 = 39.",
          "b": "Closed service under published terms, per the 30 September check (15). Privacy policy updated 18 November 2024, a DPA on request, and raw request data kept 'for a limited amount of time' with no period stated (12). No deprecation policy or dated notices. The old changelog says v1 remains functional (3). Subprocessor categories only, with 'We don't publish further details of our data processors', and no hosting location (3)."
        },
        "scores": {
          "a": 52,
          "b": 58
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Pictify.io",
        "b": "Placid",
        "name": "Vendor"
      },
      {
        "a": "https://api.pictify.io",
        "b": "https://api.placid.app/api/rest",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, stdio, Streamable HTTP",
        "b": "HTTP, Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "$0.005 per image",
        "b": "not published",
        "name": "Price for design rendering"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT for the MCP server. The Pictify API is a closed service under terms last updated 18 July 2024",
        "b": "none",
        "name": "Licence"
      },
      {
        "a": "25",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "io.github.pictify-io/mcp",
        "b": "not listed",
        "name": "MCP registry"
      },
      {
        "a": "2026-09-20",
        "b": "none",
        "name": "Last release"
      },
      {
        "a": "2024-07-18",
        "b": "2024-11-25",
        "name": "Terms last updated"
      },
      {
        "a": "2024-07-18",
        "b": "2024-11-18",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "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": "55 npm/wk",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "3.5/5 (2)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Pictify scores 55.7 (C) on agent readiness against Placid API + MCP's 43 (E), and leads in 5 of 7 scored categories. Placid API + MCP leads on reliability and transparency \u0026 trust.",
        "question": "Which is better for AI agents, Pictify or Placid API + MCP?"
      },
      {
        "answer": "Pictify takes an API key or an OAuth sign-in. Placid API + MCP needs an API key.",
        "question": "Do Pictify and Placid API + MCP need an API key?"
      },
      {
        "answer": "Yes. Pictify has a hosted endpoint at https://api.pictify.io and Placid API + MCP at https://api.placid.app/api/rest.",
        "question": "Can an agent call Pictify and Placid API + MCP without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 88 against 34",
          "Agent ergonomics, 74 against 40",
          "Security \u0026 auth, 45 against 34",
          "Payments \u0026 pricing, 40 against 35",
          "Maintenance \u0026 community, 68 against 7"
        ],
        "also": [
          "Runs on your own machine",
          "Free to start without a card"
        ],
        "goodFor": "HTML-to-image, template renders, PDFs and short video from one API, with per-render prices an agent can budget.",
        "slug": "pictify",
        "watchFor": "The MCP server sends tool arguments, results and the account email to PostHog unless turned off"
      },
      {
        "aheadOn": [
          "Reliability, 75 against 45",
          "Transparency \u0026 trust, 58 against 52"
        ],
        "also": [
          "No incidents deducted, where Pictify loses 3 points for them"
        ],
        "goodFor": "Small teams and no-code builders who want template renders to image, PDF and video at a low monthly price, and agents that should be fenced to a few templates.",
        "slug": "placid",
        "watchFor": "No OpenAPI, no llms.txt, and the MCP tool list isn't published"
      }
    ],
    "history": {
      "pictify": null,
      "placid": [
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.1,
          "from": 42.9,
          "fromGrade": "E",
          "to": 43,
          "toGrade": "E"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-08",
          "delta": -0.3,
          "from": 43.2,
          "fromGrade": "E",
          "to": 42.9,
          "toGrade": "E"
        }
      ]
    },
    "job": {
      "capability": "design.render",
      "name": "Design rendering"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-placid.json",
        "title": "Adobe Photoshop API vs Placid API + MCP",
        "url": "https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-placid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/apitemplate-io-vs-pictify.json",
        "title": "APITemplate.io vs Pictify",
        "url": "https://www.anchorterminal.com/compare/apitemplate-io-vs-pictify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/apitemplate-io-vs-placid.json",
        "title": "APITemplate.io vs Placid API + MCP",
        "url": "https://www.anchorterminal.com/compare/apitemplate-io-vs-placid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bannerbear-vs-pictify.json",
        "title": "Bannerbear API + MCP vs Pictify",
        "url": "https://www.anchorterminal.com/compare/bannerbear-vs-pictify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bannerbear-vs-placid.json",
        "title": "Bannerbear API + MCP vs Placid API + MCP",
        "url": "https://www.anchorterminal.com/compare/bannerbear-vs-placid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/canva-vs-pictify.json",
        "title": "Canva REST APIs + MCP vs Pictify",
        "url": "https://www.anchorterminal.com/compare/canva-vs-pictify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/canva-vs-placid.json",
        "title": "Canva REST APIs + MCP vs Placid API + MCP",
        "url": "https://www.anchorterminal.com/compare/canva-vs-placid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/contentdrips-vs-pictify.json",
        "title": "Contentdrips API and MCP vs Pictify",
        "url": "https://www.anchorterminal.com/compare/contentdrips-vs-pictify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/contentdrips-vs-placid.json",
        "title": "Contentdrips API and MCP vs Placid API + MCP",
        "url": "https://www.anchorterminal.com/compare/contentdrips-vs-placid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/creatomate-vs-pictify.json",
        "title": "Creatomate vs Pictify",
        "url": "https://www.anchorterminal.com/compare/creatomate-vs-pictify"
      },
      {
        "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/dynapictures-vs-pictify.json",
        "title": "DynaPictures vs Pictify",
        "url": "https://www.anchorterminal.com/compare/dynapictures-vs-pictify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dynapictures-vs-placid.json",
        "title": "DynaPictures vs Placid API + MCP",
        "url": "https://www.anchorterminal.com/compare/dynapictures-vs-placid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/layerre-vs-pictify.json",
        "title": "Layerre vs Pictify",
        "url": "https://www.anchorterminal.com/compare/layerre-vs-pictify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/layerre-vs-placid.json",
        "title": "Layerre vs Placid API + MCP",
        "url": "https://www.anchorterminal.com/compare/layerre-vs-placid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/photoroom-vs-pictify.json",
        "title": "Photoroom API vs Pictify",
        "url": "https://www.anchorterminal.com/compare/photoroom-vs-pictify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/photoroom-vs-placid.json",
        "title": "Photoroom API vs Placid API + MCP",
        "url": "https://www.anchorterminal.com/compare/photoroom-vs-placid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pixelixe-vs-placid.json",
        "title": "Pixelixe vs Placid API + MCP",
        "url": "https://www.anchorterminal.com/compare/pixelixe-vs-placid"
      },
      {
        "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/placid-vs-robolly.json",
        "title": "Placid API + MCP vs Robolly",
        "url": "https://www.anchorterminal.com/compare/placid-vs-robolly"
      },
      {
        "json": "https://www.anchorterminal.com/compare/placid-vs-shotstack.json",
        "title": "Placid API + MCP vs Shotstack",
        "url": "https://www.anchorterminal.com/compare/placid-vs-shotstack"
      },
      {
        "json": "https://www.anchorterminal.com/compare/placid-vs-templated.json",
        "title": "Placid API + MCP vs Templated API + MCP",
        "url": "https://www.anchorterminal.com/compare/placid-vs-templated"
      },
      {
        "json": "https://www.anchorterminal.com/compare/abyssale-vs-pictify.json",
        "title": "Abyssale vs Pictify",
        "url": "https://www.anchorterminal.com/compare/abyssale-vs-pictify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/abyssale-vs-placid.json",
        "title": "Abyssale vs Placid API + MCP",
        "url": "https://www.anchorterminal.com/compare/abyssale-vs-placid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-pictify.json",
        "title": "Adobe Photoshop API vs Pictify",
        "url": "https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-pictify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/osmo-cli-vs-pictify.json",
        "title": "Osmo CLI vs Pictify",
        "url": "https://www.anchorterminal.com/compare/osmo-cli-vs-pictify"
      },
      {
        "json": "https://www.anchorterminal.com/compare/osmo-cli-vs-placid.json",
        "title": "Osmo CLI vs Placid API + MCP",
        "url": "https://www.anchorterminal.com/compare/osmo-cli-vs-placid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pictify-vs-pixelixe.json",
        "title": "Pictify vs Pixelixe",
        "url": "https://www.anchorterminal.com/compare/pictify-vs-pixelixe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pictify-vs-postnitro.json",
        "title": "Pictify vs PostNitro",
        "url": "https://www.anchorterminal.com/compare/pictify-vs-postnitro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pictify-vs-robolly.json",
        "title": "Pictify vs Robolly",
        "url": "https://www.anchorterminal.com/compare/pictify-vs-robolly"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pictify-vs-shotstack.json",
        "title": "Pictify vs Shotstack",
        "url": "https://www.anchorterminal.com/compare/pictify-vs-shotstack"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pictify-vs-templated.json",
        "title": "Pictify vs Templated API + MCP",
        "url": "https://www.anchorterminal.com/compare/pictify-vs-templated"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 30,
        "edge": "placid",
        "key": "reliability",
        "name": "Reliability",
        "pictify": 45,
        "placid": 75,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 54,
        "edge": "pictify",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "pictify": 88,
        "placid": 34,
        "weight": 13
      },
      {
        "by": 34,
        "edge": "pictify",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "pictify": 74,
        "placid": 40,
        "weight": 13
      },
      {
        "by": 11,
        "edge": "pictify",
        "key": "security",
        "name": "Security \u0026 auth",
        "pictify": 45,
        "placid": 34,
        "weight": 14
      },
      {
        "by": 5,
        "edge": "pictify",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "pictify": 40,
        "placid": 35,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 61,
        "edge": "pictify",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "pictify": 68,
        "placid": 7,
        "weight": 7
      },
      {
        "by": 6,
        "edge": "placid",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "pictify": 52,
        "placid": 58,
        "weight": 7
      }
    ],
    "summary": "Pictify scores 55.7 (C) on agent readiness against Placid API + MCP's 43 (E), and leads in 5 of 7 scored categories. Placid API + MCP leads on reliability and transparency \u0026 trust. Both do design rendering.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "pictify": "A public OpenAPI 3.1 contract, per-render overage prices, a recurring no-card free tier and error codes that tell quota apart from rate limits make Pictify easy for an agent to call and budget. Its MCP server reports tool arguments and results to PostHog by default, and the privacy policy, last updated July 2024, mentions neither.",
      "placid": "Hyperping status page with separate App and API components and 90-day history. No OpenAPI, no llms.txt, and the MCP tool list isn't published."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/pictify-vs-placid",
    "json": "https://www.anchorterminal.com/compare/pictify-vs-placid.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/pictify-vs-placid.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/pictify-vs-placid.min.md"
  },
  "markdown": "Pictify scores 55.7 (C) on agent readiness against Placid API + MCP's 43 (E), and leads in 5 of 7 scored categories. Placid API + MCP leads on reliability and transparency \u0026 trust. Both do design rendering.\n\n- Pictify: grade C, 55.7/100, rank #856 of 1486. Markdown https://www.anchorterminal.com/tools/pictify.md · JSON https://www.anchorterminal.com/api/v1/tools/pictify.json\n- Placid API + MCP: grade E, 43/100, rank #1244 of 1486. Markdown https://www.anchorterminal.com/tools/placid.md · JSON https://www.anchorterminal.com/api/v1/tools/placid.json\n- Best programmatic image and design asset APIs for AI agents: https://www.anchorterminal.com/best/design-assets/index.md\n- All 153 assets comparisons: https://www.anchorterminal.com/compare/design-assets/index.md\n\n## Which one, for what\n\n### Pictify (C)\n\nGood for: HTML-to-image, template renders, PDFs and short video from one API, with per-render prices an agent can budget.\n\nAhead on:\n- Schema \u0026 documentation, 88 against 34\n- Agent ergonomics, 74 against 40\n- Security \u0026 auth, 45 against 34\n- Payments \u0026 pricing, 40 against 35\n- Maintenance \u0026 community, 68 against 7\n\nAlso in its favour:\n- Runs on your own machine\n- Free to start without a card\n\nWatch for: The MCP server sends tool arguments, results and the account email to PostHog unless turned off\n\n### Placid API + MCP (E)\n\nGood for: Small teams and no-code builders who want template renders to image, PDF and video at a low monthly price, and agents that should be fenced to a few templates.\n\nAhead on:\n- Reliability, 75 against 45\n- Transparency \u0026 trust, 58 against 52\n\nAlso in its favour:\n- No incidents deducted, where Pictify loses 3 points for them\n\nWatch for: No OpenAPI, no llms.txt, and the MCP tool list isn't published\n\n\n## Why the edge\n\n### Maintenance \u0026 community: Pictify +61\n\n- Pictify (68): @pictify/mcp-server 2.0.0 published on 20 September 2026, 47 days before this check, with the changelog's newest entry dated September 2026 (20). Since 8 August, MCP versions 1.5.0 (8 August), 1.5.1 (11 August) and 2.0.0 (20 September), and changelog entries for August and September (20). GitHub issues weren't read, and the repository has one committer (5 of 25, unchecked). io.github.pictify-io/mcp is in the official MCP registry under the GitHub-verified namespace at 2.0.0, and official SDKs exist in four languages (15). CI builds and runs tests on push and pull requests (8 of 10). 20 + 20 + 5 + 15 + 8 = 68.\n- Placid API + MCP (7): We found no dated release or API change. The Headway changelog has no dates, its entries mention Integromat and a v2.0 launch, and /changelog on placid.app returns 404 (0). No dated entries in the last 90 days (0). Support by email named in the error docs, public changelog stale (4). Official PHP and Laravel libraries were last tagged v1.0.1 on 2022-07-20 and still call placid.app/api/rest (3). No CI on either library (0).\n\n### Schema \u0026 documentation: Pictify +54\n\n- Pictify (88): Public OpenAPI 3.1 at docs.pictify.io/openapi/v1.yaml with 20 paths (25). llms.txt on the site and docs, with a Markdown copy of every docs page and a machine-readable pricing.md (10). Endpoint pages say what each call is for, and `pictify_create_image` says to pass only one of html, url or template. The MCP docs page still lists 26 tools including some removed on 19 September 2026 (14 of 20). Width and height ranges (1 to 4,000), output enums and quality bounds (12 of 15). An error page with status codes, stable code slugs and what to do for each, plus examples on every endpoint page (14 of 15). Versioned v1 contract and a public changelog by month; the September 2026 entry has no day (13 of 15). 25 + 10 + 14 + 12 + 14 + 13 = 88.\n- Placid API + MCP (34): No OpenAPI or other machine-readable contract, and the MCP tool definitions aren't published (0). /llms.txt returns 404 (0). Endpoint pages state purpose and warn that create_now may fail under high load (12). template_uuid is the one required field and status is an enum, but `layers` and `modifications` are open objects keyed by layer name (8). Request and response examples per endpoint, and an error page with six codes but no body format (9). Docs are versioned 2.0, but the changelog on Headway carries no dates and its newest entries predate the MCP server (5).\n\n### Agent ergonomics: Pictify +34\n\n- Pictify (74): 25 MCP tools in the 2.0.0 source (15 for 11 to 30), with no toolsets or read-only subset (15). List endpoints page with `page` and `limit` (16 of 20). Error bodies carry `code` slugs such as `quota_exceeded`, `template_limit_reached` and `invalid_variable`, and the docs say which are retryable (18 of 20). Generation is safe to retry and failed calls bill nothing, but the MCP source sets no readOnlyHint or destructiveHint, and the delete tools for templates and video templates run without a confirmation step (10 of 20). Official SDKs for Node.js, Python, Go and Ruby, sensible defaults such as 1200 x 630 PNG (15). 15 + 16 + 18 + 10 + 15 = 74.\n- Placid API + MCP (40): Image, PDF and video objects are small and the MCP can be limited to chosen templates and creative types (15). We found no pagination or filter parameters on the pages we read (5). Six status codes documented without an error body format (10). No idempotency key, no MCP tool annotations we could see, and DELETE removes an image for good. Polling the polling_url is safe (3). Only template_uuid is required, but the official libraries are PHP and Laravel only, both last tagged v1.0.1 on 2022-07-20 (7).\n\n### Reliability: Placid API + MCP +30\n\n- Pictify (45): Hosted lines, for the REST API. The home page links a status page at status.pictify.io, but its robots.txt disallows every path, so its components and history weren't read. Half for a page that exists (10 of 20) and no readable history (5). Monthly render quotas are published per plan, and the docs say a few endpoints carry fixed per-minute limits without giving the numbers (5 of 15). Retry guidance is explicit. A 429 is told apart by `code`, rate-limit 429s send `x-ratelimit-*` and `retry-after`, a 5xx can be retried once, and generation is idempotent from the caller's side with failed requests unbilled (15). No SLA found (0). The API isn't labelled beta (10). 10 + 5 + 5 + 15 + 0 + 10 = 45.\n- Placid API + MCP (75): Hyperping status page at status.placid.app with separate App and API components and 90-day bars (20). No incidents are posted. The page's own figure for the API is 99.963 per cent over 90 days, roughly 48 minutes of recorded downtime with no write-up, so minor rather than clean (20). 60 requests a minute and 10 simultaneous create_now requests, documented (15). X-RateLimit-Limit, -Remaining and -Reset headers and exponential backoff advice on 429, but no idempotency key or safe-retry note for renders, which are writes (10). No SLA found on the pricing page or in the docs (0). REST API 2.0 is GA (10).\n\n### Security \u0026 auth: Pictify +11\n\n- Pictify (45): Prefixed API keys that can be rotated or revoked at once in the dashboard, with no scopes. The hosted MCP endpoint's metadata names api.pictify.io as authorisation server with one `mcp:tools` scope, not described in the docs (22 of 30). No read-only key or mode, and delete tools need no confirmation (5 of 20). The URL screenshot and render tools return images and URLs rather than page text, and an SSRF protection page documents how fetches are limited (10 of 15). A dashboard usage view and webhook events for renders, with no per-call audit log (5 of 15). No security.txt, disclosure policy, bug bounty or certification found; docs pages on key handling and SSRF only (3 of 20). 22 + 5 + 10 + 5 + 3 = 45.\n- Placid API + MCP (34): One bearer token per project, no scopes, and the docs say nothing on revoking or rotating it (15). The MCP setup guide documents ?api_token= in the server URL for clients that can't set headers, less 10 (5). MCP settings restrict which templates and which output types (image, PDF, video, docs only) the server can use (14). Returns renders from your own templates (10). A dashboard activity log is mentioned in the changelog, nothing per call documented (5). No security.txt (404), no certification in the privacy policy and no disclosure policy found (0).\n\n### Transparency \u0026 trust: Placid API + MCP +6\n\n- Pictify (52): The MCP server is MIT. The service is closed under terms of 18 July 2024 that name only Pictify.io (20 of 30). The privacy policy of the same date keeps data 'for as long as necessary' with no periods, names no processors and doesn't mention that the MCP server sends tool arguments, results and the account email to PostHog (6 of 30). The changelog records retirements, Workflows in September 2026 and MCP tools on 19 September, with no notice period or deprecation policy (5 of 20). MCP analytics are on by default and disclosed with an opt-out in the README only, and no subprocessors or data locations are listed (8 of 20). 20 + 6 + 5 + 8 = 39.\n- Placid API + MCP (58): Closed service under published terms, per the 30 September check (15). Privacy policy updated 18 November 2024, a DPA on request, and raw request data kept 'for a limited amount of time' with no period stated (12). No deprecation policy or dated notices. The old changelog says v1 remains functional (3). Subprocessor categories only, with 'We don't publish further details of our data processors', and no hosting location (3).\n\n## Score by category\n\n| Category | Weight | Pictify | Placid API + MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 45 | 75 | Placid API + MCP +30 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 88 | 34 | Pictify +54 |\n| Agent ergonomics | 13% (16.2 this run) | 74 | 40 | Pictify +34 |\n| Security \u0026 auth | 14% (17.5 this run) | 45 | 34 | Pictify +11 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 35 | Pictify +5 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 68 | 7 | Pictify +61 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 52 | 58 | Placid API + MCP +6 |\n| Negative events | ≤15 | -3 | 0 | |\n| **Total** | | **55.7 · C** | **43 · E** | |\n\n## Facts side by side\n\n| Fact | Pictify | Placid API + MCP |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Pictify.io | Placid |\n| Hosted endpoint | `https://api.pictify.io` | `https://api.placid.app/api/rest` |\n| Transports | HTTP, stdio, Streamable HTTP | HTTP, Streamable HTTP |\n| Auth | OAuth or key | API key |\n| Pricing | Freemium | Paid |\n| Price for design rendering | $0.005 per image | not published |\n| x402 | no | no |\n| Licence | MIT for the MCP server. The Pictify API is a closed service under terms last updated 18 July 2024 | none |\n| Tools exposed | 25 | none |\n| Read-only variant documented | no | no |\n| llms.txt | yes | no |\n| MCP registry | `io.github.pictify-io/mcp` | not listed |\n| Last release | 2026-09-20 | none |\n| Terms last updated | 2024-07-18 | 2024-11-25 |\n| Privacy policy last updated | 2024-07-18 | 2024-11-18 |\n| Customer content may train models | not found in the text | not found in the text |\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 | 55 npm/wk | none |\n| Agent reviews | none | 3.5/5 (2) |\n\n## How the scores have moved\n\n### Pictify\n\nNo score change since it was listed.\n\n### Placid API + MCP\n\n- +0.1 on 27 October 2026: checklist\n- -0.3 on 8 October 2026: checklist\n\n## Verdicts\n\n**Pictify.** A public OpenAPI 3.1 contract, per-render overage prices, a recurring no-card free tier and error codes that tell quota apart from rate limits make Pictify easy for an agent to call and budget. Its MCP server reports tool arguments and results to PostHog by default, and the privacy policy, last updated July 2024, mentions neither.\n\n**Placid API + MCP.** Hyperping status page with separate App and API components and 90-day history. No OpenAPI, no llms.txt, and the MCP tool list isn't published.\n\n## Before you call either\n\n### Pictify\n\n1. Set `PICTIFY_ANALYTICS_DISABLED=1` in the MCP server's env when tool inputs are confidential\n2. On a 429, read `code` first; `quota_exceeded` means wait for the monthly reset, not retry\n3. Retry a 5xx once; a failed generation bills nothing\n4. Pass only one of `html`, `url` or `template` to `pictify_create_image`\n5. Use batch render for one image per row rather than many single calls\n\n### Placid API + MCP\n\n1. Send the token in the `Authorization` header, not as ?api_token=, wherever the client allows it\n2. Read X-RateLimit-Remaining and wait for X-RateLimit-Reset after a 429\n3. Use test mode for watermarked previews while matching layer names, then switch to live renders\n4. Leave create_now off for batches, since it caps at 10 at once and may fail under load\n5. Poll the returned polling_url or pass webhook_success, since images start as queued\n\n## Questions\n\n### Which is better for AI agents, Pictify or Placid API + MCP?\n\nPictify scores 55.7 (C) on agent readiness against Placid API + MCP's 43 (E), and leads in 5 of 7 scored categories. Placid API + MCP leads on reliability and transparency \u0026 trust.\n\n### Do Pictify and Placid API + MCP need an API key?\n\nPictify takes an API key or an OAuth sign-in. Placid API + MCP needs an API key.\n\n### Can an agent call Pictify and Placid API + MCP without installing anything?\n\nYes. Pictify has a hosted endpoint at https://api.pictify.io and Placid API + MCP at https://api.placid.app/api/rest.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/pictify-vs-placid.json, and with the fewest tokens: https://www.anchorterminal.com/compare/pictify-vs-placid.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"pictify\", \"b\": \"placid\"}`. From a terminal: `anchor compare pictify placid`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/pictify.json and https://www.anchorterminal.com/api/v1/tools/placid.json\n\n## Other comparisons with Pictify or Placid API + MCP\n\n- [Adobe Photoshop API vs Placid API + MCP](https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-placid.md)\n- [APITemplate.io vs Pictify](https://www.anchorterminal.com/compare/apitemplate-io-vs-pictify.md)\n- [APITemplate.io vs Placid API + MCP](https://www.anchorterminal.com/compare/apitemplate-io-vs-placid.md)\n- [Bannerbear API + MCP vs Pictify](https://www.anchorterminal.com/compare/bannerbear-vs-pictify.md)\n- [Bannerbear API + MCP vs Placid API + MCP](https://www.anchorterminal.com/compare/bannerbear-vs-placid.md)\n- [Canva REST APIs + MCP vs Pictify](https://www.anchorterminal.com/compare/canva-vs-pictify.md)\n- [Canva REST APIs + MCP vs Placid API + MCP](https://www.anchorterminal.com/compare/canva-vs-placid.md)\n- [Contentdrips API and MCP vs Pictify](https://www.anchorterminal.com/compare/contentdrips-vs-pictify.md)\n- [Contentdrips API and MCP vs Placid API + MCP](https://www.anchorterminal.com/compare/contentdrips-vs-placid.md)\n- [Creatomate vs Pictify](https://www.anchorterminal.com/compare/creatomate-vs-pictify.md)\n- [Creatomate vs Placid API + MCP](https://www.anchorterminal.com/compare/creatomate-vs-placid.md)\n- [DynaPictures vs Pictify](https://www.anchorterminal.com/compare/dynapictures-vs-pictify.md)\n- [DynaPictures vs Placid API + MCP](https://www.anchorterminal.com/compare/dynapictures-vs-placid.md)\n- [Layerre vs Pictify](https://www.anchorterminal.com/compare/layerre-vs-pictify.md)\n- [Layerre vs Placid API + MCP](https://www.anchorterminal.com/compare/layerre-vs-placid.md)\n- [Photoroom API vs Pictify](https://www.anchorterminal.com/compare/photoroom-vs-pictify.md)\n- [Photoroom API vs Placid API + MCP](https://www.anchorterminal.com/compare/photoroom-vs-placid.md)\n- [Pixelixe vs Placid API + MCP](https://www.anchorterminal.com/compare/pixelixe-vs-placid.md)\n- [Placid API + MCP vs PostNitro](https://www.anchorterminal.com/compare/placid-vs-postnitro.md)\n- [Placid API + MCP vs Robolly](https://www.anchorterminal.com/compare/placid-vs-robolly.md)\n- [Placid API + MCP vs Shotstack](https://www.anchorterminal.com/compare/placid-vs-shotstack.md)\n- [Placid API + MCP vs Templated API + MCP](https://www.anchorterminal.com/compare/placid-vs-templated.md)\n- [Abyssale vs Pictify](https://www.anchorterminal.com/compare/abyssale-vs-pictify.md)\n- [Abyssale vs Placid API + MCP](https://www.anchorterminal.com/compare/abyssale-vs-placid.md)\n- [Adobe Photoshop API vs Pictify](https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-pictify.md)\n- [Osmo CLI vs Pictify](https://www.anchorterminal.com/compare/osmo-cli-vs-pictify.md)\n- [Osmo CLI vs Placid API + MCP](https://www.anchorterminal.com/compare/osmo-cli-vs-placid.md)\n- [Pictify vs Pixelixe](https://www.anchorterminal.com/compare/pictify-vs-pixelixe.md)\n- [Pictify vs PostNitro](https://www.anchorterminal.com/compare/pictify-vs-postnitro.md)\n- [Pictify vs Robolly](https://www.anchorterminal.com/compare/pictify-vs-robolly.md)\n- [Pictify vs Shotstack](https://www.anchorterminal.com/compare/pictify-vs-shotstack.md)\n- [Pictify vs Templated API + MCP](https://www.anchorterminal.com/compare/pictify-vs-templated.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-07",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "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": "Pictify vs Placid API + MCP",
        "url": ""
      }
    ],
    "description": "Pictify scores 55.7 (C) to Placid's 43 (E) for design rendering. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Pictify C 55.7",
      "Placid API + MCP E 43",
      "scores"
    ],
    "h1": "Pictify vs Placid API + MCP",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/pictify-vs-placid",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Pictify vs Placid for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/pictify-vs-placid"
  },
  "tokens": {
    "markdown": 4550,
    "slim": 2630
  },
  "version": 1
}
