{
  "data": {
    "similar": [
      {
        "grade": "B",
        "json": "https://www.anchorterminal.com/tools/canva.json",
        "name": "Canva REST APIs + MCP",
        "score": 64.3,
        "shared": [
          "design.templates",
          "design.render",
          "design.brand"
        ],
        "slug": "canva"
      },
      {
        "grade": "B",
        "json": "https://www.anchorterminal.com/tools/late.json",
        "name": "Zernio (formerly Late) API + MCP",
        "score": 67.5,
        "shared": [
          "social.post",
          "social.schedule"
        ],
        "slug": "late"
      },
      {
        "grade": "B",
        "json": "https://www.anchorterminal.com/tools/shotstack.json",
        "name": "Shotstack",
        "score": 65.3,
        "shared": [
          "design.templates",
          "design.render"
        ],
        "slug": "shotstack"
      },
      {
        "grade": "B",
        "json": "https://www.anchorterminal.com/tools/buffer.json",
        "name": "Buffer API + MCP",
        "score": 62,
        "shared": [
          "social.post",
          "social.schedule"
        ],
        "slug": "buffer"
      },
      {
        "grade": "C",
        "json": "https://www.anchorterminal.com/tools/templated.json",
        "name": "Templated API + MCP",
        "score": 61.2,
        "shared": [
          "design.templates",
          "design.render"
        ],
        "slug": "templated"
      },
      {
        "grade": "C",
        "json": "https://www.anchorterminal.com/tools/bannerbear.json",
        "name": "Bannerbear API + MCP",
        "score": 60.5,
        "shared": [
          "design.templates",
          "design.render"
        ],
        "slug": "bannerbear"
      }
    ],
    "tool": {
      "slug": "postnitro",
      "name": "PostNitro",
      "vendor": "PostNitro Inc.",
      "vendorUrl": "https://postnitro.ai",
      "kind": "mcp",
      "category": "design-assets",
      "summary": "PostNitro designs carousels, single-image posts and slide videos from templates and brand kits, then schedules them to six social networks. Agents use a hosted MCP server with 35 tools, a REST API, a CLI or an agent plugin.",
      "url": "https://www.anchorterminal.com/tools/postnitro",
      "markdownUrl": "https://www.anchorterminal.com/tools/postnitro.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/postnitro.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/postnitro.json",
      "repo": "https://github.com/postnitro/postnitro-agent",
      "license": "Proprietary hosted service under PostNitro's Terms of Service. The CLI, agent skill and agent plugin repositories are MIT",
      "transports": [
        "streamable-http",
        "http"
      ],
      "remoteUrl": "https://mcp.postnitro.ai/mcp",
      "packages": [
        {
          "registry": "npm",
          "name": "@postnitro/cli"
        },
        {
          "registry": "npm",
          "name": "@postnitro/embed"
        }
      ],
      "auth": "mixed",
      "authNotes": "The MCP server takes OAuth 2.1 with PKCE and dynamic client registration (scopes `postnitro` and `offline_access`), used by the Claude and ChatGPT directory listings, or a `pn-` API key as `Authorization: Bearer`. The REST API takes the same key in the `embed-api-key` header. A person generates the key under Profile \u003e Embed in the web app. No read-only key or finer scope is documented.",
      "pricing": "paid",
      "pricingNotes": "API, MCP and CLI calls spend Embed API credits, 1 per imported slide and 2 per AI-written slide. Credits come with Creator+ ($30 a month, 200) or Team+ ($60, 500), or as a $10 add-on for 250 on a paid plan, $0.04 each. Scheduling needs Creator+ or above (https://postnitro.ai/plans).",
      "priceSummary": "$15 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the Embed API OpenAPI document, llms.txt, llms-full.txt, the MCP docs or the plans page (checked 2026-10-14).",
        "endpoints": []
      },
      "toolCount": 35,
      "popularity": {
        "githubStars": 2,
        "npmWeekly": 200,
        "pypiWeekly": null,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://postnitro.ai/docs/embed/mcp",
      "mcpTools": {
        "url": "https://mcp.postnitro.ai/mcp",
        "checkedAt": "2026-10-14T22:17:48.649874285Z",
        "status": "auth",
        "note": "asks for credentials before listing its tools",
        "changedAt": "2026-10-14T22:17:48.649874285Z"
      },
      "llmsTxt": "https://postnitro.ai/llms.txt",
      "openapi": "https://postnitro.ai/.well-known/openapi/embed.json",
      "capabilities": [
        "design.templates",
        "design.render",
        "design.brand",
        "social.schedule",
        "social.post"
      ],
      "tags": [
        "hosted",
        "mcp",
        "oauth",
        "openapi",
        "llms-txt",
        "closed-source",
        "async-jobs",
        "cli",
        "n8n",
        "no-status-page"
      ],
      "lastRelease": "2026-10-07",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 44.5,
        "grade": "E",
        "agentReady": false,
        "rank": 945,
        "ranked": true,
        "rankOf": 1084,
        "categoryRank": 9,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 49,
          "maintenance": 65,
          "payments": 20,
          "reliability": 42,
          "schema": 77,
          "security": 30,
          "transparency": 48
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "breakdown": [
          {
            "key": "reliability",
            "name": "Reliability",
            "weight": 16,
            "effectiveWeight": 20,
            "score": 42,
            "points": 8.4,
            "reason": "Graded as a hosted service, the MCP server and the Embed REST API it wraps. No status page was found. `status.postnitro.ai` did not connect, `/status` returns 404, and only a health check at `mcp.postnitro.ai/health` answers (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). The OpenAPI document gives 429 with `Retry-After` and `X-RateLimit` headers, and the combined generate-and-schedule tool returns the `designId` on a scheduling failure so a retry does not regenerate. No idempotency key is documented for writes (12). No SLA was found and the terms supply the service as is (0). Nothing is labelled beta or preview (10)."
          },
          {
            "key": "performance",
            "name": "Performance",
            "weight": 10,
            "effectiveWeight": 0,
            "pending": true,
            "points": 0,
            "reason": "Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes."
          },
          {
            "key": "schema",
            "name": "Schema \u0026 documentation",
            "weight": 13,
            "effectiveWeight": 16.25,
            "score": 77,
            "points": 12.51,
            "reason": "OpenAPI 3.1 document for the Embed API at `/.well-known/openapi/embed.json` with 13 operations. It leaves out the documented template, brand and AI-preset endpoints, `llms.txt` links an older 6-operation spec, and the MCP tool schemas need a key to list (20). `llms.txt`, `llms-full.txt`, a docs `llms.txt`, `.md` twins and Markdown by content negotiation on every page (10). The docs state what each tool is for, when not to use PostNitro (plain publishing, X, analytics) and the `embedPostId` and `designId` split. The docs index still says 12 MCP tools and four scheduling networks, and pages disagree on the free tier (15). 24 enums, typed slide objects and per-platform settings objects with conditional rules (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)."
          },
          {
            "key": "ergonomics",
            "name": "Agent ergonomics",
            "weight": 13,
            "effectiveWeight": 16.25,
            "score": 49,
            "points": 7.96,
            "reason": "35 MCP tools load together with no toolsets or read-only subset (5). The `DESIGN` output skips rendering and the `_and_wait` tools fold polling into one call, so 3 are added back (8). Templates and brands page with `page` and `limit` up to 100, and scheduled posts filter by date range and social account (14). Gateway errors carry `status` and a plain `message`, the schedule error page lists every validation message, and a missing ID returns the candidate IDs. A brand-limit error comes back as 401, which reads as an auth failure (14). No idempotency key. Destructive tools are named as such in their descriptions and audio deletion is refused while a post uses it. MCP annotations were not readable (6). 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)."
          },
          {
            "key": "security",
            "name": "Security \u0026 auth",
            "weight": 14,
            "effectiveWeight": 17.5,
            "score": 30,
            "points": 5.25,
            "reason": "The MCP server runs OAuth 2.1 with PKCE S256, dynamic client registration and a revocation endpoint, but with one broad `postnitro` scope. Keys are `pn-` API keys sent in a header, generated in the web app, with no scopes or rotation documented (20). No read-only key or mode. Destructive tools are flagged in descriptions, drafts and the `DESIGN` output allow review, and the confirmation the Claude page describes is the client's, not the server's (4). Tools fetch article URLs and X posts as source material and return job logs and captions, with no injection guidance found (3). Per-job processing logs come back from the status endpoint. No account audit log was found (3). No security.txt, disclosure route, bug bounty or certification was found (0). The Claude page says tokens are scoped to one workspace and that Anthropic reviews directory connectors, which is a vendor claim and not scored."
          },
          {
            "key": "payments",
            "name": "Payments \u0026 pricing",
            "weight": 10,
            "effectiveWeight": 12.5,
            "score": 20,
            "points": 2.5,
            "reason": "No x402, MPP or L402 (0). Credit prices are public without a login at $0.04 a credit, 1 per imported slide and 2 per AI-written slide, with plan prices of $15, $30 and $60 a month (20). The web app has a free plan with no card, but agent access is not free. The MCP page, the agents page and the OpenAPI document say write calls return 402 without a paid plan, and only the API subscription page describes 5 free credits a month, so no free API tier is counted (0). A person signs up in a browser and generates a key, or approves OAuth in the client. Dynamic client registration removes the key step but not the signup (0)."
          },
          {
            "key": "tasks",
            "name": "Task success",
            "weight": 10,
            "effectiveWeight": 0,
            "pending": true,
            "points": 0,
            "reason": "Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored."
          },
          {
            "key": "maintenance",
            "name": "Maintenance \u0026 community",
            "weight": 7,
            "effectiveWeight": 8.75,
            "score": 65,
            "points": 5.69,
            "reason": "CLI 1.5.0 on 7 October 2026, and `llms.txt` and the fact sheet are dated 7 October 2026 (30). CLI 1.3.0 on npm on 18 August, 1.4.1 on 29 September and 1.5.0 on 7 October, with Facebook and Pinterest scheduling added, and the Cursor plugin on 29 September (20). Closed service with a dated CLI changelog, support by email and in-app chat, and four public repositories with no open issues and few outside contributions to judge replies by (8). The server card names `ai.postnitro/mcp`, but the official MCP registry returned no PostNitro entry (0). The CLI publishes from a GitHub Actions workflow. The Embed SDK was last published on 15 July 2025 (7)."
          },
          {
            "key": "transparency",
            "name": "Transparency \u0026 trust",
            "weight": 7,
            "effectiveWeight": 8.75,
            "score": 48,
            "points": 4.2,
            "note": "editorial 33, provenance 63",
            "reason": "Closed service under Terms of Service last updated 20 May 2024 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, dated 5 October 2023, says carousel data is used to train PostNitro's AI model. The Claude connector page and the policy's own page description say content is never used for training. Deletion within 24 hours of a request is stated in both the terms and the policy. No DPA (8). 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)."
          }
        ],
        "assessment": {
          "date": "2026-10-14",
          "basis": "public evidence",
          "confidence": "medium",
          "notes": {
            "ergonomics": "35 MCP tools load together with no toolsets or read-only subset (5). The `DESIGN` output skips rendering and the `_and_wait` tools fold polling into one call, so 3 are added back (8). Templates and brands page with `page` and `limit` up to 100, and scheduled posts filter by date range and social account (14). Gateway errors carry `status` and a plain `message`, the schedule error page lists every validation message, and a missing ID returns the candidate IDs. A brand-limit error comes back as 401, which reads as an auth failure (14). No idempotency key. Destructive tools are named as such in their descriptions and audio deletion is refused while a post uses it. MCP annotations were not readable (6). 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).",
            "maintenance": "CLI 1.5.0 on 7 October 2026, and `llms.txt` and the fact sheet are dated 7 October 2026 (30). CLI 1.3.0 on npm on 18 August, 1.4.1 on 29 September and 1.5.0 on 7 October, with Facebook and Pinterest scheduling added, and the Cursor plugin on 29 September (20). Closed service with a dated CLI changelog, support by email and in-app chat, and four public repositories with no open issues and few outside contributions to judge replies by (8). The server card names `ai.postnitro/mcp`, but the official MCP registry returned no PostNitro entry (0). The CLI publishes from a GitHub Actions workflow. The Embed SDK was last published on 15 July 2025 (7).",
            "payments": "No x402, MPP or L402 (0). Credit prices are public without a login at $0.04 a credit, 1 per imported slide and 2 per AI-written slide, with plan prices of $15, $30 and $60 a month (20). The web app has a free plan with no card, but agent access is not free. The MCP page, the agents page and the OpenAPI document say write calls return 402 without a paid plan, and only the API subscription page describes 5 free credits a month, so no free API tier is counted (0). A person signs up in a browser and generates a key, or approves OAuth in the client. Dynamic client registration removes the key step but not the signup (0).",
            "reliability": "Graded as a hosted service, the MCP server and the Embed REST API it wraps. No status page was found. `status.postnitro.ai` did not connect, `/status` returns 404, and only a health check at `mcp.postnitro.ai/health` answers (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). The OpenAPI document gives 429 with `Retry-After` and `X-RateLimit` headers, and the combined generate-and-schedule tool returns the `designId` on a scheduling failure so a retry does not regenerate. No idempotency key is documented for writes (12). No SLA was found and the terms supply the service as is (0). Nothing is labelled beta or preview (10).",
            "schema": "OpenAPI 3.1 document for the Embed API at `/.well-known/openapi/embed.json` with 13 operations. It leaves out the documented template, brand and AI-preset endpoints, `llms.txt` links an older 6-operation spec, and the MCP tool schemas need a key to list (20). `llms.txt`, `llms-full.txt`, a docs `llms.txt`, `.md` twins and Markdown by content negotiation on every page (10). The docs state what each tool is for, when not to use PostNitro (plain publishing, X, analytics) and the `embedPostId` and `designId` split. The docs index still says 12 MCP tools and four scheduling networks, and pages disagree on the free tier (15). 24 enums, typed slide objects and per-platform settings objects with conditional rules (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).",
            "security": "The MCP server runs OAuth 2.1 with PKCE S256, dynamic client registration and a revocation endpoint, but with one broad `postnitro` scope. Keys are `pn-` API keys sent in a header, generated in the web app, with no scopes or rotation documented (20). No read-only key or mode. Destructive tools are flagged in descriptions, drafts and the `DESIGN` output allow review, and the confirmation the Claude page describes is the client's, not the server's (4). Tools fetch article URLs and X posts as source material and return job logs and captions, with no injection guidance found (3). Per-job processing logs come back from the status endpoint. No account audit log was found (3). No security.txt, disclosure route, bug bounty or certification was found (0). The Claude page says tokens are scoped to one workspace and that Anthropic reviews directory connectors, which is a vendor claim and not scored.",
            "transparency": "Closed service under Terms of Service last updated 20 May 2024 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, dated 5 October 2023, says carousel data is used to train PostNitro's AI model. The Claude connector page and the policy's own page description say content is never used for training. Deletion within 24 hours of a request is stated in both the terms and the policy. No DPA (8). 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)."
          },
          "sources": [
            {
              "what": "llms.txt, last updated 7 October 2026",
              "url": "https://postnitro.ai/llms.txt",
              "seen": "2026-10-14"
            },
            {
              "what": "llms-full.txt",
              "url": "https://postnitro.ai/llms-full.txt",
              "seen": "2026-10-14"
            },
            {
              "what": "fact sheet, last verified 7 October 2026",
              "url": "https://postnitro.ai/facts",
              "seen": "2026-10-14"
            },
            {
              "what": "agents page",
              "url": "https://postnitro.ai/agents",
              "seen": "2026-10-14"
            },
            {
              "what": "MCP server page",
              "url": "https://postnitro.ai/mcp",
              "seen": "2026-10-14"
            },
            {
              "what": "MCP server docs",
              "url": "https://postnitro.ai/docs/embed/mcp.md",
              "seen": "2026-10-14"
            },
            {
              "what": "docs index for agents",
              "url": "https://postnitro.ai/docs/llms.txt",
              "seen": "2026-10-14"
            },
            {
              "what": "Embed API OpenAPI 3.1 document",
              "url": "https://postnitro.ai/.well-known/openapi/embed.json",
              "seen": "2026-10-14"
            },
            {
              "what": "older OpenAPI document linked from llms.txt",
              "url": "https://postnitro.ai/docs/openapi.json",
              "seen": "2026-10-14"
            },
            {
              "what": "API catalogue (RFC 9727)",
              "url": "https://postnitro.ai/.well-known/api-catalog",
              "seen": "2026-10-14"
            },
            {
              "what": "MCP server card",
              "url": "https://postnitro.ai/.well-known/mcp/server-card.json",
              "seen": "2026-10-14"
            },
            {
              "what": "MCP protected-resource metadata",
              "url": "https://mcp.postnitro.ai/.well-known/oauth-protected-resource",
              "seen": "2026-10-14"
            },
            {
              "what": "OAuth authorisation server metadata",
              "url": "https://postnitro.ai/.well-known/oauth-authorization-server",
              "seen": "2026-10-14"
            },
            {
              "what": "MCP health check, version 1.3.0",
              "url": "https://mcp.postnitro.ai/health",
              "seen": "2026-10-14"
            },
            {
              "what": "Embed API authentication",
              "url": "https://postnitro.ai/docs/embed/api/authentication.md",
              "seen": "2026-10-14"
            },
            {
              "what": "obtaining an API key",
              "url": "https://postnitro.ai/docs/embed/obtaining-an-api-key.md",
              "seen": "2026-10-14"
            },
            {
              "what": "Embed API subscription and credits",
              "url": "https://postnitro.ai/docs/embed/api/subscription.md",
              "seen": "2026-10-14"
            },
            {
              "what": "Schedule API errors",
              "url": "https://postnitro.ai/docs/embed/api/schedule/errors.md",
              "seen": "2026-10-14"
            },
            {
              "what": "Templates API",
              "url": "https://postnitro.ai/docs/embed/api/templates.md",
              "seen": "2026-10-14"
            },
            {
              "what": "Brands API",
              "url": "https://postnitro.ai/docs/embed/api/brands.md",
              "seen": "2026-10-14"
            },
            {
              "what": "plans and pricing",
              "url": "https://postnitro.ai/plans",
              "seen": "2026-10-14"
            },
            {
              "what": "Claude connector page",
              "url": "https://postnitro.ai/claude",
              "seen": "2026-10-14"
            },
            {
              "what": "Terms of Service, last updated 20 May 2024",
              "url": "https://postnitro.ai/terms",
              "seen": "2026-10-14"
            },
            {
              "what": "privacy policy, last updated 5 October 2023",
              "url": "https://postnitro.ai/privacy",
              "seen": "2026-10-14"
            },
            {
              "what": "robots.txt, all agents allowed",
              "url": "https://postnitro.ai/robots.txt",
              "seen": "2026-10-14"
            },
            {
              "what": "security.txt (404)",
              "url": "https://postnitro.ai/.well-known/security.txt",
              "seen": "2026-10-14"
            },
            {
              "what": "CLI repository and changelog",
              "url": "https://github.com/postnitro/postnitro-agent",
              "seen": "2026-10-14"
            },
            {
              "what": "agent plugin repository",
              "url": "https://github.com/postnitro/postnitro-agent-plugin",
              "seen": "2026-10-14"
            },
            {
              "what": "agent skill repository, first commit 5 March 2026",
              "url": "https://github.com/postnitro/postnitro-carousel-skill",
              "seen": "2026-10-14"
            },
            {
              "what": "n8n node repository, v0.1.0 on 11 August 2025",
              "url": "https://github.com/postnitro/n8n-nodes-postnitro-ai",
              "seen": "2026-10-14"
            },
            {
              "what": "CLI on npm",
              "url": "https://registry.npmjs.org/@postnitro/cli",
              "seen": "2026-10-14"
            },
            {
              "what": "Embed SDK on npm",
              "url": "https://registry.npmjs.org/@postnitro/embed",
              "seen": "2026-10-14"
            },
            {
              "what": "official MCP registry search (no entry)",
              "url": "https://registry.modelcontextprotocol.io/v0/servers?search=postnitro",
              "seen": "2026-10-14"
            },
            {
              "what": "blog index with dated MCP posts",
              "url": "https://postnitro.ai/blog/llms-full.txt",
              "seen": "2026-10-14"
            },
            {
              "what": "archived MCP page, 15 April 2026",
              "url": "https://web.archive.org/web/20260415130450/https://postnitro.ai/mcp",
              "seen": "2026-10-14"
            },
            {
              "what": "domain registration",
              "url": "https://rdap.org/domain/postnitro.ai",
              "seen": "2026-10-14"
            }
          ],
          "openQuestions": [
            "unchecked: the MCP tool input schemas and annotations, which need a key or OAuth sign-in to list",
            "unchecked: the Claude Connector Directory listing, which answered 403, and the ChatGPT plugin listing",
            "unchecked: the Product Hunt launch on 13 October 2026. producthunt.com answered 403",
            "Whether the API has a free tier. The subscription docs give 5 credits a month with no card, while the MCP page, agents page and OpenAPI document say write calls need a paid plan",
            "Whether the 3-day trial on Creator+ needs a card and includes API credits",
            "The MCP server version. The server card and docs say 1.0.0 and the health check reports 1.3.0",
            "firstReleased is 11 August 2025, the n8n node's v0.1.0 against the Embed API, with the API docs archived on 13 August 2025. The MCP server is first seen on 15 April 2026 and the Embed SDK on npm on 18 March 2024",
            "The fact sheet asks directories to treat it as authoritative where other sources disagree. Recorded as a fact and not acted on",
            "Which training statement holds. The privacy policy body says carousel data trains PostNitro's AI model, and the page description and the Claude page say it never does. A dated policy update that settles it would remove the deduction"
          ]
        },
        "negative": -2,
        "negativeNotes": [
          "Conflicting training statements on PostNitro's own pages, read 14 October 2026. The privacy policy body (5 October 2023) says the data saved from carousel creation is used to train PostNitro's AI model, while the same page's description and the Claude connector page say content is never used to train AI models. At least one is wrong, and no dated update settles it (-2) (https://postnitro.ai/privacy, https://postnitro.ai/claude)"
        ],
        "verdict": "A hosted MCP server and REST API let an agent turn a topic, article or own slides into a branded carousel, image or slide video and schedule it, with OAuth, numbered rate limits and Markdown docs. No status page, security contact or idempotency key was found, and the privacy policy contradicts the vendor's no-training statement.",
        "bestFor": "An agent that must produce a designed, on-brand carousel or slide video and book it on LinkedIn, Instagram, TikTok, Threads, Facebook Pages or Pinterest in one chain.",
        "strengths": [
          "OAuth 2.1 with dynamic client registration on the MCP server, so Claude and ChatGPT connect without a stored API key",
          "Rate limits are published per key and endpoint, and 429 responses carry `Retry-After` and `X-RateLimit` headers",
          "OpenAPI 3.1 document, `llms.txt`, `llms-full.txt` and a Markdown version of every page by content negotiation",
          "Per-slide credit prices are public at $0.04 a credit, 1 per imported slide and 2 per AI-written slide",
          "The one-call generate-and-schedule tool returns the `designId` when scheduling fails, so a retry does not spend credits again"
        ],
        "weaknesses": [
          "No status page, incident history, SLA, security.txt or certification was found",
          "35 MCP tools load at once, with no toolsets or read-only subset, and the OAuth flow has one broad `postnitro` scope",
          "The privacy policy says carousel data trains PostNitro's AI model, while the Claude connector page says content is never used for training",
          "No idempotency key on create or schedule calls, and the Embed API has no changelog or deprecation policy",
          "Pages disagree on the API free tier and tool count. One docs index still says 12 MCP tools and four scheduling networks"
        ],
        "agentNotes": [
          "Call `postnitro_set_defaults` once with a template, brand and AI preset, or every generate call must carry those IDs",
          "Pass the `designId` from `postnitro_get_output` to scheduling, never the `embedPostId`, or the call fails with `Design not found`",
          "For a LinkedIn PDF post, set `linkedinPostSettings.postType` to `document` with a 5 to 90 character `postTitle`",
          "Ask for the `DESIGN` output or save as `DRAFT` when a person must approve before anything publishes",
          "Keep to 5 create calls a minute per key and wait for `Retry-After` on a 429"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "E",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 44.5
          }
        ],
        "editorialScores": {
          "ergonomics": 49,
          "maintenance": 65,
          "payments": 20,
          "reliability": 42,
          "schema": 77,
          "security": 30,
          "transparency": 33
        },
        "provenanceScore": 63
      },
      "connect": {
        "install": "npm install -g @postnitro/cli",
        "http": "curl https://embed-api.postnitro.ai/template -H \"embed-api-key: pn-your-api-key\"",
        "claudeCode": "claude mcp add --transport http postnitro https://mcp.postnitro.ai/mcp --header \"Authorization: Bearer pn-your-api-key-here\"",
        "config": {
          "mcpServers": {
            "postnitro": {
              "headers": {
                "Authorization": "Bearer pn-your-api-key-here"
              },
              "type": "http",
              "url": "https://mcp.postnitro.ai/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/design.templates",
        "tool": "https://letme.dev/postnitro"
      },
      "notable": [
        "Design jobs are asynchronous. A job returns an `embedPostId` to poll, and scheduling needs the separate `designId` from the output, or it fails with `Design not found` (https://postnitro.ai/docs/embed/mcp)",
        "Video output is the carousel's slides rendered as an MP4 of 5 to under 60 seconds with animated text and chosen audio. The vendor states it is not a generative video model (https://postnitro.ai/agents)",
        "Publishes natively to LinkedIn, Instagram, TikTok, Threads, Facebook Pages and Pinterest boards. X is a content source and export format only (https://postnitro.ai/facts)",
        "Rate limits per API key per minute are 5 for each create endpoint, 120 for status and output, and 30 shared by every other endpoint, with `Retry-After` on 429 (https://postnitro.ai/.well-known/openapi/embed.json)",
        "The free tier is described two ways. The API subscription docs give 5 free credits a month, while the MCP page, the agents page and the OpenAPI document say write calls need a paid plan (https://postnitro.ai/docs/embed/api/subscription)",
        "The privacy policy, dated 5 October 2023, says carousel data is used to train PostNitro's AI model. The Claude connector page and the policy's own page description say content is never used for training (https://postnitro.ai/privacy)",
        "The fact sheet asks directories to treat it as authoritative where other sources disagree. Recorded as a fact and not acted on (https://postnitro.ai/facts)"
      ],
      "area": "design-diagrams",
      "details": [
        {
          "label": "Surfaces",
          "value": "Hosted MCP server (35 tools), Embed REST API, CLI `@postnitro/cli`, agent skill, Agent Plugins manifest for Claude Code, Codex and Cursor, Embed SDK editor, and n8n, Zapier and Make integrations"
        },
        {
          "label": "Outputs",
          "value": "PNG per slide, one PDF, MP4 for video posts, or an editable DESIGN with no render that opens in the web editor"
        },
        {
          "label": "Publishing",
          "value": "LinkedIn, Instagram, TikTok, Threads, Facebook Pages and Pinterest boards, as drafts or scheduled posts, from Creator+ upward. X is export only"
        },
        {
          "label": "Rate limits",
          "value": "Per key per minute, 5 for each create endpoint, 120 for status and output, 30 shared by all other endpoints"
        },
        {
          "label": "Credits",
          "value": "1 per imported slide, 2 per AI-written slide. AI images draw on a separate image quota. Unused credits do not roll over"
        },
        {
          "label": "Free tier",
          "value": "Free web plan with no card. For the API, the subscription docs give 5 credits a month, but other pages and the OpenAPI document say write calls need a paid plan"
        },
        {
          "label": "History",
          "value": "Embed API documented by August 2025. MCP page live by 15 April 2026 with 12 tools, 35 now. The 13 October 2026 Product Hunt launch is a relaunch of this agent offering"
        }
      ],
      "unitPrices": [
        {
          "item": "Starter",
          "unit": "month",
          "usd": 15,
          "note": "No scheduling or API access unless the Embed API add-on is bought"
        },
        {
          "item": "Creator+",
          "unit": "month",
          "usd": 30,
          "note": "200 API credits a month, scheduling to 10 social accounts"
        },
        {
          "item": "Team+",
          "unit": "month",
          "usd": 60,
          "note": "500 API credits a month, scheduling to 30 social accounts"
        },
        {
          "item": "Embed API add-on",
          "unit": "month",
          "usd": 10,
          "note": "250 credits on top of a paid plan, scalable to 25,000"
        },
        {
          "item": "Embed API credit",
          "unit": "credit",
          "usd": 0.04,
          "note": "1 credit per imported slide, 2 per AI-written slide"
        }
      ],
      "provenance": {
        "legalEntity": "PostNitro Inc.",
        "domain": "postnitro.ai",
        "domainRegistered": "2023-03-23",
        "endpointOnVendorDomain": true,
        "terms": "https://postnitro.ai/terms",
        "privacy": "https://postnitro.ai/privacy",
        "statusPage": "",
        "changelog": "https://github.com/postnitro/postnitro-agent/blob/main/CHANGELOG.md",
        "securityTxt": "none",
        "checked": "2026-10-14",
        "notes": [
          "The Terms of Service, last updated 20 May 2024, cover the website, applications and APIs. They name no legal entity or governing law. The privacy policy names PostNitro Inc. as controller.",
          "The privacy policy is dated 5 October 2023 and names UserMaven, CrispChat and an unnamed payment processor. No DPA or sub-processor list was found.",
          "No status page was found. status.postnitro.ai did not connect and /status returns 404. The MCP server answers a health check at https://mcp.postnitro.ai/health, reporting version 1.3.0.",
          "The changelog covers the CLI only. No changelog for the Embed API or MCP server was found.",
          "postnitro.ai/.well-known/security.txt and /security.txt return 404.",
          "RDAP gives a registration date of 2023-03-23 for postnitro.ai. The fact sheet says the company was founded in 2023."
        ],
        "score": 63,
        "checks": [
          {
            "check": "Legal entity named",
            "value": "PostNitro Inc.",
            "points": 20,
            "max": 20,
            "state": "ok"
          },
          {
            "check": "Domain age",
            "value": "postnitro.ai, registered 2023-03-23 (3 years)",
            "points": 7,
            "max": 15,
            "state": "part"
          },
          {
            "check": "Endpoint on the vendor's domain",
            "value": "mcp.postnitro.ai",
            "points": 15,
            "max": 15,
            "state": "ok"
          },
          {
            "check": "Terms of service",
            "value": "read, states 5 of the 7 things a reader expects, and has 1 clause that costs points",
            "points": 6.3,
            "max": 10,
            "state": "part"
          },
          {
            "check": "Privacy policy",
            "value": "read, states 4 of the 8 things a reader expects, and has 1 clause that costs points",
            "points": 5,
            "max": 10,
            "state": "part"
          },
          {
            "check": "Status page",
            "value": "not found",
            "points": 0,
            "max": 10,
            "state": "no"
          },
          {
            "check": "Changelog",
            "value": "published",
            "points": 10,
            "max": 10,
            "state": "ok"
          },
          {
            "check": "security.txt",
            "value": "not found",
            "points": 0,
            "max": 10,
            "state": "no"
          }
        ],
        "policies": [
          {
            "kind": "terms",
            "url": "https://postnitro.ai/terms",
            "state": "read",
            "readAt": "2026-10-14",
            "statedDate": "2024-05-20",
            "words": 864,
            "points": 6.3,
            "max": 10,
            "expected": [
              {
                "key": "terms.date",
                "label": "Gives the date it was last updated",
                "found": true,
                "quote": "Last Updated On: 20th May 2024",
                "says": "Last updated 2024-05-20"
              },
              {
                "key": "terms.law",
                "label": "Names the governing law or courts",
                "found": false
              },
              {
                "key": "terms.liability",
                "label": "States a limit on its liability",
                "found": true,
                "quote": "PostNitro's liability cannot exceed any fees paid by you to PostNitro for the use of paid aspects of the Service."
              },
              {
                "key": "terms.termination",
                "label": "Says how the agreement or account can be ended",
                "found": true,
                "quote": "PostNitro may modify, suspend, or discontinue any aspect of the Service at any time and without notice."
              },
              {
                "key": "terms.changes",
                "label": "Says how changes to the terms are announced",
                "found": true,
                "quote": "PostNitro may revise these Terms occasionally, and the changes will be effective immediately upon publishing."
              },
              {
                "key": "terms.use",
                "label": "Lists what users may not do",
                "found": true,
                "quote": "You agree not to misuse the Service or assist others in doing so."
              },
              {
                "key": "terms.sla",
                "label": "Refers to a service level or uptime commitment",
                "found": false
              }
            ],
            "toKnow": [
              {
                "key": "terms.nonotice",
                "label": "Says the terms or the service can change without notice",
                "found": true,
                "quote": "PostNitro may modify, suspend, or discontinue any aspect of the Service at any time and without notice.",
                "costsPoints": true
              },
              {
                "key": "terms.cutoff",
                "label": "Says access can be ended without notice or for any reason",
                "found": true,
                "quote": "We will attempt to notify you before termination but are not obligated to do so."
              }
            ]
          },
          {
            "kind": "privacy",
            "url": "https://postnitro.ai/privacy",
            "state": "read",
            "readAt": "2026-10-14",
            "statedDate": "2023-10-05",
            "words": 702,
            "points": 5,
            "max": 10,
            "expected": [
              {
                "key": "privacy.date",
                "label": "Gives the date it was last updated",
                "found": true,
                "quote": "Last Updated On: 5th October 2023",
                "says": "Last updated 2023-10-05"
              },
              {
                "key": "privacy.collected",
                "label": "Says what personal data is collected",
                "found": true,
                "quote": "This Privacy Policy explains how we collect, use, disclose, and protect your personal information."
              },
              {
                "key": "privacy.retention",
                "label": "Says how long data is kept",
                "found": true,
                "quote": "We will retain personal information for as long as your account is active.",
                "says": "For as long as needed, with no period named"
              },
              {
                "key": "privacy.processors",
                "label": "Says who else receives the data",
                "found": false
              },
              {
                "key": "privacy.sale",
                "label": "Says whether personal data is sold or shared for advertising",
                "found": false
              },
              {
                "key": "privacy.rights",
                "label": "Says what rights people have over their data",
                "found": false
              },
              {
                "key": "privacy.contact",
                "label": "Gives a privacy contact",
                "found": true,
                "quote": "For any queries or requests regarding your data, or if you believe we may breach relevant data protection law, don't hesitate to contact us at support@postnitro.ai.",
                "says": "support@postnitro.ai"
              },
              {
                "key": "privacy.transfers",
                "label": "Says where data is transferred or stored",
                "found": false
              }
            ],
            "toKnow": [
              {
                "key": "training",
                "label": "Says it may use customer content to train or improve models, and no opt-out was found",
                "found": true,
                "quote": "The data saved related to the carousel creation is used to train our AI model to produce even better, highly optimized data.",
                "costsPoints": true
              },
              {
                "key": "old",
                "label": "Has not been updated for three years or more",
                "found": true,
                "quote": "Last Updated On: 5th October 2023"
              }
            ],
            "notes": [
              {
                "date": "2026-10-14",
                "text": "On a deletion request the account and all associated data are permanently deleted within 24 hours.",
                "quote": "Upon receiving your request, we will permanently delete your account and all associated data within 24 hours."
              }
            ]
          }
        ]
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/postnitro.json",
      "live": {
        "slug": "postnitro",
        "probe": {
          "target": "https://mcp.postnitro.ai/mcp",
          "method": "mcp-initialize",
          "lastAt": "2026-10-15T00:24:22.389748682Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 101,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 103,
          "p95ms24h": 146,
          "samples24h": 31,
          "samples30d": 31,
          "days": [
            {
              "date": "2026-10-14",
              "probes": 26,
              "ok": 26
            },
            {
              "date": "2026-10-15",
              "probes": 5,
              "ok": 5
            }
          ]
        },
        "versions": [
          {
            "registry": "github",
            "name": "postnitro/postnitro-agent",
            "version": "v1.5.0",
            "released": "2026-10-07",
            "seenAt": "2026-10-15T00:15:12.63443761Z"
          },
          {
            "registry": "npm",
            "name": "@postnitro/cli",
            "version": "1.5.0",
            "seenAt": "2026-10-15T00:15:10.434524788Z"
          },
          {
            "registry": "npm",
            "name": "@postnitro/embed",
            "version": "2.0.3",
            "seenAt": "2026-10-15T00:15:11.257477478Z"
          }
        ],
        "githubStars": 2,
        "npmWeekly": 200,
        "mcpTools": {
          "url": "https://mcp.postnitro.ai/mcp",
          "checkedAt": "2026-10-14T22:17:48.649874285Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-10-14T22:17:48.649874285Z"
        },
        "updatedAt": "2026-10-15T00:24:22.389748682Z"
      }
    },
    "verify": {
      "accepts": "a page on postnitro.ai or one of its subdomains, or the README of github.com/postnitro/postnitro-agent",
      "badgeUrl": "https://www.anchorterminal.com/badges/postnitro.svg",
      "body": {
        "slug": "postnitro",
        "url": "the page with the badge or the link"
      },
      "docs": "https://www.anchorterminal.com/builders/#verify",
      "effect": "none, it never changes a grade, rank or review",
      "endpoint": "https://www.anchorterminal.com/api/v1/verify",
      "listingUrl": "https://www.anchorterminal.com/tools/postnitro",
      "mcpTool": "verify_listing",
      "recheck": "weekly; two failed checks in a row and it lapses, a later pass restores it",
      "snippets": {
        "html": "\u003ca href=\"https://www.anchorterminal.com/tools/postnitro\"\u003e\u003cimg src=\"https://www.anchorterminal.com/badges/postnitro.svg\" alt=\"PostNitro on Anchor Terminal\" height=\"20\"\u003e\u003c/a\u003e",
        "markdown": "[![PostNitro on Anchor Terminal](https://www.anchorterminal.com/badges/postnitro.svg)](https://www.anchorterminal.com/tools/postnitro)",
        "link": "\u003ca href=\"https://www.anchorterminal.com/tools/postnitro\"\u003ePostNitro on Anchor Terminal\u003c/a\u003e"
      }
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/tools/postnitro",
    "json": "https://www.anchorterminal.com/tools/postnitro.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/tools/postnitro.md",
    "slim": "https://www.anchorterminal.com/tools/postnitro.min.md"
  },
  "markdown": "## Overview\n\n**Grade E · 44.5/100 · rank #945 of 1084 · #9 in Programmatic asset production · not agent-ready · confidence medium**\n\n\n## Assessment\n\nA hosted MCP server and REST API let an agent turn a topic, article or own slides into a branded carousel, image or slide video and schedule it, with OAuth, numbered rate limits and Markdown docs. No status page, security contact or idempotency key was found, and the privacy policy contradicts the vendor's no-training statement.\n\n## Facts\n\n| Field | Value |\n| --- | --- |\n| Vendor | PostNitro Inc. (https://postnitro.ai) |\n| Kind | MCP server |\n| Category | Programmatic asset production (https://www.anchorterminal.com/categories/design-assets) |\n| Transport | Streamable HTTP, HTTP |\n| Endpoint | `https://mcp.postnitro.ai/mcp` |\n| Auth | OAuth or key · 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. |\n| Pricing | Paid ($15 / mo) · 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). |\n| x402 | No · 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). |\n| Licence | Proprietary hosted service under PostNitro's Terms of Service. The CLI, agent skill and agent plugin repositories are MIT |\n| Tools exposed | 35 |\n| Packages | npm: `@postnitro/cli`; npm: `@postnitro/embed` |\n| Source | https://github.com/postnitro/postnitro-agent |\n| Docs | https://postnitro.ai/docs/embed/mcp |\n| llms.txt | https://postnitro.ai/llms.txt |\n| Last release | 2026-10-07 |\n| GitHub stars | 2 (as of 2026-10-14) |\n| npm downloads / week | 200 |\n| Surfaces | Hosted MCP server (35 tools), Embed REST API, CLI `@postnitro/cli`, agent skill, Agent Plugins manifest for Claude Code, Codex and Cursor, Embed SDK editor, and n8n, Zapier and Make integrations |\n| Outputs | PNG per slide, one PDF, MP4 for video posts, or an editable DESIGN with no render that opens in the web editor |\n| Publishing | LinkedIn, Instagram, TikTok, Threads, Facebook Pages and Pinterest boards, as drafts or scheduled posts, from Creator+ upward. X is export only |\n| Rate limits | Per key per minute, 5 for each create endpoint, 120 for status and output, 30 shared by all other endpoints |\n| Credits | 1 per imported slide, 2 per AI-written slide. AI images draw on a separate image quota. Unused credits do not roll over |\n| Free tier | Free web plan with no card. For the API, the subscription docs give 5 credits a month, but other pages and the OpenAPI document say write calls need a paid plan |\n| History | Embed API documented by August 2025. MCP page live by 15 April 2026 with 12 tools, 35 now. The 13 October 2026 Product Hunt launch is a relaunch of this agent offering |\n| Capabilities | design.templates, design.render, design.brand, social.schedule, social.post |\n| Tags | hosted, mcp, oauth, openapi, llms-txt, closed-source, async-jobs, cli, n8n, no-status-page |\n| JSON | https://www.anchorterminal.com/api/v1/tools/postnitro.json |\n\n## Score breakdown (methodology v0.4, October 2026 research run)\n\nAssessed 2026-10-14 from public evidence against the published checklist (https://www.anchorterminal.com/benchmark/#checklist). Confidence: medium. Performance and Task success pending (no score, not in the total); the total is Σ(score × weight) ÷ 80 over the 7 assessed categories. \"This run\" is each category's share of the 100 points.\n\n| Category | Weight | This run | Score (0–100) | Points |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% | 20 | 42 | 8.4 |\n| Performance | 10% | pending | pending | n/a |\n| Schema \u0026 documentation | 13% | 16.2 | 77 | 12.5 |\n| Agent ergonomics | 13% | 16.2 | 49 | 8.0 |\n| Security \u0026 auth | 14% | 17.5 | 30 | 5.2 |\n| Payments \u0026 pricing | 10% | 12.5 | 20 | 2.5 |\n| Task success | 10% | pending | pending | n/a |\n| Maintenance \u0026 community | 7% | 8.8 | 65 | 5.7 |\n| Transparency \u0026 trust (editorial 33, provenance 63) | 7% | 8.8 | 48 | 4.2 |\n| Negative events | up to −15 | up to −15 | Conflicting training statements on PostNitro's own pages, read 14 October 2026. The privacy policy body (5 October 2023) says the data saved from carousel creation is used to train PostNitro's AI model, while the same page's description and the Claude connector page say content is never used to train AI models. At least one is wrong, and no dated update settles it (-2) (https://postnitro.ai/privacy, https://postnitro.ai/claude)  | -2 |\n| **Total** | | | | **44.5 → E** |\n\n### Why each score\n\n- Reliability 42: Graded as a hosted service, the MCP server and the Embed REST API it wraps. No status page was found. `status.postnitro.ai` did not connect, `/status` returns 404, and only a health check at `mcp.postnitro.ai/health` answers (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). The OpenAPI document gives 429 with `Retry-After` and `X-RateLimit` headers, and the combined generate-and-schedule tool returns the `designId` on a scheduling failure so a retry does not regenerate. No idempotency key is documented for writes (12). No SLA was found and the terms supply the service as is (0). Nothing is labelled beta or preview (10).\n- Performance: Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes.\n- Schema \u0026 documentation 77: OpenAPI 3.1 document for the Embed API at `/.well-known/openapi/embed.json` with 13 operations. It leaves out the documented template, brand and AI-preset endpoints, `llms.txt` links an older 6-operation spec, and the MCP tool schemas need a key to list (20). `llms.txt`, `llms-full.txt`, a docs `llms.txt`, `.md` twins and Markdown by content negotiation on every page (10). The docs state what each tool is for, when not to use PostNitro (plain publishing, X, analytics) and the `embedPostId` and `designId` split. The docs index still says 12 MCP tools and four scheduling networks, and pages disagree on the free tier (15). 24 enums, typed slide objects and per-platform settings objects with conditional rules (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).\n- Agent ergonomics 49: 35 MCP tools load together with no toolsets or read-only subset (5). The `DESIGN` output skips rendering and the `_and_wait` tools fold polling into one call, so 3 are added back (8). Templates and brands page with `page` and `limit` up to 100, and scheduled posts filter by date range and social account (14). Gateway errors carry `status` and a plain `message`, the schedule error page lists every validation message, and a missing ID returns the candidate IDs. A brand-limit error comes back as 401, which reads as an auth failure (14). No idempotency key. Destructive tools are named as such in their descriptions and audio deletion is refused while a post uses it. MCP annotations were not readable (6). 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).\n- Security \u0026 auth 30: The MCP server runs OAuth 2.1 with PKCE S256, dynamic client registration and a revocation endpoint, but with one broad `postnitro` scope. Keys are `pn-` API keys sent in a header, generated in the web app, with no scopes or rotation documented (20). No read-only key or mode. Destructive tools are flagged in descriptions, drafts and the `DESIGN` output allow review, and the confirmation the Claude page describes is the client's, not the server's (4). Tools fetch article URLs and X posts as source material and return job logs and captions, with no injection guidance found (3). Per-job processing logs come back from the status endpoint. No account audit log was found (3). No security.txt, disclosure route, bug bounty or certification was found (0). The Claude page says tokens are scoped to one workspace and that Anthropic reviews directory connectors, which is a vendor claim and not scored.\n- Payments \u0026 pricing 20: No x402, MPP or L402 (0). Credit prices are public without a login at $0.04 a credit, 1 per imported slide and 2 per AI-written slide, with plan prices of $15, $30 and $60 a month (20). The web app has a free plan with no card, but agent access is not free. The MCP page, the agents page and the OpenAPI document say write calls return 402 without a paid plan, and only the API subscription page describes 5 free credits a month, so no free API tier is counted (0). A person signs up in a browser and generates a key, or approves OAuth in the client. Dynamic client registration removes the key step but not the signup (0).\n- Task success: Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored.\n- Maintenance \u0026 community 65: CLI 1.5.0 on 7 October 2026, and `llms.txt` and the fact sheet are dated 7 October 2026 (30). CLI 1.3.0 on npm on 18 August, 1.4.1 on 29 September and 1.5.0 on 7 October, with Facebook and Pinterest scheduling added, and the Cursor plugin on 29 September (20). Closed service with a dated CLI changelog, support by email and in-app chat, and four public repositories with no open issues and few outside contributions to judge replies by (8). The server card names `ai.postnitro/mcp`, but the official MCP registry returned no PostNitro entry (0). The CLI publishes from a GitHub Actions workflow. The Embed SDK was last published on 15 July 2025 (7).\n- Transparency \u0026 trust 48: Closed service under Terms of Service last updated 20 May 2024 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, dated 5 October 2023, says carousel data is used to train PostNitro's AI model. The Claude connector page and the policy's own page description say content is never used for training. Deletion within 24 hours of a request is stated in both the terms and the policy. No DPA (8). 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).\n\nFix list for a coding agent, everything this grade says the listing lacks, the biggest gain first (22 items): https://www.anchorterminal.com/fixes/postnitro.md (JSON https://www.anchorterminal.com/fixes/postnitro.json)\n\n### What we couldn't check\n\n- unchecked: the MCP tool input schemas and annotations, which need a key or OAuth sign-in to list\n- unchecked: the Claude Connector Directory listing, which answered 403, and the ChatGPT plugin listing\n- unchecked: the Product Hunt launch on 13 October 2026. producthunt.com answered 403\n- Whether the API has a free tier. The subscription docs give 5 credits a month with no card, while the MCP page, agents page and OpenAPI document say write calls need a paid plan\n- Whether the 3-day trial on Creator+ needs a card and includes API credits\n- The MCP server version. The server card and docs say 1.0.0 and the health check reports 1.3.0\n- firstReleased is 11 August 2025, the n8n node's v0.1.0 against the Embed API, with the API docs archived on 13 August 2025. The MCP server is first seen on 15 April 2026 and the Embed SDK on npm on 18 March 2024\n- The fact sheet asks directories to treat it as authoritative where other sources disagree. Recorded as a fact and not acted on\n- Which training statement holds. The privacy policy body says carousel data trains PostNitro's AI model, and the page description and the Claude page say it never does. A dated policy update that settles it would remove the deduction\n\n### Sources\n\n- llms.txt, last updated 7 October 2026: \u003chttps://postnitro.ai/llms.txt\u003e (seen 2026-10-14)\n- llms-full.txt: \u003chttps://postnitro.ai/llms-full.txt\u003e (seen 2026-10-14)\n- fact sheet, last verified 7 October 2026: \u003chttps://postnitro.ai/facts\u003e (seen 2026-10-14)\n- agents page: \u003chttps://postnitro.ai/agents\u003e (seen 2026-10-14)\n- MCP server page: \u003chttps://postnitro.ai/mcp\u003e (seen 2026-10-14)\n- MCP server docs: \u003chttps://postnitro.ai/docs/embed/mcp.md\u003e (seen 2026-10-14)\n- docs index for agents: \u003chttps://postnitro.ai/docs/llms.txt\u003e (seen 2026-10-14)\n- Embed API OpenAPI 3.1 document: \u003chttps://postnitro.ai/.well-known/openapi/embed.json\u003e (seen 2026-10-14)\n- older OpenAPI document linked from llms.txt: \u003chttps://postnitro.ai/docs/openapi.json\u003e (seen 2026-10-14)\n- API catalogue (RFC 9727): \u003chttps://postnitro.ai/.well-known/api-catalog\u003e (seen 2026-10-14)\n- MCP server card: \u003chttps://postnitro.ai/.well-known/mcp/server-card.json\u003e (seen 2026-10-14)\n- MCP protected-resource metadata: \u003chttps://mcp.postnitro.ai/.well-known/oauth-protected-resource\u003e (seen 2026-10-14)\n- OAuth authorisation server metadata: \u003chttps://postnitro.ai/.well-known/oauth-authorization-server\u003e (seen 2026-10-14)\n- MCP health check, version 1.3.0: \u003chttps://mcp.postnitro.ai/health\u003e (seen 2026-10-14)\n- Embed API authentication: \u003chttps://postnitro.ai/docs/embed/api/authentication.md\u003e (seen 2026-10-14)\n- obtaining an API key: \u003chttps://postnitro.ai/docs/embed/obtaining-an-api-key.md\u003e (seen 2026-10-14)\n- Embed API subscription and credits: \u003chttps://postnitro.ai/docs/embed/api/subscription.md\u003e (seen 2026-10-14)\n- Schedule API errors: \u003chttps://postnitro.ai/docs/embed/api/schedule/errors.md\u003e (seen 2026-10-14)\n- Templates API: \u003chttps://postnitro.ai/docs/embed/api/templates.md\u003e (seen 2026-10-14)\n- Brands API: \u003chttps://postnitro.ai/docs/embed/api/brands.md\u003e (seen 2026-10-14)\n- plans and pricing: \u003chttps://postnitro.ai/plans\u003e (seen 2026-10-14)\n- Claude connector page: \u003chttps://postnitro.ai/claude\u003e (seen 2026-10-14)\n- Terms of Service, last updated 20 May 2024: \u003chttps://postnitro.ai/terms\u003e (seen 2026-10-14)\n- privacy policy, last updated 5 October 2023: \u003chttps://postnitro.ai/privacy\u003e (seen 2026-10-14)\n- robots.txt, all agents allowed: \u003chttps://postnitro.ai/robots.txt\u003e (seen 2026-10-14)\n- security.txt (404): \u003chttps://postnitro.ai/.well-known/security.txt\u003e (seen 2026-10-14)\n- CLI repository and changelog: \u003chttps://github.com/postnitro/postnitro-agent\u003e (seen 2026-10-14)\n- agent plugin repository: \u003chttps://github.com/postnitro/postnitro-agent-plugin\u003e (seen 2026-10-14)\n- agent skill repository, first commit 5 March 2026: \u003chttps://github.com/postnitro/postnitro-carousel-skill\u003e (seen 2026-10-14)\n- n8n node repository, v0.1.0 on 11 August 2025: \u003chttps://github.com/postnitro/n8n-nodes-postnitro-ai\u003e (seen 2026-10-14)\n- CLI on npm: \u003chttps://registry.npmjs.org/@postnitro/cli\u003e (seen 2026-10-14)\n- Embed SDK on npm: \u003chttps://registry.npmjs.org/@postnitro/embed\u003e (seen 2026-10-14)\n- official MCP registry search (no entry): \u003chttps://registry.modelcontextprotocol.io/v0/servers?search=postnitro\u003e (seen 2026-10-14)\n- blog index with dated MCP posts: \u003chttps://postnitro.ai/blog/llms-full.txt\u003e (seen 2026-10-14)\n- archived MCP page, 15 April 2026: \u003chttps://web.archive.org/web/20260415130450/https://postnitro.ai/mcp\u003e (seen 2026-10-14)\n- domain registration: \u003chttps://rdap.org/domain/postnitro.ai\u003e (seen 2026-10-14)\n\n## Who's behind it (provenance 63/100, checked 2026-10-14)\n\n| Check | Finding | Points |\n| --- | --- | --- |\n| Legal entity named | PostNitro Inc. | 20/20 |\n| Domain age | postnitro.ai, registered 2023-03-23 (3 years) | 7/15 |\n| Endpoint on the vendor's domain | mcp.postnitro.ai | 15/15 |\n| Terms of service | read, states 5 of the 7 things a reader expects, and has 1 clause that costs points | 6.3/10 |\n| Privacy policy | read, states 4 of the 8 things a reader expects, and has 1 clause that costs points | 5/10 |\n| Status page | not found | 0/10 |\n| Changelog | published | 10/10 |\n| security.txt | not found | 0/10 |\n\nThe Terms of Service, last updated 20 May 2024, cover the website, applications and APIs. They name no legal entity or governing law. The privacy policy names PostNitro Inc. as controller.\n\nThe privacy policy is dated 5 October 2023 and names UserMaven, CrispChat and an unnamed payment processor. No DPA or sub-processor list was found.\n\nNo status page was found. status.postnitro.ai did not connect and /status returns 404. The MCP server answers a health check at https://mcp.postnitro.ai/health, reporting version 1.3.0.\n\nThe changelog covers the CLI only. No changelog for the Embed API or MCP server was found.\n\npostnitro.ai/.well-known/security.txt and /security.txt return 404.\n\nRDAP gives a registration date of 2023-03-23 for postnitro.ai. The fact sheet says the company was founded in 2023.\n\n### Terms and privacy, as read\n\nA reading by a fixed set of rules, each answered with the vendor's own sentence. Not legal advice.\n\n**Terms of service** (https://postnitro.ai/terms), read 2026-10-14, dated 2024-05-20, states 5 of the 7 things a reader expects.\n\n- To know. Says the terms or the service can change without notice (costs points). \"PostNitro may modify, suspend, or discontinue any aspect of the Service at any time and without notice.\"\n- To know. Says access can be ended without notice or for any reason. \"We will attempt to notify you before termination but are not obligated to do so.\"\n- Gives the date it was last updated. Last updated 2024-05-20.\n- Not found in the text. Names the governing law or courts.\n- Not found in the text. Refers to a service level or uptime commitment.\n\n**Privacy policy** (https://postnitro.ai/privacy), read 2026-10-14, dated 2023-10-05, states 4 of the 8 things a reader expects.\n\n- To know. Says it may use customer content to train or improve models, and no opt-out was found (costs points). \"The data saved related to the carousel creation is used to train our AI model to produce even better, highly optimized data.\"\n- To know. Has not been updated for three years or more. \"Last Updated On: 5th October 2023\"\n- Gives the date it was last updated. Last updated 2023-10-05.\n- Says how long data is kept. For as long as needed, with no period named.\n- Not found in the text. Says who else receives the data.\n- Not found in the text. Says whether personal data is sold or shared for advertising.\n- Not found in the text. Says what rights people have over their data.\n- Gives a privacy contact. support@postnitro.ai.\n- Not found in the text. Says where data is transferred or stored.\n- Also in the text (2026-10-14). On a deletion request the account and all associated data are permanently deleted within 24 hours. \"Upon receiving your request, we will permanently delete your account and all associated data within 24 hours.\"\n\n## Live (updated 2026-10-15 00:24 UTC)\n\n- Right now: up, HTTP 401, 101 ms, checked 2026-10-15 00:24 UTC (mcp-initialize on `https://mcp.postnitro.ai/mcp`, asks for auth)\n- Uptime 24h 100.0% (31 probes) · 30 days 100.0% (31 probes) · p50 103 ms · p95 146 ms\n- github `postnitro/postnitro-agent` v1.5.0, released 2026-10-07\n- npm `@postnitro/cli` 1.5.0\n- npm `@postnitro/embed` 2.0.3\n- Tools: the endpoint asks for credentials before listing them (checked 2026-10-14 22:17 UTC)\n- Always current: https://www.anchorterminal.com/api/v1/live/postnitro.json\n\n## Probe metrics\n\nNot measured yet. Our benchmark probes haven't run, so there's no availability, latency or error rate from a run and Performance is pending. Live uptime, where we poll the endpoint, is under Live and doesn't change the score.\n\n## Prices\n\n| Item | Price | Unit | Note |\n| --- | --- | --- | --- |\n| Starter | $15 | per month (plan) | No scheduling or API access unless the Embed API add-on is bought |\n| Creator+ | $30 | per month (plan) | 200 API credits a month, scheduling to 10 social accounts |\n| Team+ | $60 | per month (plan) | 500 API credits a month, scheduling to 30 social accounts |\n| Embed API add-on | $10 | per month (plan) | 250 credits on top of a paid plan, scalable to 25,000 |\n| Embed API credit | $0.04 | per credit | 1 credit per imported slide, 2 per AI-written slide |\n\nAcross all listings: https://www.anchorterminal.com/prices/index.md\n\n## Strengths\n\n- OAuth 2.1 with dynamic client registration on the MCP server, so Claude and ChatGPT connect without a stored API key\n- Rate limits are published per key and endpoint, and 429 responses carry `Retry-After` and `X-RateLimit` headers\n- OpenAPI 3.1 document, `llms.txt`, `llms-full.txt` and a Markdown version of every page by content negotiation\n- Per-slide credit prices are public at $0.04 a credit, 1 per imported slide and 2 per AI-written slide\n- The one-call generate-and-schedule tool returns the `designId` when scheduling fails, so a retry does not spend credits again\n\n## Weaknesses\n\n- No status page, incident history, SLA, security.txt or certification was found\n- 35 MCP tools load at once, with no toolsets or read-only subset, and the OAuth flow has one broad `postnitro` scope\n- The privacy policy says carousel data trains PostNitro's AI model, while the Claude connector page says content is never used for training\n- No idempotency key on create or schedule calls, and the Embed API has no changelog or deprecation policy\n- Pages disagree on the API free tier and tool count. One docs index still says 12 MCP tools and four scheduling networks\n\n\n\n## Before you call it (notes for agents)\n\n1. Call `postnitro_set_defaults` once with a template, brand and AI preset, or every generate call must carry those IDs\n2. Pass the `designId` from `postnitro_get_output` to scheduling, never the `embedPostId`, or the call fails with `Design not found`\n3. For a LinkedIn PDF post, set `linkedinPostSettings.postType` to `document` with a 5 to 90 character `postTitle`\n4. Ask for the `DESIGN` output or save as `DRAFT` when a person must approve before anything publishes\n5. Keep to 5 create calls a minute per key and wait for `Retry-After` on a 429\n\n## Connect\n\nInstall:\n\n```bash\nnpm install -g @postnitro/cli\n```\n\nFirst request:\n\n```bash\ncurl https://embed-api.postnitro.ai/template -H \"embed-api-key: pn-your-api-key\"\n```\n\nClaude Code:\n\n```bash\nclaude mcp add --transport http postnitro https://mcp.postnitro.ai/mcp --header \"Authorization: Bearer pn-your-api-key-here\"\n```\n\nMCP client configuration:\n\n```json\n{\n  \"mcpServers\": {\n    \"postnitro\": {\n      \"headers\": {\n        \"Authorization\": \"Bearer pn-your-api-key-here\"\n      },\n      \"type\": \"http\",\n      \"url\": \"https://mcp.postnitro.ai/mcp\"\n    }\n  }\n}\n```\n\nThrough letme (picks today, calling later): https://letme.dev/postnitro. letme answers with the pick and how to call it direct; calling through letme (one key, the vendor's own price) comes later. How it works: https://www.anchorterminal.com/letme/index.md\n\n## Similar tools\n\nRanked by shared capabilities, then score. Same-category tools with no shared capability key are listed last.\n\n| Tool | Grade | Score | Rank | Shared capabilities | x402 | Markdown |\n| --- | --- | --- | --- | --- | --- | --- |\n| Canva REST APIs + MCP | B | 64.3 | 380 | design.templates, design.render, design.brand | no | https://www.anchorterminal.com/tools/canva.md |\n| Zernio (formerly Late) API + MCP | B | 67.5 | 265 | social.post, social.schedule | no | https://www.anchorterminal.com/tools/late.md |\n| Shotstack | B | 65.3 | 345 | design.templates, design.render | no | https://www.anchorterminal.com/tools/shotstack.md |\n| Buffer API + MCP | B | 62 | 476 | social.post, social.schedule | no | https://www.anchorterminal.com/tools/buffer.md |\n| Templated API + MCP | C | 61.2 | 506 | design.templates, design.render | no | https://www.anchorterminal.com/tools/templated.md |\n| Bannerbear API + MCP | C | 60.5 | 539 | design.templates, design.render | no | https://www.anchorterminal.com/tools/bannerbear.md |\n\n## Panel reviews (0)\n\nReviewed by the Anchor panel (https://www.anchorterminal.com/reviewers/index.md): .\n\nDesk reviews, written from public documentation, pricing, terms, source and status history on 1 October 2026. No calls made. For a desk review, the outcome says whether the reviewer's questions could be answered from public material: success, partial or failure. How reviews work: https://www.anchorterminal.com/reviews/how-it-works.md\n\n## Notable\n\n- Design jobs are asynchronous. A job returns an `embedPostId` to poll, and scheduling needs the separate `designId` from the output, or it fails with `Design not found` (source: \u003chttps://postnitro.ai/docs/embed/mcp\u003e)\n- Video output is the carousel's slides rendered as an MP4 of 5 to under 60 seconds with animated text and chosen audio. The vendor states it is not a generative video model (source: \u003chttps://postnitro.ai/agents\u003e)\n- Publishes natively to LinkedIn, Instagram, TikTok, Threads, Facebook Pages and Pinterest boards. X is a content source and export format only (source: \u003chttps://postnitro.ai/facts\u003e)\n- Rate limits per API key per minute are 5 for each create endpoint, 120 for status and output, and 30 shared by every other endpoint, with `Retry-After` on 429 (source: \u003chttps://postnitro.ai/.well-known/openapi/embed.json\u003e)\n- The free tier is described two ways. The API subscription docs give 5 free credits a month, while the MCP page, the agents page and the OpenAPI document say write calls need a paid plan (source: \u003chttps://postnitro.ai/docs/embed/api/subscription\u003e)\n- The privacy policy, dated 5 October 2023, says carousel data is used to train PostNitro's AI model. The Claude connector page and the policy's own page description say content is never used for training (source: \u003chttps://postnitro.ai/privacy\u003e)\n- The fact sheet asks directories to treat it as authoritative where other sources disagree. Recorded as a fact and not acted on (source: \u003chttps://postnitro.ai/facts\u003e)\n\n- #9 of 11 in Best programmatic image and design asset APIs for AI agents: https://www.anchorterminal.com/best/design-assets/index.md\n- All 55 assets comparisons: https://www.anchorterminal.com/compare/design-assets/index.md\n\n## Compare\n\n- [Adobe Photoshop API vs PostNitro](https://www.anchorterminal.com/compare/adobe-photoshop-api-vs-postnitro.md): E 43.9 vs E 44.5\n- [APITemplate.io vs PostNitro](https://www.anchorterminal.com/compare/apitemplate-io-vs-postnitro.md): D 46.6 vs E 44.5\n- [Bannerbear API + MCP vs PostNitro](https://www.anchorterminal.com/compare/bannerbear-vs-postnitro.md): C 60.5 vs E 44.5\n- [Canva REST APIs + MCP vs PostNitro](https://www.anchorterminal.com/compare/canva-vs-postnitro.md): B 64.3 vs E 44.5\n- [Creatomate vs PostNitro](https://www.anchorterminal.com/compare/creatomate-vs-postnitro.md): D 47.7 vs E 44.5\n- [Photoroom API vs PostNitro](https://www.anchorterminal.com/compare/photoroom-vs-postnitro.md): C 56 vs E 44.5\n- [Placid API + MCP vs PostNitro](https://www.anchorterminal.com/compare/placid-vs-postnitro.md): E 42.9 vs E 44.5\n- [PostNitro vs Shotstack](https://www.anchorterminal.com/compare/postnitro-vs-shotstack.md): E 44.5 vs B 65.3\n- [PostNitro vs Templated API + MCP](https://www.anchorterminal.com/compare/postnitro-vs-templated.md): E 44.5 vs C 61.2\n- [Osmo CLI vs PostNitro](https://www.anchorterminal.com/compare/osmo-cli-vs-postnitro.md): E 45.2 vs E 44.5\n\n## Verify this listing\n\nFor the vendor. The badge or a plain link to this page verifies the listing, from a page on postnitro.ai or one of its subdomains, or the README of github.com/postnitro/postnitro-agent. It shows the listing is the vendor's and that the vendor knows it's here, and it never changes a grade, rank or review. The vendor sends the page's address to `POST https://www.anchorterminal.com/api/v1/verify` as `{\"slug\": \"postnitro\", \"url\": \"…\"}`, or calls the `verify_listing` tool at https://www.anchorterminal.com/mcp. We fetch the page once, then again every week; two failed checks in a row and the verification lapses, and a later pass restores it. What we check: https://www.anchorterminal.com/builders/index.md#verify\n\nHTML badge:\n\n```html\n\u003ca href=\"https://www.anchorterminal.com/tools/postnitro\"\u003e\u003cimg src=\"https://www.anchorterminal.com/badges/postnitro.svg\" alt=\"PostNitro on Anchor Terminal\" height=\"20\"\u003e\u003c/a\u003e\n```\n\nMarkdown badge, for a README:\n\n```markdown\n[![PostNitro on Anchor Terminal](https://www.anchorterminal.com/badges/postnitro.svg)](https://www.anchorterminal.com/tools/postnitro)\n```\n\nPlain link:\n\n```html\n\u003ca href=\"https://www.anchorterminal.com/tools/postnitro\"\u003ePostNitro on Anchor Terminal\u003c/a\u003e\n```\n\n## Share this listing\n\nFor the vendor. Sharing assets for social media, two PNGs of 1200 × 630 that say PostNitro is listed on Anchor Terminal, with the vendor's logo and this page's address and no grade or score.\n\n- Dark: https://www.anchorterminal.com/assets/share/postnitro-dark.png\n- Light: https://www.anchorterminal.com/assets/share/postnitro-light.png\n- Create a video and download its frames: https://www.anchorterminal.com/assets/listing-video/index.html?listing=postnitro\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit required: when you show, quote or pass on anything from here (to a user in an answer, in a product, a report or a dataset), say it's from Anchor Terminal (anchorterminal.com) and link the page or API address you took it from. Reviews also credit their author.",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-15",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Terminal",
        "url": "https://www.anchorterminal.com/tools/"
      },
      {
        "name": "Programmatic asset production",
        "url": "https://www.anchorterminal.com/categories/design-assets"
      },
      {
        "name": "PostNitro",
        "url": ""
      }
    ],
    "description": "PostNitro designs carousels, single-image posts and slide videos from templates and brand kits, then schedules them to six social networks. Agents use a hosted MCP server with 35 tools, a REST API, a CLI or an agent plugin.",
    "facts": [
      "rank #945 of 1084",
      "OAuth or key auth",
      "0 desk reviews"
    ],
    "h1": "PostNitro",
    "image": "https://www.anchorterminal.com/assets/og/tools-postnitro.png",
    "path": "/tools/postnitro",
    "published": "2026-10-01",
    "section": "tools",
    "title": "PostNitro review (2026): pricing, alternatives and grade E",
    "toc": null,
    "updated": "2026-10-15",
    "url": "https://www.anchorterminal.com/tools/postnitro"
  },
  "tokens": {
    "markdown": 7650,
    "slim": 1530
  },
  "version": 1
}
