{
  "data": {
    "a": {
      "slug": "pixelixe",
      "name": "Pixelixe",
      "vendor": "Pixelixe",
      "vendorUrl": "https://pixelixe.com",
      "kind": "http-api",
      "category": "design-assets",
      "summary": "Pixelixe is a template-based graphic platform with a design studio, an Image Automation API that fills saved templates into PNG, JPEG, PDF or HTML, a JSON-to-graphic API, image filters, a white-label editor and a remote MCP server.",
      "url": "https://www.anchorterminal.com/tools/pixelixe",
      "markdownUrl": "https://www.anchorterminal.com/tools/pixelixe.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/pixelixe.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/pixelixe.json",
      "dns": "pixelixe.grade.anchorterminal.com",
      "license": "Closed service under the Pixelixe terms of service (last modified 19 March 2026)",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://studio.pixelixe.com/api",
      "packages": [],
      "auth": "mixed",
      "authNotes": "REST calls send the account's API key as `Authorization: Bearer`, from the account after signup; a separate public key is for embedding the editor in a web page. The remote MCP server at studio.pixelixe.com/api/mcp/v1 takes the API key or an OAuth access token from studio.pixelixe.com/oauth/mcp, with one `pixelixe.mcp` scope. No key scopes or rotation documented.",
      "pricing": "paid",
      "pricingNotes": "API access starts with Automate at $59 a month (20,000 automated documents, 140 AI actions). Scale $119 (60,000), Enterprise from $299 (300,000 and up). Create at $12 a month has no API. 10-day trial with no card. No per-image price.",
      "priceSummary": "$59 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "Monthly plans. No x402, MPP or L402 in the OpenAPI, the v2 docs, the MCP docs or llms.txt (checked 2026-11-06). Exhausted credits return 400 with a message.",
        "endpoints": []
      },
      "toolCount": 7,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://pixelixe.com/docs/v2/",
      "llmsTxt": "https://pixelixe.com/llms.txt",
      "openapi": "https://pixelixe.com/pixelixe-openapi.json",
      "registryName": "com.pixelixe/pixelixe-mcp",
      "capabilities": [
        "design.templates",
        "design.render",
        "image.edit",
        "pdf.generate"
      ],
      "tags": [
        "hosted",
        "openapi",
        "llms-txt",
        "mcp",
        "remote-mcp",
        "mcp-registry",
        "oauth",
        "api-key",
        "white-label",
        "trial",
        "no-card",
        "eu"
      ],
      "lastRelease": "2026-03-26",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 37.3,
        "grade": "F",
        "agentReady": false,
        "rank": 1355,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 15,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 49,
          "maintenance": 19,
          "payments": 30,
          "reliability": 15,
          "schema": 66,
          "security": 38,
          "transparency": 41
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "Pixelixe's seven MCP tools and their LLM-oriented reference make template fills and JSON-to-graphic creation simple to call, with an OpenAPI file for the core endpoints. Every error comes back as a 400 with a message, there are no published rate limits, status page or changelog, and API access starts at $59 a month.",
        "bestFor": "Template fills and white-label editing for marketing and SaaS teams, with a JSON-to-graphic route for agents.",
        "strengths": [
          "Seven compact MCP tools with a reference that states the canonical fields and common LLM mistakes",
          "OpenAPI 3.1 for the authentication, search, automation and photo effect endpoints",
          "Creates editable graphics from a single JSON document, returned as HTML or saved for reuse",
          "Remote MCP server with OAuth, in the official registry under a domain-verified namespace",
          "10-day trial without a card"
        ],
        "weaknesses": [
          "Every error is HTTP 400 with a free-text message, including wrong keys and exhausted credits",
          "No rate limits, status page, SLA or changelog found",
          "API access starts at $59 a month; the $12 plan has none",
          "The OpenAPI file covers four endpoints, not the JSON-to-graphic or image processing APIs",
          "The terms and privacy policy name no company, and no processors are listed"
        ],
        "agentNotes": [
          "Call `pixelixe_search_documents` first to find the `document_uid` of the template to reuse",
          "Use `pixelixe_generate_graphic_variant` to fill an existing template; it can't change the layout",
          "Read the error `message` text, since every failure is a 400",
          "Stop and tell the user on 'Not enough Credits'; retrying won't help",
          "For a batch, use `pixelixe_create_multiple_images` and summarise counts rather than inlining every image"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "F",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 37.3
          }
        ],
        "editorialScores": {
          "ergonomics": 49,
          "maintenance": 19,
          "payments": 30,
          "reliability": 15,
          "schema": 66,
          "security": 38,
          "transparency": 32
        },
        "provenanceScore": 49,
        "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": {
        "http": "curl -X POST https://studio.pixelixe.com/api/authentication/v2 -H \"Authorization: Bearer $PIXELIXE_API_KEY\"",
        "claudeCode": "claude mcp add --transport http pixelixe https://studio.pixelixe.com/api/mcp/v1",
        "config": {
          "mcpServers": {
            "pixelixe": {
              "url": "https://studio.pixelixe.com/api/mcp/v1"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/design.templates",
        "tool": "https://letme.dev/pixelixe"
      },
      "area": "design-diagrams",
      "unitPrices": [
        {
          "item": "Automate plan",
          "unit": "month",
          "usd": 59,
          "note": "20,000 automated documents and 140 AI actions a month"
        },
        {
          "item": "Scale plan",
          "unit": "month",
          "usd": 119,
          "note": "60,000 automated documents and 280 AI actions a month"
        }
      ],
      "provenance": {
        "legalEntity": "",
        "domain": "pixelixe.com",
        "domainRegistered": "2018-09-17",
        "endpointOnVendorDomain": true,
        "terms": "https://pixelixe.com/terms.html",
        "privacy": "https://pixelixe.com/privacy-policy.html",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-11-06",
        "notes": [
          "The terms (last modified 19 March 2026) and privacy policy (effective 7 April 2026) name the operator only as Pixelixe and choose French law and the courts of Paris.",
          "The terms forbid scraping or copying the Service. Public pages were read as data.",
          "pixelixe.com/robots.txt allows the docs and names ClaudeBot as allowed; it disallows /studio/, /docs/v1/ and some demo pages. studio.pixelixe.com/robots.txt disallows the app pages, /assets and /js/ but not /api/ or /.well-known/.",
          "RDAP gives pixelixe.com a registration date of 17 September 2018.",
          "/.well-known/security.txt returns 404. No status page or changelog found."
        ],
        "score": 49
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/pixelixe.json",
      "live": {
        "slug": "pixelixe",
        "probe": {
          "target": "https://studio.pixelixe.com/api",
          "method": "get",
          "lastAt": "2026-11-07T18:20:47.218693476Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 69,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 33,
          "p95ms24h": 119,
          "samples24h": 200,
          "samples30d": 200,
          "days": [
            {
              "date": "2026-11-06",
              "probes": 13,
              "ok": 13
            },
            {
              "date": "2026-11-07",
              "probes": 187,
              "ok": 187
            }
          ]
        },
        "versions": [
          {
            "registry": "mcp-registry",
            "name": "com.pixelixe/pixelixe-mcp",
            "version": "1.0.2",
            "seenAt": "2026-11-07T18:16:28.95801333Z"
          }
        ],
        "securityTxt": {
          "url": "https://pixelixe.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:01:00.920272687Z"
        },
        "llmsTxt": {
          "url": "https://pixelixe.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:33:38.090224197Z"
        },
        "pages": [
          {
            "url": "https://pixelixe.com/privacy-policy.html",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:16:29.788755256Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "832cb532d5ba"
          },
          {
            "url": "https://pixelixe.com/terms.html",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:16:31.916703951Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "764ac1d560a1"
          }
        ],
        "mcpTools": {
          "url": "https://studio.pixelixe.com/api/mcp/v1",
          "checkedAt": "2026-11-07T01:46:51.581135972Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-11-07T01:46:51.581135972Z"
        },
        "updatedAt": "2026-11-07T18:20:47.218693476Z"
      }
    },
    "answer": "PostNitro scores 52.6 (D) on agent readiness against Pixelixe's 37.3 (F), and leads in 6 of 7 scored categories. Pixelixe leads on payments \u0026 pricing.",
    "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 videos from templates and brand kits, then schedules them to six social networks. Agents use a hosted MCP server with 40 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",
      "dns": "postnitro.grade.anchorterminal.com",
      "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": 40,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-05"
      },
      "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-11-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 52.6,
        "grade": "D",
        "agentReady": false,
        "rank": 974,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 9,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 68,
          "maintenance": 65,
          "payments": 20,
          "reliability": 45,
          "schema": 77,
          "security": 56,
          "transparency": 58
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-05"
        },
        "negative": -3,
        "negativeNotes": [
          "PostNitro's Embed API stopped honouring a video's documented length, read 5 November 2026. CLI 1.5.0 documented `--video-duration` as the whole video's length, at least 5 and under 60 seconds and required for an MP4. CLI 1.6.0 (1 November 2026) hides and ignores it, says the API ignores `videoDuration`, and videos now run as long as their motion takes, up to 2:00, with an MP4 over that failing. No earlier notice was found (-3) (https://github.com/postnitro/postnitro-agent, https://postnitro.ai/docs/embed/mcp.md)"
        ],
        "verdict": "A hosted MCP server and REST API let an agent turn a topic, article or its own slides into a branded carousel, image or video and schedule it, with OAuth, a read-only server URL, idempotency keys and numbered rate limits. No status page, SLA or free API tier was found, and security.txt names only a support address.",
        "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": [
          "Every create request and create tool takes an idempotency key, so a timed-out generation or schedule can be retried without a second charge",
          "A read-only MCP server URL serves only the 16 read tools, and the docs name the six destructive ones",
          "Rate limits are published per key, 5 creates, 120 status reads and 30 other calls a minute, with `Retry-After` on 429",
          "OAuth 2.1 with PKCE and dynamic client registration on the MCP server, so Claude and ChatGPT connect without a stored API key",
          "`llms.txt`, Markdown twins of every docs page, and docs that say when not to use PostNitro and how to treat third-party content"
        ],
        "weaknesses": [
          "No status page, incident history or SLA was found",
          "No free API tier. API, MCP and CLI calls need a paid plan with credits",
          "40 MCP tools load together on the main server URL, and the tool schemas sit in a catalogue we didn't read",
          "The OAuth flow has one broad `postnitro` scope, and no scoped or read-only API key is documented",
          "security.txt names a support address only, with no disclosure policy, bug bounty or certification",
          "The Embed API stopped honouring a video's set length on 1 November 2026, with no earlier notice found"
        ],
        "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, wait for `Retry-After` on a 429, and resend the same `idempotencyKey` when retrying a create",
          "Connect to https://mcp.postnitro.ai/mcp/readonly when the agent should only read"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 2.8,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 52.6
          }
        ],
        "editorialScores": {
          "ergonomics": 68,
          "maintenance": 65,
          "payments": 20,
          "reliability": 45,
          "schema": 77,
          "security": 56,
          "transparency": 39
        },
        "provenanceScore": 77,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-05",
            "maintenance": "2026-11-05",
            "payments": "2026-11-05",
            "reliability": "2026-11-05",
            "schema": "2026-11-05",
            "security": "2026-11-05",
            "transparency": "2026-11-05"
          },
          "last": "2026-11-05",
          "lastMoved": "2026-11-05",
          "oldest": "2026-11-05",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "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": "valid",
        "checked": "2026-11-05",
        "notes": [
          "The Terms of Service, last updated 20 May 2024, cover the website, applications and APIs and carry no clause on automated access. They name no legal entity or governing law. The privacy policy names PostNitro Inc. as controller.",
          "The privacy policy was updated on 2 November 2026 to correct its Use of Data section and names UserMaven, CrispChat and an unnamed payment processor. No DPA or sub-processor list was found.",
          "No status page was found, and none is linked from llms.txt or the docs.",
          "The changelog covers the CLI only. No changelog for the Embed API or MCP server was found.",
          "postnitro.ai/.well-known/security.txt names support@postnitro.ai and expires on 1 November 2027."
        ],
        "score": 77
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/postnitro.json",
      "live": {
        "slug": "postnitro",
        "probe": {
          "target": "https://mcp.postnitro.ai/mcp",
          "method": "mcp-initialize",
          "lastAt": "2026-11-07T18:20:48.226904833Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 156,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 114,
          "p95ms24h": 179,
          "samples24h": 239,
          "samples30d": 5908,
          "days": [
            {
              "date": "2026-10-14",
              "probes": 26,
              "ok": 26
            },
            {
              "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": 185
            },
            {
              "date": "2026-11-06",
              "probes": 241,
              "ok": 241
            },
            {
              "date": "2026-11-07",
              "probes": 187,
              "ok": 187
            }
          ]
        },
        "versions": [
          {
            "registry": "github",
            "name": "postnitro/postnitro-agent",
            "version": "v1.6.0",
            "released": "2026-10-31",
            "seenAt": "2026-11-06T23:57:55.699083908Z"
          },
          {
            "registry": "npm",
            "name": "@postnitro/cli",
            "version": "1.6.0",
            "seenAt": "2026-11-06T23:57:53.066099433Z"
          },
          {
            "registry": "npm",
            "name": "@postnitro/embed",
            "version": "2.0.3",
            "seenAt": "2026-11-06T23:57:53.894629381Z"
          }
        ],
        "githubStars": 2,
        "npmWeekly": 229,
        "securityTxt": {
          "url": "https://postnitro.ai/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-11-01T00:00:00.000Z",
          "checkedAt": "2026-11-07T15:59:37.570333311Z"
        },
        "llmsTxt": {
          "url": "https://postnitro.ai/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:33:40.540865058Z"
        },
        "domain": {
          "domain": "postnitro.ai",
          "registered": "2023-03-23",
          "source": "https://rdap.identitydigital.services/rdap/domain/postnitro.ai",
          "checkedAt": "2026-11-01T14:16:02.668957201Z"
        },
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/postnitro/postnitro-agent/main/CHANGELOG.md",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-11-07T14:23:01.203463221Z",
            "changedAt": "2026-11-01T06:54:37.019593983Z",
            "fingerprint": "a57a0c547295"
          },
          {
            "url": "https://postnitro.ai/privacy",
            "kind": "privacy",
            "status": 304,
            "checkedAt": "2026-11-07T14:17:12.148942195Z",
            "changedAt": "2026-11-02T07:23:21.324265604Z",
            "fingerprint": "d7cac03060d1"
          },
          {
            "url": "https://postnitro.ai/terms",
            "kind": "terms",
            "status": 304,
            "checkedAt": "2026-11-07T14:17:15.023858232Z",
            "changedAt": "2026-11-01T06:50:30.865238507Z",
            "fingerprint": "e5294038e9f6"
          }
        ],
        "mcpTools": {
          "url": "https://mcp.postnitro.ai/mcp",
          "checkedAt": "2026-11-07T01:46:54.995870856Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-10-14T22:17:48.649874285Z"
        },
        "github": {
          "repo": "postnitro/postnitro-agent",
          "checkedAt": "2026-11-02T09:18:06.170158502Z",
          "stars": 2,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-10-31T22:02:29Z",
          "openIssues": 0,
          "openPRs": 0,
          "issuesOpened90d": 0,
          "issuesClosed90d": 0,
          "prsMerged90d": 7
        },
        "updatedAt": "2026-11-07T18:20:48.226904833Z"
      }
    },
    "edges": [
      {
        "by": 46,
        "category": "maintenance",
        "leads": "postnitro",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "No dated release or API change was found. The newest dated items are the MCP registry entry of 26 March 2026 and the privacy policy of 7 April 2026, more than 180 days before this check (0). No three dated changes since 8 August (0). No changelog. Support by email at inquiries@pixelixe.com, not tested (4 of 15). com.pixelixe/pixelixe-mcp is in the official MCP registry under a domain-verified namespace; there are no official SDKs (15). No public package or repository (0). 0 + 0 + 4 + 15 + 0 = 19.",
          "b": "CLI 1.6.0 tagged on 1 November 2026, with motion styles, post read and edit and an AI voiceover, against an Embed API release it names (30). CLI 1.3.0 (tagged 19 August), 1.4.1 (29 September), 1.5.0 (7 October) and 1.6.0 (1 November) fall in the 90 days, read from the repository's tags and changelog (20). Closed service with a dated CLI changelog, support by email and in-app chat, and public repositories with few outside contributions to judge replies by (8). No official MCP registry entry could be read, and the server card's `ai.postnitro/mcp` is a claim (0). The CLI publishes from a GitHub Actions workflow. The Embed SDK was last published on 15 July 2025, per the 14 October check (7). 30 + 20 + 8 + 0 + 7 = 65."
        },
        "scores": {
          "a": 19,
          "b": 65
        }
      },
      {
        "by": 30,
        "category": "reliability",
        "leads": "postnitro",
        "name": "Reliability",
        "reasons": {
          "a": "Hosted lines. No status page found on the site or in the docs (0). No readable incident history (5). No rate limit is published; the terms only forbid circumventing them (0). No 429, Retry-After or backoff guidance. Every error, a wrong key and exhausted credits included, is a 400 with a message (0). No SLA found; the terms supply the service as is (0). API v2 is current and not labelled beta (10). 0 + 5 + 0 + 0 + 0 + 10 = 15.",
          "b": "Graded as a hosted service, the MCP server and the Embed REST API it wraps. No status page was found, and none is linked from llms.txt or the MCP docs, re-read on 5 November (0). With no page there is no incident history to read (5). Limits are published per API key per minute, 5 for each create endpoint, 120 for status and output and 30 for the rest (15). A 429 carries `Retry-After`, the MCP tools turn it into a stated wait, and every create request now takes an optional `Idempotency-Key`, kept for 24 hours, covering generation, edits and scheduling, the writes that spend credits (15). No SLA was found and the terms supply the service as is (0). Nothing is labelled beta or preview (10). 0 + 5 + 15 + 15 + 0 + 10 = 45."
        },
        "scores": {
          "a": 15,
          "b": 45
        }
      },
      {
        "by": 19,
        "category": "ergonomics",
        "leads": "postnitro",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "Seven compact MCP tools (25). Document and design-set search filters, with no pagination documented (10 of 20). All errors are 400 with free-text messages, so an agent can't branch on a code (6 of 20). No idempotency keys, and annotations couldn't be read on the closed server. The MCP tools only read and create, with nothing that deletes (5 of 20). Few required fields, but no official SDK (3 of 15). 25 + 10 + 6 + 5 + 3 = 49.",
          "b": "40 MCP tools load together on the main server URL (5). A read-only server URL serves only the 16 tools annotated `readOnlyHint`, the `DESIGN` output skips rendering and the `_and_wait` tools fold polling into one call (8 back, 13). Templates and brands page with `page` and `limit` up to 100, and scheduled posts filter by date range and social account (14). API errors reach the agent verbatim with their status and a plain message, the schedule error page lists every validation message, unknown keys are refused by name, and a missing ID returns the candidate IDs. A brand-limit error comes back as 401, per the 14 October check (14). Every create tool takes an `idempotencyKey`, and the MCP docs say every tool carries `readOnlyHint` and `destructiveHint`, naming the six destructive tools (20). Saved defaults and single-candidate auto-selection keep required arguments to one or two. Official code is a Node CLI and a browser editor SDK, one language (7). 13 + 14 + 14 + 20 + 7 = 68."
        },
        "scores": {
          "a": 49,
          "b": 68
        }
      },
      {
        "by": 18,
        "category": "security",
        "leads": "postnitro",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "A bearer API key per account, plus a public key for the embedded editor. The MCP server accepts the key or an OAuth token from studio.pixelixe.com/oauth/mcp with one `pixelixe.mcp` scope. No key scopes, rotation or revocation documented (18 of 30). No read-only mode, though the MCP tools can't delete or change account settings (10 of 20). Tools return the account's own templates and renders (10 of 15). No audit log or per-call record documented (0). No security.txt, disclosure policy, bug bounty or certification found (0). 18 + 10 + 10 + 0 + 0 = 38.",
          "b": "The MCP server runs OAuth 2.1 with PKCE S256, dynamic client registration and a revocation endpoint, but with one broad `postnitro` scope, per the 14 October reading of its published metadata. Keys are `pn-` API keys sent in a header, generated in the web app, with no scopes or rotation documented (20). A read-only MCP server URL can't generate, edit, schedule or delete, and the destructive tools are annotated so a client can ask before running them. No read-only API key (14). The MCP docs, and the server when a client connects, say that slide text, names and captions derived from an article or X post are third-party content, never to follow instructions in it or let it choose tools (12). Per-job processing logs come back from the status endpoint. No account audit log was found (3). security.txt, expiring 1 November 2027, names support@postnitro.ai, with no disclosure policy, acknowledgement time, bug bounty or certification found (7). 20 + 14 + 12 + 3 + 7 = 56."
        },
        "scores": {
          "a": 38,
          "b": 56
        }
      },
      {
        "by": 17,
        "category": "transparency",
        "leads": "postnitro",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "Closed service under terms of 19 March 2026 that choose French law but name no company (12 of 30). The privacy policy of 7 April 2026 keeps account data while the account is active and 'as long as reasonably necessary' after, with no periods, and says nothing about AI processing or training (10 of 30). V1 is marked deprecated in the docs with no dates or notice period (5 of 20). Processors are described only by category, with Google Analytics named, and data processed in France, the EEA and other vendor countries (5 of 20). 12 + 10 + 5 + 5 = 32.",
          "b": "Closed service under Terms of Service last updated 20 May 2024, re-read on 5 November, that cover the APIs, allow changes or discontinuation without notice and take a perpetual licence to user content to run the service. The terms name no legal entity or governing law (12). The privacy policy, updated 2 November 2026, corrects its Use of Data section and now says PostNitro doesn't train AI models on user content, in line with the Claude page. Personal data is kept while the account is active and deleted within 24 hours of a request. No DPA (14). The fact sheet dates the withdrawal of the Creator and Team plans and existing subscribers keep them. The CLI changelog marks API-version dependencies. No deprecation policy for the API (8). The policy names UserMaven and CrispChat and an unnamed payment processor, the docs name Lemon Squeezy for billing, and no data locations were found (5). 12 + 14 + 8 + 5 = 39."
        },
        "scores": {
          "a": 41,
          "b": 58
        }
      },
      {
        "by": 11,
        "category": "schema",
        "leads": "postnitro",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "OpenAPI 3.1 (version 2.0.0) at pixelixe.com/pixelixe-openapi.json, but it covers four endpoints, authentication, document search, graphic automation and photo effects, and leaves out the JSON-to-graphic and image processing APIs (18 of 25). llms.txt exists but routes readers to marketing pages; the MCP reference is written for LLMs (7 of 10). The MCP reference says what each of the seven tools maps to, that `pixelixe_generate_graphic_variant` 'is not a free-form layout API', lists common mistakes and how to present outputs (17 of 20). The MCP layer documents canonical field names and refuses legacy aliases; the REST modifications are open structures keyed by element name (10 of 15). Request examples throughout, but errors are one table of message strings all returning 400 (8 of 15). /v2 paths and a deprecated V1, with no changelog (6 of 15). 18 + 7 + 17 + 10 + 8 + 6 = 66.",
          "b": "OpenAPI 3.1 document for the Embed API at `/.well-known/openapi/embed.json`, with 13 operations per the 14 October check and not re-read. The MCP docs now point to a public tool catalogue on the MCP host with every tool's input and output schema, which we didn't request, so the earlier partial is held (20). `llms.txt` (updated 29 October 2026), `llms-full.txt`, a docs `llms.txt` and `.md` twins (10). The docs state what each tool is for, when not to use PostNitro and the `embedPostId` and `designId` split, and the tool count now reads 40 on every page read (15). 24 enums, typed slide objects and per-platform settings with conditional rules per the 14 October check, and unknown keys in settings objects are now refused by name (12). Examples on each page and a full table of validation messages for the Schedule API (13). `info.version` 1.0.0 with no version in the path and no API changelog. The CLI has a dated Keep a Changelog file with semver (7). 20 + 10 + 15 + 12 + 13 + 7 = 77."
        },
        "scores": {
          "a": 66,
          "b": 77
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "Pixelixe",
        "b": "PostNitro Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://studio.pixelixe.com/api",
        "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": "Closed service under the Pixelixe terms of service (last modified 19 March 2026)",
        "b": "Proprietary hosted service under PostNitro's Terms of Service. The CLI, agent skill and agent plugin repositories are MIT",
        "name": "Licence"
      },
      {
        "a": "7",
        "b": "40",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "com.pixelixe/pixelixe-mcp",
        "b": "not listed",
        "name": "MCP registry"
      },
      {
        "a": "2026-03-26",
        "b": "2026-11-01",
        "name": "Last release"
      },
      {
        "a": "2026-03-19",
        "b": "2024-05-20",
        "name": "Terms last updated"
      },
      {
        "a": "2026-04-07",
        "b": "2023-10-05",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "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": "none",
        "b": "2.8/5 (4)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "PostNitro scores 52.6 (D) on agent readiness against Pixelixe's 37.3 (F), and leads in 6 of 7 scored categories. Pixelixe leads on payments \u0026 pricing.",
        "question": "Which is better for AI agents, Pixelixe or PostNitro?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Pixelixe and PostNitro need an API key?"
      },
      {
        "answer": "Yes. Pixelixe has a hosted endpoint at https://studio.pixelixe.com/api and PostNitro at https://mcp.postnitro.ai/mcp.",
        "question": "Can an agent call Pixelixe and PostNitro without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Payments \u0026 pricing, 30 against 20"
        ],
        "also": [
          "Free to start without a card",
          "No incidents deducted, where PostNitro loses 3 points for them"
        ],
        "goodFor": "Template fills and white-label editing for marketing and SaaS teams, with a JSON-to-graphic route for agents.",
        "slug": "pixelixe",
        "watchFor": "Every error is HTTP 400 with a free-text message, including wrong keys and exhausted credits"
      },
      {
        "aheadOn": [
          "Reliability, 45 against 15",
          "Schema \u0026 documentation, 77 against 66",
          "Agent ergonomics, 68 against 49",
          "Security \u0026 auth, 56 against 38",
          "Maintenance \u0026 community, 65 against 19",
          "Transparency \u0026 trust, 58 against 41"
        ],
        "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 or SLA was found"
      }
    ],
    "history": {
      "pixelixe": null,
      "postnitro": [
        {
          "causes": [
            "terms",
            "product"
          ],
          "date": "2026-11-05",
          "delta": 7.8,
          "from": 44.8,
          "fromGrade": "E",
          "to": 52.6,
          "toGrade": "D"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.3,
          "from": 44.5,
          "fromGrade": "E",
          "to": 44.8,
          "toGrade": "E"
        }
      ]
    },
    "job": {
      "capability": "design.templates",
      "name": "Design templates"
    },
    "others": [
      {
        "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-pixelixe.json",
        "title": "APITemplate.io vs Pixelixe",
        "url": "https://www.anchorterminal.com/compare/apitemplate-io-vs-pixelixe"
      },
      {
        "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-pixelixe.json",
        "title": "Bannerbear API + MCP vs Pixelixe",
        "url": "https://www.anchorterminal.com/compare/bannerbear-vs-pixelixe"
      },
      {
        "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-pixelixe.json",
        "title": "Canva REST APIs + MCP vs Pixelixe",
        "url": "https://www.anchorterminal.com/compare/canva-vs-pixelixe"
      },
      {
        "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/contentdrips-vs-pixelixe.json",
        "title": "Contentdrips API and MCP vs Pixelixe",
        "url": "https://www.anchorterminal.com/compare/contentdrips-vs-pixelixe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/contentdrips-vs-postnitro.json",
        "title": "Contentdrips API and MCP vs PostNitro",
        "url": "https://www.anchorterminal.com/compare/contentdrips-vs-postnitro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/creatomate-vs-pixelixe.json",
        "title": "Creatomate vs Pixelixe",
        "url": "https://www.anchorterminal.com/compare/creatomate-vs-pixelixe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/creatomate-vs-postnitro.json",
        "title": "Creatomate vs PostNitro",
        "url": "https://www.anchorterminal.com/compare/creatomate-vs-postnitro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dynapictures-vs-pixelixe.json",
        "title": "DynaPictures vs Pixelixe",
        "url": "https://www.anchorterminal.com/compare/dynapictures-vs-pixelixe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dynapictures-vs-postnitro.json",
        "title": "DynaPictures vs PostNitro",
        "url": "https://www.anchorterminal.com/compare/dynapictures-vs-postnitro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/layerre-vs-pixelixe.json",
        "title": "Layerre vs Pixelixe",
        "url": "https://www.anchorterminal.com/compare/layerre-vs-pixelixe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/layerre-vs-postnitro.json",
        "title": "Layerre vs PostNitro",
        "url": "https://www.anchorterminal.com/compare/layerre-vs-postnitro"
      },
      {
        "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/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/pixelixe-vs-robolly.json",
        "title": "Pixelixe vs Robolly",
        "url": "https://www.anchorterminal.com/compare/pixelixe-vs-robolly"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pixelixe-vs-shotstack.json",
        "title": "Pixelixe vs Shotstack",
        "url": "https://www.anchorterminal.com/compare/pixelixe-vs-shotstack"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pixelixe-vs-templated.json",
        "title": "Pixelixe vs Templated API + MCP",
        "url": "https://www.anchorterminal.com/compare/pixelixe-vs-templated"
      },
      {
        "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-robolly.json",
        "title": "PostNitro vs Robolly",
        "url": "https://www.anchorterminal.com/compare/postnitro-vs-robolly"
      },
      {
        "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/abyssale-vs-pixelixe.json",
        "title": "Abyssale vs Pixelixe",
        "url": "https://www.anchorterminal.com/compare/abyssale-vs-pixelixe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/abyssale-vs-postnitro.json",
        "title": "Abyssale vs PostNitro",
        "url": "https://www.anchorterminal.com/compare/abyssale-vs-postnitro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/osmo-cli-vs-pixelixe.json",
        "title": "Osmo CLI vs Pixelixe",
        "url": "https://www.anchorterminal.com/compare/osmo-cli-vs-pixelixe"
      },
      {
        "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"
      },
      {
        "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/adobe-photoshop-api-vs-pixelixe.json",
        "title": "Adobe Photoshop API vs Pixelixe",
        "url": "https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-pixelixe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/photoroom-vs-pixelixe.json",
        "title": "Photoroom API vs Pixelixe",
        "url": "https://www.anchorterminal.com/compare/photoroom-vs-pixelixe"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 30,
        "edge": "postnitro",
        "key": "reliability",
        "name": "Reliability",
        "pixelixe": 15,
        "postnitro": 45,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 11,
        "edge": "postnitro",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "pixelixe": 66,
        "postnitro": 77,
        "weight": 13
      },
      {
        "by": 19,
        "edge": "postnitro",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "pixelixe": 49,
        "postnitro": 68,
        "weight": 13
      },
      {
        "by": 18,
        "edge": "postnitro",
        "key": "security",
        "name": "Security \u0026 auth",
        "pixelixe": 38,
        "postnitro": 56,
        "weight": 14
      },
      {
        "by": 10,
        "edge": "pixelixe",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "pixelixe": 30,
        "postnitro": 20,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 46,
        "edge": "postnitro",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "pixelixe": 19,
        "postnitro": 65,
        "weight": 7
      },
      {
        "by": 17,
        "edge": "postnitro",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "pixelixe": 41,
        "postnitro": 58,
        "weight": 7
      }
    ],
    "summary": "PostNitro scores 52.6 (D) on agent readiness against Pixelixe's 37.3 (F), and leads in 6 of 7 scored categories. Pixelixe leads on payments \u0026 pricing. Both do design templates.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "pixelixe": "Pixelixe's seven MCP tools and their LLM-oriented reference make template fills and JSON-to-graphic creation simple to call, with an OpenAPI file for the core endpoints. Every error comes back as a 400 with a message, there are no published rate limits, status page or changelog, and API access starts at $59 a month.",
      "postnitro": "A hosted MCP server and REST API let an agent turn a topic, article or its own slides into a branded carousel, image or video and schedule it, with OAuth, a read-only server URL, idempotency keys and numbered rate limits. No status page, SLA or free API tier was found, and security.txt names only a support address."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/pixelixe-vs-postnitro",
    "json": "https://www.anchorterminal.com/compare/pixelixe-vs-postnitro.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/pixelixe-vs-postnitro.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/pixelixe-vs-postnitro.min.md"
  },
  "markdown": "PostNitro scores 52.6 (D) on agent readiness against Pixelixe's 37.3 (F), and leads in 6 of 7 scored categories. Pixelixe leads on payments \u0026 pricing. Both do design templates.\n\n- Pixelixe: grade F, 37.3/100, rank #1355 of 1486. Markdown https://www.anchorterminal.com/tools/pixelixe.md · JSON https://www.anchorterminal.com/api/v1/tools/pixelixe.json\n- PostNitro: grade D, 52.6/100, rank #974 of 1486. Markdown https://www.anchorterminal.com/tools/postnitro.md · JSON https://www.anchorterminal.com/api/v1/tools/postnitro.json\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### Pixelixe (F)\n\nGood for: Template fills and white-label editing for marketing and SaaS teams, with a JSON-to-graphic route for agents.\n\nAhead on:\n- Payments \u0026 pricing, 30 against 20\n\nAlso in its favour:\n- Free to start without a card\n- No incidents deducted, where PostNitro loses 3 points for them\n\nWatch for: Every error is HTTP 400 with a free-text message, including wrong keys and exhausted credits\n\n### PostNitro (D)\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- Reliability, 45 against 15\n- Schema \u0026 documentation, 77 against 66\n- Agent ergonomics, 68 against 49\n- Security \u0026 auth, 56 against 38\n- Maintenance \u0026 community, 65 against 19\n- Transparency \u0026 trust, 58 against 41\n\nWatch for: No status page, incident history or SLA was found\n\n\n## Why the edge\n\n### Maintenance \u0026 community: PostNitro +46\n\n- Pixelixe (19): No dated release or API change was found. The newest dated items are the MCP registry entry of 26 March 2026 and the privacy policy of 7 April 2026, more than 180 days before this check (0). No three dated changes since 8 August (0). No changelog. Support by email at inquiries@pixelixe.com, not tested (4 of 15). com.pixelixe/pixelixe-mcp is in the official MCP registry under a domain-verified namespace; there are no official SDKs (15). No public package or repository (0). 0 + 0 + 4 + 15 + 0 = 19.\n- PostNitro (65): CLI 1.6.0 tagged on 1 November 2026, with motion styles, post read and edit and an AI voiceover, against an Embed API release it names (30). CLI 1.3.0 (tagged 19 August), 1.4.1 (29 September), 1.5.0 (7 October) and 1.6.0 (1 November) fall in the 90 days, read from the repository's tags and changelog (20). Closed service with a dated CLI changelog, support by email and in-app chat, and public repositories with few outside contributions to judge replies by (8). No official MCP registry entry could be read, and the server card's `ai.postnitro/mcp` is a claim (0). The CLI publishes from a GitHub Actions workflow. The Embed SDK was last published on 15 July 2025, per the 14 October check (7). 30 + 20 + 8 + 0 + 7 = 65.\n\n### Reliability: PostNitro +30\n\n- Pixelixe (15): Hosted lines. No status page found on the site or in the docs (0). No readable incident history (5). No rate limit is published; the terms only forbid circumventing them (0). No 429, Retry-After or backoff guidance. Every error, a wrong key and exhausted credits included, is a 400 with a message (0). No SLA found; the terms supply the service as is (0). API v2 is current and not labelled beta (10). 0 + 5 + 0 + 0 + 0 + 10 = 15.\n- PostNitro (45): Graded as a hosted service, the MCP server and the Embed REST API it wraps. No status page was found, and none is linked from llms.txt or the MCP docs, re-read on 5 November (0). With no page there is no incident history to read (5). Limits are published per API key per minute, 5 for each create endpoint, 120 for status and output and 30 for the rest (15). A 429 carries `Retry-After`, the MCP tools turn it into a stated wait, and every create request now takes an optional `Idempotency-Key`, kept for 24 hours, covering generation, edits and scheduling, the writes that spend credits (15). No SLA was found and the terms supply the service as is (0). Nothing is labelled beta or preview (10). 0 + 5 + 15 + 15 + 0 + 10 = 45.\n\n### Agent ergonomics: PostNitro +19\n\n- Pixelixe (49): Seven compact MCP tools (25). Document and design-set search filters, with no pagination documented (10 of 20). All errors are 400 with free-text messages, so an agent can't branch on a code (6 of 20). No idempotency keys, and annotations couldn't be read on the closed server. The MCP tools only read and create, with nothing that deletes (5 of 20). Few required fields, but no official SDK (3 of 15). 25 + 10 + 6 + 5 + 3 = 49.\n- PostNitro (68): 40 MCP tools load together on the main server URL (5). A read-only server URL serves only the 16 tools annotated `readOnlyHint`, the `DESIGN` output skips rendering and the `_and_wait` tools fold polling into one call (8 back, 13). Templates and brands page with `page` and `limit` up to 100, and scheduled posts filter by date range and social account (14). API errors reach the agent verbatim with their status and a plain message, the schedule error page lists every validation message, unknown keys are refused by name, and a missing ID returns the candidate IDs. A brand-limit error comes back as 401, per the 14 October check (14). Every create tool takes an `idempotencyKey`, and the MCP docs say every tool carries `readOnlyHint` and `destructiveHint`, naming the six destructive tools (20). Saved defaults and single-candidate auto-selection keep required arguments to one or two. Official code is a Node CLI and a browser editor SDK, one language (7). 13 + 14 + 14 + 20 + 7 = 68.\n\n### Security \u0026 auth: PostNitro +18\n\n- Pixelixe (38): A bearer API key per account, plus a public key for the embedded editor. The MCP server accepts the key or an OAuth token from studio.pixelixe.com/oauth/mcp with one `pixelixe.mcp` scope. No key scopes, rotation or revocation documented (18 of 30). No read-only mode, though the MCP tools can't delete or change account settings (10 of 20). Tools return the account's own templates and renders (10 of 15). No audit log or per-call record documented (0). No security.txt, disclosure policy, bug bounty or certification found (0). 18 + 10 + 10 + 0 + 0 = 38.\n- PostNitro (56): The MCP server runs OAuth 2.1 with PKCE S256, dynamic client registration and a revocation endpoint, but with one broad `postnitro` scope, per the 14 October reading of its published metadata. Keys are `pn-` API keys sent in a header, generated in the web app, with no scopes or rotation documented (20). A read-only MCP server URL can't generate, edit, schedule or delete, and the destructive tools are annotated so a client can ask before running them. No read-only API key (14). The MCP docs, and the server when a client connects, say that slide text, names and captions derived from an article or X post are third-party content, never to follow instructions in it or let it choose tools (12). Per-job processing logs come back from the status endpoint. No account audit log was found (3). security.txt, expiring 1 November 2027, names support@postnitro.ai, with no disclosure policy, acknowledgement time, bug bounty or certification found (7). 20 + 14 + 12 + 3 + 7 = 56.\n\n### Transparency \u0026 trust: PostNitro +17\n\n- Pixelixe (41): Closed service under terms of 19 March 2026 that choose French law but name no company (12 of 30). The privacy policy of 7 April 2026 keeps account data while the account is active and 'as long as reasonably necessary' after, with no periods, and says nothing about AI processing or training (10 of 30). V1 is marked deprecated in the docs with no dates or notice period (5 of 20). Processors are described only by category, with Google Analytics named, and data processed in France, the EEA and other vendor countries (5 of 20). 12 + 10 + 5 + 5 = 32.\n- PostNitro (58): Closed service under Terms of Service last updated 20 May 2024, re-read on 5 November, that cover the APIs, allow changes or discontinuation without notice and take a perpetual licence to user content to run the service. The terms name no legal entity or governing law (12). The privacy policy, updated 2 November 2026, corrects its Use of Data section and now says PostNitro doesn't train AI models on user content, in line with the Claude page. Personal data is kept while the account is active and deleted within 24 hours of a request. No DPA (14). The fact sheet dates the withdrawal of the Creator and Team plans and existing subscribers keep them. The CLI changelog marks API-version dependencies. No deprecation policy for the API (8). The policy names UserMaven and CrispChat and an unnamed payment processor, the docs name Lemon Squeezy for billing, and no data locations were found (5). 12 + 14 + 8 + 5 = 39.\n\n### Schema \u0026 documentation: PostNitro +11\n\n- Pixelixe (66): OpenAPI 3.1 (version 2.0.0) at pixelixe.com/pixelixe-openapi.json, but it covers four endpoints, authentication, document search, graphic automation and photo effects, and leaves out the JSON-to-graphic and image processing APIs (18 of 25). llms.txt exists but routes readers to marketing pages; the MCP reference is written for LLMs (7 of 10). The MCP reference says what each of the seven tools maps to, that `pixelixe_generate_graphic_variant` 'is not a free-form layout API', lists common mistakes and how to present outputs (17 of 20). The MCP layer documents canonical field names and refuses legacy aliases; the REST modifications are open structures keyed by element name (10 of 15). Request examples throughout, but errors are one table of message strings all returning 400 (8 of 15). /v2 paths and a deprecated V1, with no changelog (6 of 15). 18 + 7 + 17 + 10 + 8 + 6 = 66.\n- PostNitro (77): OpenAPI 3.1 document for the Embed API at `/.well-known/openapi/embed.json`, with 13 operations per the 14 October check and not re-read. The MCP docs now point to a public tool catalogue on the MCP host with every tool's input and output schema, which we didn't request, so the earlier partial is held (20). `llms.txt` (updated 29 October 2026), `llms-full.txt`, a docs `llms.txt` and `.md` twins (10). The docs state what each tool is for, when not to use PostNitro and the `embedPostId` and `designId` split, and the tool count now reads 40 on every page read (15). 24 enums, typed slide objects and per-platform settings with conditional rules per the 14 October check, and unknown keys in settings objects are now refused by name (12). Examples on each page and a full table of validation messages for the Schedule API (13). `info.version` 1.0.0 with no version in the path and no API changelog. The CLI has a dated Keep a Changelog file with semver (7). 20 + 10 + 15 + 12 + 13 + 7 = 77.\n\n## Score by category\n\n| Category | Weight | Pixelixe | PostNitro | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 15 | 45 | PostNitro +30 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 66 | 77 | PostNitro +11 |\n| Agent ergonomics | 13% (16.2 this run) | 49 | 68 | PostNitro +19 |\n| Security \u0026 auth | 14% (17.5 this run) | 38 | 56 | PostNitro +18 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 30 | 20 | Pixelixe +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 19 | 65 | PostNitro +46 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 41 | 58 | PostNitro +17 |\n| Negative events | ≤15 | 0 | -3 | |\n| **Total** | | **37.3 · F** | **52.6 · D** | |\n\n## Facts side by side\n\n| Fact | Pixelixe | PostNitro |\n| --- | --- | --- |\n| Kind | HTTP API | MCP server |\n| Vendor | Pixelixe | PostNitro Inc. |\n| Hosted endpoint | `https://studio.pixelixe.com/api` | `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 | Closed service under the Pixelixe terms of service (last modified 19 March 2026) | Proprietary hosted service under PostNitro's Terms of Service. The CLI, agent skill and agent plugin repositories are MIT |\n| Tools exposed | 7 | 40 |\n| Read-only variant documented | no | yes |\n| llms.txt | yes | yes |\n| MCP registry | `com.pixelixe/pixelixe-mcp` | not listed |\n| Last release | 2026-03-26 | 2026-11-01 |\n| Terms last updated | 2026-03-19 | 2024-05-20 |\n| Privacy policy last updated | 2026-04-07 | 2023-10-05 |\n| Customer content may train models | not found in the text | yes |\n| Terms restrict automated access | yes | 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| Agent reviews | none | 2.8/5 (4) |\n\n## How the scores have moved\n\n### Pixelixe\n\nNo score change since it was listed.\n\n### PostNitro\n\n- +7.8 on 5 November 2026 (E to D): terms, product\n- +0.3 on 27 October 2026: checklist\n\n## Verdicts\n\n**Pixelixe.** Pixelixe's seven MCP tools and their LLM-oriented reference make template fills and JSON-to-graphic creation simple to call, with an OpenAPI file for the core endpoints. Every error comes back as a 400 with a message, there are no published rate limits, status page or changelog, and API access starts at $59 a month.\n\n**PostNitro.** A hosted MCP server and REST API let an agent turn a topic, article or its own slides into a branded carousel, image or video and schedule it, with OAuth, a read-only server URL, idempotency keys and numbered rate limits. No status page, SLA or free API tier was found, and security.txt names only a support address.\n\n## Before you call either\n\n### Pixelixe\n\n1. Call `pixelixe_search_documents` first to find the `document_uid` of the template to reuse\n2. Use `pixelixe_generate_graphic_variant` to fill an existing template; it can't change the layout\n3. Read the error `message` text, since every failure is a 400\n4. Stop and tell the user on 'Not enough Credits'; retrying won't help\n5. For a batch, use `pixelixe_create_multiple_images` and summarise counts rather than inlining every image\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, wait for `Retry-After` on a 429, and resend the same `idempotencyKey` when retrying a create\n6. Connect to https://mcp.postnitro.ai/mcp/readonly when the agent should only read\n\n## Questions\n\n### Which is better for AI agents, Pixelixe or PostNitro?\n\nPostNitro scores 52.6 (D) on agent readiness against Pixelixe's 37.3 (F), and leads in 6 of 7 scored categories. Pixelixe leads on payments \u0026 pricing.\n\n### Do Pixelixe and PostNitro need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Pixelixe and PostNitro without installing anything?\n\nYes. Pixelixe has a hosted endpoint at https://studio.pixelixe.com/api and PostNitro at https://mcp.postnitro.ai/mcp.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/pixelixe-vs-postnitro.json, and with the fewest tokens: https://www.anchorterminal.com/compare/pixelixe-vs-postnitro.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"pixelixe\", \"b\": \"postnitro\"}`. From a terminal: `anchor compare pixelixe postnitro`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/pixelixe.json and https://www.anchorterminal.com/api/v1/tools/postnitro.json\n\n## Other comparisons with Pixelixe or PostNitro\n\n- [Adobe Photoshop API vs PostNitro](https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-postnitro.md)\n- [APITemplate.io vs Pixelixe](https://www.anchorterminal.com/compare/apitemplate-io-vs-pixelixe.md)\n- [APITemplate.io vs PostNitro](https://www.anchorterminal.com/compare/apitemplate-io-vs-postnitro.md)\n- [Bannerbear API + MCP vs Pixelixe](https://www.anchorterminal.com/compare/bannerbear-vs-pixelixe.md)\n- [Bannerbear API + MCP vs PostNitro](https://www.anchorterminal.com/compare/bannerbear-vs-postnitro.md)\n- [Canva REST APIs + MCP vs Pixelixe](https://www.anchorterminal.com/compare/canva-vs-pixelixe.md)\n- [Canva REST APIs + MCP vs PostNitro](https://www.anchorterminal.com/compare/canva-vs-postnitro.md)\n- [Contentdrips API and MCP vs Pixelixe](https://www.anchorterminal.com/compare/contentdrips-vs-pixelixe.md)\n- [Contentdrips API and MCP vs PostNitro](https://www.anchorterminal.com/compare/contentdrips-vs-postnitro.md)\n- [Creatomate vs Pixelixe](https://www.anchorterminal.com/compare/creatomate-vs-pixelixe.md)\n- [Creatomate vs PostNitro](https://www.anchorterminal.com/compare/creatomate-vs-postnitro.md)\n- [DynaPictures vs Pixelixe](https://www.anchorterminal.com/compare/dynapictures-vs-pixelixe.md)\n- [DynaPictures vs PostNitro](https://www.anchorterminal.com/compare/dynapictures-vs-postnitro.md)\n- [Layerre vs Pixelixe](https://www.anchorterminal.com/compare/layerre-vs-pixelixe.md)\n- [Layerre vs PostNitro](https://www.anchorterminal.com/compare/layerre-vs-postnitro.md)\n- [Photoroom API vs PostNitro](https://www.anchorterminal.com/compare/photoroom-vs-postnitro.md)\n- [Pixelixe vs Placid API + MCP](https://www.anchorterminal.com/compare/pixelixe-vs-placid.md)\n- [Pixelixe vs Robolly](https://www.anchorterminal.com/compare/pixelixe-vs-robolly.md)\n- [Pixelixe vs Shotstack](https://www.anchorterminal.com/compare/pixelixe-vs-shotstack.md)\n- [Pixelixe vs Templated API + MCP](https://www.anchorterminal.com/compare/pixelixe-vs-templated.md)\n- [Placid API + MCP vs PostNitro](https://www.anchorterminal.com/compare/placid-vs-postnitro.md)\n- [PostNitro vs Robolly](https://www.anchorterminal.com/compare/postnitro-vs-robolly.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- [Abyssale vs Pixelixe](https://www.anchorterminal.com/compare/abyssale-vs-pixelixe.md)\n- [Abyssale vs PostNitro](https://www.anchorterminal.com/compare/abyssale-vs-postnitro.md)\n- [Osmo CLI vs Pixelixe](https://www.anchorterminal.com/compare/osmo-cli-vs-pixelixe.md)\n- [Osmo CLI vs PostNitro](https://www.anchorterminal.com/compare/osmo-cli-vs-postnitro.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- [Adobe Photoshop API vs Pixelixe](https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-pixelixe.md)\n- [Photoroom API vs Pixelixe](https://www.anchorterminal.com/compare/photoroom-vs-pixelixe.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": "Pixelixe vs PostNitro",
        "url": ""
      }
    ],
    "description": "PostNitro scores 52.6 (D) to Pixelixe's 37.3 (F) for design templates. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Pixelixe F 37.3",
      "PostNitro D 52.6",
      "scores"
    ],
    "h1": "Pixelixe vs PostNitro",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/pixelixe-vs-postnitro",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Pixelixe vs PostNitro for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/pixelixe-vs-postnitro"
  },
  "tokens": {
    "markdown": 5000,
    "slim": 3030
  },
  "version": 1
}
