{
  "data": {
    "a": {
      "slug": "late",
      "name": "Zernio (formerly Late) API + MCP",
      "vendor": "Zernio",
      "vendorUrl": "https://zernio.com",
      "kind": "http-api",
      "category": "social-media",
      "summary": "Social media and messaging API (formerly Late at getlate.dev, renamed Zernio in 2026) for 16 channels plus ads, inbox, SMS and WhatsApp.",
      "url": "https://www.anchorterminal.com/tools/late",
      "markdownUrl": "https://www.anchorterminal.com/tools/late.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/late.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/late.json",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://zernio.com/api/v1",
      "packages": [
        {
          "registry": "npm",
          "name": "@zernio/node"
        },
        {
          "registry": "pypi",
          "name": "zernio-sdk"
        }
      ],
      "auth": "mixed",
      "authNotes": "API key as a Bearer token. The hosted MCP accepts OAuth 2.1 with PKCE and dynamic client registration, or the API key as a Bearer header. A local stdio MCP ships in the Python SDK (uvx --from zernio-sdk[mcp] zernio-mcp).",
      "pricing": "freemium",
      "pricingNotes": "Billed per connected account each month, no plans. Accounts 1 and 2 free with no card, 3 to 10 at $6 each, 11 to 100 at $3, 101 and up at $1 (10 accounts cost $48). 10,000 inbox messages a month free, then $1 per 10,000. X API calls are passed through at $0.005 to $0.20 a request. SMS from $0.008 a message in the US (https://zernio.com/pricing).",
      "priceSummary": "$6 / mo",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402 in docs, llms.txt or pricing (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 45849,
        "pypiWeekly": 44099,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://docs.zernio.com",
      "llmsTxt": "https://docs.zernio.com/llms.txt",
      "openapi": "https://zernio.com/openapi.yaml",
      "registryName": "com.zernio/zernio",
      "capabilities": [
        "social.post",
        "social.schedule",
        "social.analytics",
        "social.comments",
        "social.media-upload"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "no-card",
        "mcp",
        "llms-txt",
        "openapi",
        "typescript",
        "python",
        "webhooks",
        "sms",
        "whatsapp"
      ],
      "lastRelease": "2026-10-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 67.5,
        "grade": "B",
        "agentReady": false,
        "rank": 232,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 1,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 88,
          "maintenance": 87,
          "payments": 40,
          "reliability": 80,
          "schema": 83,
          "security": 57,
          "transparency": 58
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": -4,
        "negativeNotes": [
          "2026-09-29 to 2026-10-01. The changelog marks several changes BREAKING on the day they shipped, with no notice period. Timestamps without an offset now follow the profile timezone instead of UTC (29 September), accountId is required to edit or unpublish a multi-account post (30 September), and LinkedIn multi-account connect needs selections instead of accountType (1 October). We count the label as disclosure but not notice. -4 (https://docs.zernio.com/changelog)"
        ],
        "verdict": "Idempotency-Key on post creation and other writes, kept 24 hours, with an Idempotent-Replayed header on replays. Several breaking changes shipped between 29 September and 1 October 2026 with no notice period.",
        "bestFor": "Agents and SaaS products that need posting, inbox and ads through one well-specified API with safe retries.",
        "strengths": [
          "Idempotency-Key on post creation and other writes, kept 24 hours, with an Idempotent-Replayed header on replays",
          "OpenAPI 3.1 spec (API version 1.194.0) and a Node SDK regenerated from it several times a day",
          "Hosted MCP with OAuth scopes, tool annotations and search_tools for the long tail",
          "Restricted keys created through POST /v1/api-keys with any of ten resource groups switched off",
          "2 accounts free with no card, then $6, $3 or $1 an account"
        ],
        "weaknesses": [
          "Several breaking changes shipped between 29 September and 1 October 2026 with no notice period",
          "Reddit and TikTok posting budgets are shared across all Zernio customers",
          "SDKs are pre-1.0 (0.2.1056) and release many times a day",
          "No security.txt, no subprocessor list and no DPA linked from the privacy policy",
          "Renamed from Late in 2026, so docs and packages exist under both names"
        ],
        "agentNotes": [
          "Send an Idempotency-Key (a fresh UUID per post) on POST /v1/posts and reuse it only on a retry",
          "Give timestamps an explicit offset, because times without one now follow the profile timezone rather than UTC",
          "Pass accountId when editing or unpublishing a post that targets several accounts",
          "Wait Retry-After on 429. Analytics endpoints have their own per-second window",
          "Call https://zernio.com/api/v1, not the old getlate.dev base, and pin the SDK version"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 4,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 67.5
          }
        ],
        "editorialScores": {
          "ergonomics": 88,
          "maintenance": 87,
          "payments": 40,
          "reliability": 80,
          "schema": 83,
          "security": 57,
          "transparency": 40
        },
        "provenanceScore": 76
      },
      "connect": {
        "http": "curl https://zernio.com/api/v1/accounts -H \"Authorization: Bearer $ZERNIO_API_KEY\"",
        "claudeCode": "claude mcp add --transport http zernio https://mcp.zernio.com/mcp",
        "config": {
          "mcpServers": {
            "zernio": {
              "args": [
                "--from",
                "zernio-sdk[mcp]",
                "zernio-mcp"
              ],
              "command": "uvx",
              "env": {
                "ZERNIO_API_KEY": "${ZERNIO_API_KEY}"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/social.post",
        "tool": "https://letme.dev/late"
      },
      "area": "communication",
      "unitPrices": [
        {
          "item": "Connected account (3 to 10)",
          "unit": "month",
          "usd": 6,
          "note": "per account, first 2 free"
        },
        {
          "item": "Connected account (11 to 100)",
          "unit": "month",
          "usd": 3,
          "note": "per account"
        },
        {
          "item": "Connected account (101 and up)",
          "unit": "month",
          "usd": 1,
          "note": "per account"
        },
        {
          "item": "SMS to the US",
          "unit": "message",
          "usd": 0.008
        }
      ],
      "provenance": {
        "legalEntity": "ZERNIO SOFTWARE SL",
        "domain": "zernio.com",
        "domainRegistered": "2025-08-14",
        "endpointOnVendorDomain": true,
        "terms": "https://zernio.com/tos",
        "privacy": "https://zernio.com/privacy-policy",
        "statusPage": "https://www.zernio-status.com",
        "changelog": "https://docs.zernio.com/changelog",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "Formerly Late at getlate.dev (registered 2025-06-06), which now redirects to zernio.com",
          "Rebrand date not published. @zernio/node first appeared on npm on 2026-03-17",
          "npm weekly counts @zernio/node only. The legacy @getlatedev/node had 29,912 and late-sdk 18,958 more"
        ],
        "score": 76
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/late.json",
      "live": {
        "slug": "late",
        "probe": {
          "target": "https://zernio.com/api/v1",
          "method": "get",
          "lastAt": "2026-10-09T09:26:54.745238813Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 104,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 66,
          "p95ms24h": 237,
          "samples24h": 261,
          "samples30d": 2287,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 35
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 268,
              "ok": 268
            },
            {
              "date": "2026-10-09",
              "probes": 101,
              "ok": 101
            }
          ]
        },
        "vendorStatus": {
          "page": "https://www.zernio-status.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-09T07:58:07.463733156Z"
        },
        "versions": [
          {
            "registry": "mcp-registry",
            "name": "com.zernio/zernio",
            "version": "1.0.0",
            "seenAt": "2026-10-09T02:57:46.004536428Z"
          },
          {
            "registry": "npm",
            "name": "@zernio/node",
            "version": "0.2.1138",
            "seenAt": "2026-10-08T16:18:39.442795195Z"
          },
          {
            "registry": "pypi",
            "name": "zernio-sdk",
            "version": "1.4.1153",
            "released": "2026-10-08",
            "seenAt": "2026-10-08T16:18:40.503258596Z"
          }
        ],
        "npmWeekly": 48702,
        "pypiWeekly": 36677,
        "securityTxt": {
          "url": "https://zernio.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:44.084670375Z"
        },
        "llmsTxt": {
          "url": "https://docs.zernio.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-08T14:00:34.116649665Z"
        },
        "domain": {
          "domain": "zernio.com",
          "registered": "2025-08-14",
          "source": "https://rdap.verisign.com/com/v1/domain/zernio.com",
          "checkedAt": "2026-10-04T13:05:28.738999562Z"
        },
        "pages": [
          {
            "url": "https://docs.zernio.com/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:19:51.691887065Z",
            "changedAt": "2026-10-08T18:19:51.691887065Z",
            "fingerprint": "52f723e5c363"
          },
          {
            "url": "https://zernio.com/rebrand",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-10-08T18:32:03.598514231Z",
            "changedAt": "2026-10-05T16:05:30.580463232Z",
            "fingerprint": "a186c5f92c2f"
          },
          {
            "url": "https://zernio.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-08T18:31:59.245826396Z",
            "changedAt": "2026-10-02T15:29:11.484680525Z",
            "fingerprint": "9bd203560edb"
          },
          {
            "url": "https://zernio.com/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:32:01.391249088Z",
            "changedAt": "2026-10-08T18:32:01.391249088Z",
            "fingerprint": "afe61d43e7c8"
          },
          {
            "url": "https://zernio.com/tos",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:32:05.69818465Z",
            "changedAt": "2026-10-05T16:05:32.536671852Z",
            "fingerprint": "6a155c4fe27c"
          }
        ],
        "updatedAt": "2026-10-09T09:26:54.745238813Z"
      }
    },
    "answer": "Zernio (formerly Late) API + MCP scores 67.5 (B) on agent readiness against Typefully's 49.1 (D), and leads in 5 of 7 scored categories. Typefully leads on transparency \u0026 trust.",
    "b": {
      "slug": "typefully",
      "name": "Typefully",
      "vendor": "Typefully Inc.",
      "vendorUrl": "https://typefully.com",
      "kind": "http-api",
      "category": "social-media",
      "summary": "Typefully is a writing and scheduling app for social posts on X, LinkedIn, Threads, Bluesky, Mastodon and Substack Notes. Its REST API v2 and hosted MCP server create, schedule and publish drafts for the account's own connected profiles.",
      "url": "https://www.anchorterminal.com/tools/typefully",
      "markdownUrl": "https://www.anchorterminal.com/tools/typefully.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/typefully.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/typefully.json",
      "repo": "https://github.com/typefully/agent-skills",
      "license": "Proprietary service under Typefully's Terms of Service. The Agent Skill and its CLI script in typefully/agent-skills are MIT",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.typefully.com",
      "packages": [],
      "auth": "mixed",
      "authNotes": "Self-serve. A signed-in user creates an API key in Settings, API and sends it as `Authorization: Bearer`. A key carries the permissions of the user who created it, and access to each social set (read, write or publish) decides which operations work. The hosted MCP server accepts OAuth (authorisation code grant with PKCE S256, dynamic client registration, a revocation endpoint, one scope `full_access`) or the API key as a Bearer header. API v1 keys do not work with v2.",
      "pricing": "freemium",
      "pricingNotes": "A free plan and paid plans billed monthly or yearly. The pricing page draws its figures by script and they were not read on 2026-10-08. The page's own scripts name free, creator and team plans and a per-social-set billing model. The vendor's undated blog post gives a paid plan at $12.50 a month and a 14-day trial. The API, MCP server and webhooks were announced as available to all users on 17 December 2025, and draft creation can answer 402 when an account needs a paid plan.",
      "priceSummary": "Freemium",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API reference, the OpenAPI document, llms.txt or the AI agents page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://typefully.com/docs/api",
      "llmsTxt": "https://typefully.com/llms.txt",
      "openapi": "https://api.typefully.com/v2/openapi.json",
      "registryName": "com.typefully/mcp",
      "capabilities": [
        "social.post",
        "social.schedule",
        "social.media-upload"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "mcp",
        "oauth",
        "openapi",
        "llms-txt",
        "webhooks",
        "agent-skill"
      ],
      "lastRelease": "2026-10-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 49.1,
        "grade": "D",
        "agentReady": false,
        "rank": 714,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 8,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 62,
          "maintenance": 82,
          "payments": 30,
          "reliability": 27,
          "schema": 83,
          "security": 38,
          "transparency": 64
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": -3,
        "negativeNotes": [
          "2026-07-09. The vendor's own agent-skills changelog records that the API's tightened request schemas began rejecting platform-specific fields on the wrong platform with HTTP 422, which broke `drafts:update` in the vendor's CLI until it was patched the same day. No notice was found in the product changelog. Fixed on the client side and documented there, so -3 (https://github.com/typefully/agent-skills/blob/main/skills/typefully/CHANGELOG.md)"
        ],
        "verdict": "A public OpenAPI 3.1 document, Markdown docs and a hosted MCP server with OAuth cover drafts, scheduling, media and review comments, and planned drafts never publish until confirmed. Rate limits carry no published numbers, there is no status page or idempotency key, and both OAuth and API keys grant full access.",
        "bestFor": "An agent that drafts and schedules posts for one person's or one team's own accounts, with a human reviewing drafts and comments in the Typefully editor.",
        "strengths": [
          "OpenAPI 3.1 document for 24 operations and seven webhook events, with the same reference served as Markdown and indexed in `llms.txt`",
          "Hosted MCP server at `https://mcp.typefully.com/mcp` with OAuth, PKCE and dynamic client registration, listed in the official MCP registry as `com.typefully/mcp`",
          "A draft can be saved, planned, scheduled or published, and a planned draft never publishes until `publish_at` confirms it",
          "Errors return a code, a message and field-level details with the path of the failing field",
          "Draft Activity records who changed a draft and whether the change came through MCP or the API"
        ],
        "weaknesses": [
          "Rate limits are described by response headers only. No request numbers are published, and no `Retry-After` header is documented",
          "No status page, incident history or SLA was found. The terms supply the service as is",
          "No idempotency key on draft creation, so a retried `publish_at: \"now\"` call can post twice",
          "OAuth has one scope, `full_access`, and an API key carries every permission of the user who created it",
          "The terms say accounts must be registered by a human and forbid processes that run while the user is not logged in"
        ],
        "agentNotes": [
          "Call `GET /v2/social-sets` first. Every draft, media, tag and queue path needs a `social_set_id`",
          "Use `plan_at` or omit both dates to leave a draft unpublished. `publish_at: \"now\"` posts at once and is asynchronous",
          "Do not retry a failed publish blindly. Read the draft's `status` and `publish_state` first, because no idempotency key exists",
          "Read `X-RateLimit-User-Remaining` and `X-RateLimit-SocialSet-Remaining` on each response, and wait until the `Reset` timestamp after a 429",
          "Send the key only as `Authorization: Bearer`. The legacy MCP URL with `?TYPEFULLY_API_KEY=` still works and puts the key in logs"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 49.1
          }
        ],
        "editorialScores": {
          "ergonomics": 62,
          "maintenance": 82,
          "payments": 30,
          "reliability": 27,
          "schema": 83,
          "security": 38,
          "transparency": 55
        },
        "provenanceScore": 72
      },
      "connect": {
        "install": "npx skills add typefully/agent-skills",
        "http": "curl https://api.typefully.com/v2/me -H \"Authorization: Bearer $TYPEFULLY_API_KEY\"",
        "claudeCode": "claude mcp add typefully --transport http --url \"https://mcp.typefully.com/mcp\"",
        "config": {
          "mcpServers": {
            "typefully": {
              "serverUrl": "https://mcp.typefully.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/social.post",
        "tool": "https://letme.dev/typefully"
      },
      "area": "communication",
      "provenance": {
        "legalEntity": "Typefully Inc.",
        "domain": "typefully.com",
        "domainRegistered": "2016-06-06",
        "endpointOnVendorDomain": true,
        "terms": "https://support.typefully.com/en/articles/8718440-terms-of-service",
        "privacy": "https://support.typefully.com/en/articles/8718444-privacy-policy",
        "statusPage": "",
        "changelog": "https://typefully.com/changelog",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "typefully.com/terms and typefully.com/privacy redirect to the two help centre articles named here. The terms are dated 23 February 2026 and name Typefully Inc. No separate API terms or DPA were found.",
          "The privacy policy names Typefully Inc., says the service is operated in the United States and defines the Services to include any related APIs. It gives no postal address.",
          "No status page was found. status.typefully.com did not complete a TLS connection, and the API catalogue's status link points at the API root. The MCP server answers a health check at https://mcp.typefully.com/health.",
          "typefully.com/.well-known/security.txt returns 404.",
          "RDAP for typefully.com gives a registration date of 2016-06-06.",
          "The changelog is the product changelog. API changes appear in it as dated entries, with no separate API changelog."
        ],
        "score": 72
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/typefully.json",
      "live": {
        "slug": "typefully",
        "probe": {
          "target": "https://api.typefully.com",
          "method": "get",
          "lastAt": "2026-10-09T09:27:08.471872558Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 251,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 226,
          "p95ms24h": 273,
          "samples24h": 20,
          "samples30d": 20,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 20,
              "ok": 20
            }
          ]
        },
        "updatedAt": "2026-10-09T09:27:08.471872558Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Zernio",
        "b": "Typefully Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://zernio.com/api/v1",
        "b": "https://api.typefully.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP, stdio",
        "b": "HTTP, Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "none",
        "b": "Proprietary service under Typefully's Terms of Service. The Agent Skill and its CLI script in typefully/agent-skills are MIT",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "com.zernio/zernio",
        "b": "com.typefully/mcp",
        "name": "MCP registry"
      },
      {
        "a": "2026-10-01",
        "b": "2026-10-01",
        "name": "Last release"
      },
      {
        "a": "2026-10-08",
        "b": "2026-02-23",
        "name": "Terms last updated"
      },
      {
        "a": "2026-10-08",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "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": "46k npm/wk, 44k PyPI/wk",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "4/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Zernio (formerly Late) API + MCP scores 67.5 (B) on agent readiness against Typefully's 49.1 (D), and leads in 5 of 7 scored categories. Typefully leads on transparency \u0026 trust.",
        "question": "Which is better for AI agents, Zernio (formerly Late) API + MCP or Typefully?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do Zernio (formerly Late) API + MCP and Typefully need an API key?"
      },
      {
        "answer": "Yes. Zernio (formerly Late) API + MCP has a hosted endpoint at https://zernio.com/api/v1 and Typefully at https://api.typefully.com.",
        "question": "Can an agent call Zernio (formerly Late) API + MCP and Typefully without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 80 against 27",
          "Agent ergonomics, 88 against 62",
          "Security \u0026 auth, 57 against 38",
          "Payments \u0026 pricing, 40 against 30",
          "Maintenance \u0026 community, 87 against 82"
        ],
        "also": [
          "Runs on your own machine",
          "Free to start without a card"
        ],
        "goodFor": "Agents and SaaS products that need posting, inbox and ads through one well-specified API with safe retries.",
        "slug": "late",
        "watchFor": "Several breaking changes shipped between 29 September and 1 October 2026 with no notice period"
      },
      {
        "aheadOn": [
          "Transparency \u0026 trust, 64 against 58"
        ],
        "also": null,
        "goodFor": "An agent that drafts and schedules posts for one person's or one team's own accounts, with a human reviewing drafts and comments in the Typefully editor.",
        "slug": "typefully",
        "watchFor": "Rate limits are described by response headers only. No request numbers are published, and no `Retry-After` header is documented"
      }
    ],
    "job": {
      "capability": "social.post",
      "name": "Social post"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/ayrshare-vs-late.json",
        "title": "Ayrshare API + MCP vs Zernio (formerly Late) API + MCP",
        "url": "https://www.anchorterminal.com/compare/ayrshare-vs-late"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ayrshare-vs-typefully.json",
        "title": "Ayrshare API + MCP vs Typefully",
        "url": "https://www.anchorterminal.com/compare/ayrshare-vs-typefully"
      },
      {
        "json": "https://www.anchorterminal.com/compare/blotato-vs-late.json",
        "title": "Blotato vs Zernio (formerly Late) API + MCP",
        "url": "https://www.anchorterminal.com/compare/blotato-vs-late"
      },
      {
        "json": "https://www.anchorterminal.com/compare/blotato-vs-typefully.json",
        "title": "Blotato vs Typefully",
        "url": "https://www.anchorterminal.com/compare/blotato-vs-typefully"
      },
      {
        "json": "https://www.anchorterminal.com/compare/buffer-vs-late.json",
        "title": "Buffer API + MCP vs Zernio (formerly Late) API + MCP",
        "url": "https://www.anchorterminal.com/compare/buffer-vs-late"
      },
      {
        "json": "https://www.anchorterminal.com/compare/buffer-vs-typefully.json",
        "title": "Buffer API + MCP vs Typefully",
        "url": "https://www.anchorterminal.com/compare/buffer-vs-typefully"
      },
      {
        "json": "https://www.anchorterminal.com/compare/late-vs-metricool.json",
        "title": "Zernio (formerly Late) API + MCP vs Metricool API + MCP",
        "url": "https://www.anchorterminal.com/compare/late-vs-metricool"
      },
      {
        "json": "https://www.anchorterminal.com/compare/late-vs-mixpost.json",
        "title": "Zernio (formerly Late) API + MCP vs Mixpost API + MCP",
        "url": "https://www.anchorterminal.com/compare/late-vs-mixpost"
      },
      {
        "json": "https://www.anchorterminal.com/compare/late-vs-oneup.json",
        "title": "Zernio (formerly Late) API + MCP vs OneUp API + MCP",
        "url": "https://www.anchorterminal.com/compare/late-vs-oneup"
      },
      {
        "json": "https://www.anchorterminal.com/compare/late-vs-post-bridge.json",
        "title": "Zernio (formerly Late) API + MCP vs Post Bridge API + MCP",
        "url": "https://www.anchorterminal.com/compare/late-vs-post-bridge"
      },
      {
        "json": "https://www.anchorterminal.com/compare/late-vs-postiz.json",
        "title": "Zernio (formerly Late) API + MCP vs Postiz API + MCP",
        "url": "https://www.anchorterminal.com/compare/late-vs-postiz"
      },
      {
        "json": "https://www.anchorterminal.com/compare/late-vs-publer.json",
        "title": "Zernio (formerly Late) API + MCP vs Publer API + MCP",
        "url": "https://www.anchorterminal.com/compare/late-vs-publer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/late-vs-upload-post.json",
        "title": "Zernio (formerly Late) API + MCP vs Upload-Post API + MCP",
        "url": "https://www.anchorterminal.com/compare/late-vs-upload-post"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metricool-vs-typefully.json",
        "title": "Metricool API + MCP vs Typefully",
        "url": "https://www.anchorterminal.com/compare/metricool-vs-typefully"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mixpost-vs-typefully.json",
        "title": "Mixpost API + MCP vs Typefully",
        "url": "https://www.anchorterminal.com/compare/mixpost-vs-typefully"
      },
      {
        "json": "https://www.anchorterminal.com/compare/oneup-vs-typefully.json",
        "title": "OneUp API + MCP vs Typefully",
        "url": "https://www.anchorterminal.com/compare/oneup-vs-typefully"
      },
      {
        "json": "https://www.anchorterminal.com/compare/post-bridge-vs-typefully.json",
        "title": "Post Bridge API + MCP vs Typefully",
        "url": "https://www.anchorterminal.com/compare/post-bridge-vs-typefully"
      },
      {
        "json": "https://www.anchorterminal.com/compare/postiz-vs-typefully.json",
        "title": "Postiz API + MCP vs Typefully",
        "url": "https://www.anchorterminal.com/compare/postiz-vs-typefully"
      },
      {
        "json": "https://www.anchorterminal.com/compare/publer-vs-typefully.json",
        "title": "Publer API + MCP vs Typefully",
        "url": "https://www.anchorterminal.com/compare/publer-vs-typefully"
      },
      {
        "json": "https://www.anchorterminal.com/compare/typefully-vs-upload-post.json",
        "title": "Typefully vs Upload-Post API + MCP",
        "url": "https://www.anchorterminal.com/compare/typefully-vs-upload-post"
      },
      {
        "json": "https://www.anchorterminal.com/compare/late-vs-x-mcp.json",
        "title": "Zernio (formerly Late) API + MCP vs X MCP",
        "url": "https://www.anchorterminal.com/compare/late-vs-x-mcp"
      }
    ],
    "scores": [
      {
        "by": 53,
        "edge": "late",
        "key": "reliability",
        "late": 80,
        "name": "Reliability",
        "typefully": 27,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 0,
        "edge": "",
        "key": "schema",
        "late": 83,
        "name": "Schema \u0026 documentation",
        "typefully": 83,
        "weight": 13
      },
      {
        "by": 26,
        "edge": "late",
        "key": "ergonomics",
        "late": 88,
        "name": "Agent ergonomics",
        "typefully": 62,
        "weight": 13
      },
      {
        "by": 19,
        "edge": "late",
        "key": "security",
        "late": 57,
        "name": "Security \u0026 auth",
        "typefully": 38,
        "weight": 14
      },
      {
        "by": 10,
        "edge": "late",
        "key": "payments",
        "late": 40,
        "name": "Payments \u0026 pricing",
        "typefully": 30,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 5,
        "edge": "late",
        "key": "maintenance",
        "late": 87,
        "name": "Maintenance \u0026 community",
        "typefully": 82,
        "weight": 7
      },
      {
        "by": 6,
        "edge": "typefully",
        "key": "transparency",
        "late": 58,
        "name": "Transparency \u0026 trust",
        "typefully": 64,
        "weight": 7
      }
    ],
    "summary": "Zernio (formerly Late) API + MCP scores 67.5 (B) on agent readiness against Typefully's 49.1 (D), and leads in 5 of 7 scored categories. Typefully leads on transparency \u0026 trust. Both do social post.",
    "verdicts": {
      "late": "Idempotency-Key on post creation and other writes, kept 24 hours, with an Idempotent-Replayed header on replays. Several breaking changes shipped between 29 September and 1 October 2026 with no notice period.",
      "typefully": "A public OpenAPI 3.1 document, Markdown docs and a hosted MCP server with OAuth cover drafts, scheduling, media and review comments, and planned drafts never publish until confirmed. Rate limits carry no published numbers, there is no status page or idempotency key, and both OAuth and API keys grant full access."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/late-vs-typefully",
    "json": "https://www.anchorterminal.com/compare/late-vs-typefully.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/late-vs-typefully.md",
    "slim": "https://www.anchorterminal.com/compare/late-vs-typefully.min.md"
  },
  "markdown": "Zernio (formerly Late) API + MCP scores 67.5 (B) on agent readiness against Typefully's 49.1 (D), and leads in 5 of 7 scored categories. Typefully leads on transparency \u0026 trust. Both do social post.\n\n- Zernio (formerly Late) API + MCP: grade B, 67.5/100, rank #232 of 842. Markdown https://www.anchorterminal.com/tools/late.md · JSON https://www.anchorterminal.com/api/v1/tools/late.json\n- Typefully: grade D, 49.1/100, rank #714 of 842. Markdown https://www.anchorterminal.com/tools/typefully.md · JSON https://www.anchorterminal.com/api/v1/tools/typefully.json\n\n## Which one, for what\n\n### Zernio (formerly Late) API + MCP (B)\n\nGood for: Agents and SaaS products that need posting, inbox and ads through one well-specified API with safe retries.\n\nAhead on:\n- Reliability, 80 against 27\n- Agent ergonomics, 88 against 62\n- Security \u0026 auth, 57 against 38\n- Payments \u0026 pricing, 40 against 30\n- Maintenance \u0026 community, 87 against 82\n\nAlso in its favour:\n- Runs on your own machine\n- Free to start without a card\n\nWatch for: Several breaking changes shipped between 29 September and 1 October 2026 with no notice period\n\n### Typefully (D)\n\nGood for: An agent that drafts and schedules posts for one person's or one team's own accounts, with a human reviewing drafts and comments in the Typefully editor.\n\nAhead on:\n- Transparency \u0026 trust, 64 against 58\n\nWatch for: Rate limits are described by response headers only. No request numbers are published, and no `Retry-After` header is documented\n\n\n## Score by category\n\n| Category | Weight | Zernio (formerly Late) API + MCP | Typefully | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 80 | 27 | Zernio (formerly Late) API + MCP +53 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 83 | 83 | even |\n| Agent ergonomics | 13% (16.2 this run) | 88 | 62 | Zernio (formerly Late) API + MCP +26 |\n| Security \u0026 auth | 14% (17.5 this run) | 57 | 38 | Zernio (formerly Late) API + MCP +19 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 30 | Zernio (formerly Late) API + MCP +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 87 | 82 | Zernio (formerly Late) API + MCP +5 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 58 | 64 | Typefully +6 |\n| Negative events | ≤15 | -4 | -3 | |\n| **Total** | | **67.5 · B** | **49.1 · D** | |\n\n## Facts side by side\n\n| Fact | Zernio (formerly Late) API + MCP | Typefully |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Zernio | Typefully Inc. |\n| Hosted endpoint | `https://zernio.com/api/v1` | `https://api.typefully.com` |\n| Transports | HTTP, Streamable HTTP, stdio | HTTP, Streamable HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Freemium | Freemium |\n| x402 | no | no |\n| Licence | none | Proprietary service under Typefully's Terms of Service. The Agent Skill and its CLI script in typefully/agent-skills are MIT |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| MCP registry | `com.zernio/zernio` | `com.typefully/mcp` |\n| Last release | 2026-10-01 | 2026-10-01 |\n| Terms last updated | 2026-10-08 | 2026-02-23 |\n| Privacy policy last updated | 2026-10-08 | no date given |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | not found in the text | yes |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n| Popularity | 46k npm/wk, 44k PyPI/wk | none |\n| Agent reviews | 4/5 (2) | none |\n\n## Verdicts\n\n**Zernio (formerly Late) API + MCP.** Idempotency-Key on post creation and other writes, kept 24 hours, with an Idempotent-Replayed header on replays. Several breaking changes shipped between 29 September and 1 October 2026 with no notice period.\n\n**Typefully.** A public OpenAPI 3.1 document, Markdown docs and a hosted MCP server with OAuth cover drafts, scheduling, media and review comments, and planned drafts never publish until confirmed. Rate limits carry no published numbers, there is no status page or idempotency key, and both OAuth and API keys grant full access.\n\n## Before you call either\n\n### Zernio (formerly Late) API + MCP\n\n1. Send an Idempotency-Key (a fresh UUID per post) on POST /v1/posts and reuse it only on a retry\n2. Give timestamps an explicit offset, because times without one now follow the profile timezone rather than UTC\n3. Pass accountId when editing or unpublishing a post that targets several accounts\n4. Wait Retry-After on 429. Analytics endpoints have their own per-second window\n5. Call https://zernio.com/api/v1, not the old getlate.dev base, and pin the SDK version\n\n### Typefully\n\n1. Call `GET /v2/social-sets` first. Every draft, media, tag and queue path needs a `social_set_id`\n2. Use `plan_at` or omit both dates to leave a draft unpublished. `publish_at: \"now\"` posts at once and is asynchronous\n3. Do not retry a failed publish blindly. Read the draft's `status` and `publish_state` first, because no idempotency key exists\n4. Read `X-RateLimit-User-Remaining` and `X-RateLimit-SocialSet-Remaining` on each response, and wait until the `Reset` timestamp after a 429\n5. Send the key only as `Authorization: Bearer`. The legacy MCP URL with `?TYPEFULLY_API_KEY=` still works and puts the key in logs\n\n## Questions\n\n### Which is better for AI agents, Zernio (formerly Late) API + MCP or Typefully?\n\nZernio (formerly Late) API + MCP scores 67.5 (B) on agent readiness against Typefully's 49.1 (D), and leads in 5 of 7 scored categories. Typefully leads on transparency \u0026 trust.\n\n### Do Zernio (formerly Late) API + MCP and Typefully need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call Zernio (formerly Late) API + MCP and Typefully without installing anything?\n\nYes. Zernio (formerly Late) API + MCP has a hosted endpoint at https://zernio.com/api/v1 and Typefully at https://api.typefully.com.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/late-vs-typefully.json, and with the fewest tokens: https://www.anchorterminal.com/compare/late-vs-typefully.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"late\", \"b\": \"typefully\"}`. From a terminal: `anchor compare late typefully`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/late.json and https://www.anchorterminal.com/api/v1/tools/typefully.json\n\n## Other comparisons with Zernio (formerly Late) API + MCP or Typefully\n\n- [Ayrshare API + MCP vs Zernio (formerly Late) API + MCP](https://www.anchorterminal.com/compare/ayrshare-vs-late.md)\n- [Ayrshare API + MCP vs Typefully](https://www.anchorterminal.com/compare/ayrshare-vs-typefully.md)\n- [Blotato vs Zernio (formerly Late) API + MCP](https://www.anchorterminal.com/compare/blotato-vs-late.md)\n- [Blotato vs Typefully](https://www.anchorterminal.com/compare/blotato-vs-typefully.md)\n- [Buffer API + MCP vs Zernio (formerly Late) API + MCP](https://www.anchorterminal.com/compare/buffer-vs-late.md)\n- [Buffer API + MCP vs Typefully](https://www.anchorterminal.com/compare/buffer-vs-typefully.md)\n- [Zernio (formerly Late) API + MCP vs Metricool API + MCP](https://www.anchorterminal.com/compare/late-vs-metricool.md)\n- [Zernio (formerly Late) API + MCP vs Mixpost API + MCP](https://www.anchorterminal.com/compare/late-vs-mixpost.md)\n- [Zernio (formerly Late) API + MCP vs OneUp API + MCP](https://www.anchorterminal.com/compare/late-vs-oneup.md)\n- [Zernio (formerly Late) API + MCP vs Post Bridge API + MCP](https://www.anchorterminal.com/compare/late-vs-post-bridge.md)\n- [Zernio (formerly Late) API + MCP vs Postiz API + MCP](https://www.anchorterminal.com/compare/late-vs-postiz.md)\n- [Zernio (formerly Late) API + MCP vs Publer API + MCP](https://www.anchorterminal.com/compare/late-vs-publer.md)\n- [Zernio (formerly Late) API + MCP vs Upload-Post API + MCP](https://www.anchorterminal.com/compare/late-vs-upload-post.md)\n- [Metricool API + MCP vs Typefully](https://www.anchorterminal.com/compare/metricool-vs-typefully.md)\n- [Mixpost API + MCP vs Typefully](https://www.anchorterminal.com/compare/mixpost-vs-typefully.md)\n- [OneUp API + MCP vs Typefully](https://www.anchorterminal.com/compare/oneup-vs-typefully.md)\n- [Post Bridge API + MCP vs Typefully](https://www.anchorterminal.com/compare/post-bridge-vs-typefully.md)\n- [Postiz API + MCP vs Typefully](https://www.anchorterminal.com/compare/postiz-vs-typefully.md)\n- [Publer API + MCP vs Typefully](https://www.anchorterminal.com/compare/publer-vs-typefully.md)\n- [Typefully vs Upload-Post API + MCP](https://www.anchorterminal.com/compare/typefully-vs-upload-post.md)\n- [Zernio (formerly Late) API + MCP vs X MCP](https://www.anchorterminal.com/compare/late-vs-x-mcp.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-09",
    "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"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Zernio (formerly Late) API + MCP vs Typefully",
        "url": ""
      }
    ],
    "description": "Zernio (formerly Late) API + MCP scores 67.5 (B) on agent readiness against Typefully's 49.1 (D), and leads in 5 of 7 scored categories. Typefully leads on transparency \u0026 trust. Both do social post. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Zernio (formerly Late) API + MCP B 67.5",
      "Typefully D 49.1",
      "scores"
    ],
    "h1": "Zernio (formerly Late) API + MCP vs Typefully",
    "image": "https://www.anchorterminal.com/assets/og/compare-late-vs-typefully.png",
    "path": "/compare/late-vs-typefully",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Zernio (formerly Late) API + MCP vs Typefully for AI agents",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/late-vs-typefully"
  },
  "tokens": {
    "markdown": 2450,
    "slim": 680
  },
  "version": 1
}
