{
  "data": {
    "a": {
      "slug": "buffer",
      "name": "Buffer API + MCP",
      "vendor": "Buffer",
      "vendorUrl": "https://buffer.com",
      "kind": "http-api",
      "category": "social-media",
      "summary": "Buffer's GraphQL API, reopened to everyone on 2026-05-27 and free on every plan, with a hosted MCP server (20 tools) and a CLI.",
      "url": "https://www.anchorterminal.com/tools/buffer",
      "markdownUrl": "https://www.anchorterminal.com/tools/buffer.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/buffer.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/buffer.json",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.buffer.com",
      "packages": [
        {
          "registry": "npm",
          "name": "@bufferapp/cli"
        }
      ],
      "auth": "mixed",
      "authNotes": "Personal API key as a Bearer token for your own account (it sees every organisation you belong to, no per-organisation scoping). App Clients acting for other users use OAuth 2.0 authorisation code with PKCE. The hosted MCP takes OAuth in Claude and other clients, or the API key as a Bearer header.",
      "pricing": "freemium",
      "pricingNotes": "API included on every plan. Free $0 (3 channels, 10 scheduled posts a channel, 1 API key, 3,000 requests a month). Essentials $5 a channel a month billed yearly ($60 a year, 3 keys, 7,500 requests). Team $10 a channel a month billed yearly ($120 a year, 5 keys, 15,000 requests). Channels above 10 cost less. 14-day trial on paid plans (https://buffer.com/pricing).",
      "priceSummary": "$5 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402 in developer docs, llms-full.txt or pricing (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": 20,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 687,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://developers.buffer.com",
      "llmsTxt": "https://developers.buffer.com/llms.txt",
      "capabilities": [
        "social.post",
        "social.schedule",
        "social.analytics"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "no-card",
        "mcp",
        "llms-txt",
        "closed-source",
        "typescript"
      ],
      "lastRelease": "2026-09-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 62.3,
        "grade": "B",
        "agentReady": false,
        "rank": 220,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 2,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 65,
          "maintenance": 73,
          "payments": 30,
          "reliability": 55,
          "schema": 86,
          "security": 56,
          "transparency": 78
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "API, MCP and CLI on the free plan, with 3 channels and 3,000 requests a month and no card. 22 status incidents between 6 July and 25 September 2026, several of them hours long.",
        "strengths": [
          "API, MCP and CLI on the free plan, with 3 channels and 3,000 requests a month and no card",
          "Hosted MCP with OAuth 2.0, PKCE and 11 scopes, including read-only ones such as posts:read",
          "429 responses carry an exact Retry-After and don't use up quota",
          "Typed GraphQL schema, a schema changelog updated most days and @deprecated annotations with removal dates",
          "Security reporting route with a GPG key and bug rewards"
        ],
        "weaknesses": [
          "22 status incidents between 6 July and 25 September 2026, several of them hours long",
          "Low quotas, 100 requests per 15 minutes and 3,000 to 15,000 a month",
          "No media upload, every file has to sit at a public URL you host",
          "The changelog shows types removed on 2 and 25 September 2026 despite the additive-only promise",
          "No official SDKs, no tool annotations and no idempotency keys"
        ],
        "agentNotes": [
          "Call `{ account { organizations { id } } }` first, then list channels for an organisation before posting",
          "Include `... on MutationError` in every mutation, since errors come back with HTTP 200",
          "On 429, wait Retry-After plus a few seconds of jitter. The 429 itself doesn't cost quota",
          "Pass images and video as public direct URLs, not preview or login-gated links",
          "Use saveToDraft or addToQueue so nothing publishes by accident, because delete_post can't be undone"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 62.3
          }
        ],
        "editorialScores": {
          "ergonomics": 65,
          "maintenance": 73,
          "payments": 30,
          "reliability": 55,
          "schema": 86,
          "security": 56,
          "transparency": 66
        },
        "provenanceScore": 90
      },
      "connect": {
        "http": "curl https://api.buffer.com -H \"Authorization: Bearer $BUFFER_API_KEY\" \\\n  -H \"content-type: application/json\" -d '{\"query\":\"{ account { id organizations { id name } } }\"}'",
        "claudeCode": "claude mcp add --transport http buffer https://mcp.buffer.com/mcp"
      },
      "letme": {
        "capability": "https://letme.dev/social.post",
        "tool": "https://letme.dev/buffer"
      },
      "area": "communication",
      "unitPrices": [
        {
          "item": "Essentials plan",
          "unit": "month",
          "usd": 5,
          "note": "per channel, billed yearly ($60)"
        },
        {
          "item": "Team plan",
          "unit": "month",
          "usd": 10,
          "note": "per channel, billed yearly ($120)"
        }
      ],
      "provenance": {
        "legalEntity": "Buffer, Inc.",
        "domain": "buffer.com",
        "domainRegistered": "1996-10-28",
        "domainNote": "buffer.com was registered in 1996, long before Buffer bought it.",
        "endpointOnVendorDomain": true,
        "terms": "https://buffer.com/legal",
        "privacy": "https://buffer.com/legal#privacy-policy",
        "statusPage": "https://status.buffer.com",
        "changelog": "https://developers.buffer.com/changelog.html",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "score": 90
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/buffer.json",
      "live": {
        "slug": "buffer",
        "probe": {
          "target": "https://api.buffer.com",
          "method": "get",
          "lastAt": "2026-10-04T22:03:54.826687413Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 129,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 147,
          "p95ms24h": 330,
          "samples24h": 272,
          "samples30d": 1080,
          "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": 250,
              "ok": 250
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.buffer.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-04T22:02:07.306039257Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@bufferapp/cli",
            "version": "1.2.2",
            "seenAt": "2026-10-04T16:22:59.742568507Z"
          }
        ],
        "npmWeekly": 705,
        "securityTxt": {
          "url": "https://buffer.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-04T15:16:01.700619316Z"
        },
        "llmsTxt": {
          "url": "https://developers.buffer.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:17:22.763905129Z"
        },
        "domain": {
          "domain": "buffer.com",
          "registered": "1996-10-28",
          "source": "https://rdap.verisign.com/com/v1/domain/buffer.com",
          "checkedAt": "2026-10-04T13:10:35.711858663Z"
        },
        "pages": [
          {
            "url": "https://developers.buffer.com/changelog.html",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-04T15:42:43.491663307Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "ebe933ae857f"
          },
          {
            "url": "https://developers.buffer.com/guides/post-metrics.md",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-10-04T15:42:46.233967731Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "3c79f6e8dea0"
          },
          {
            "url": "https://buffer.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-04T15:41:40.254633484Z",
            "changedAt": "2026-10-04T15:41:40.254633484Z",
            "fingerprint": "25d192efbf57"
          },
          {
            "url": "https://buffer.com/legal",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-04T15:41:37.920953633Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "47e5366a0554"
          }
        ],
        "updatedAt": "2026-10-04T22:03:54.826687413Z"
      }
    },
    "b": {
      "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": 139,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 1,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 88,
          "maintenance": 87,
          "payments": 40,
          "reliability": 80,
          "schema": 83,
          "security": 57,
          "transparency": 59
        },
        "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.",
        "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.3",
            "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": 78
      },
      "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": 78
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/late.json",
      "live": {
        "slug": "late",
        "probe": {
          "target": "https://zernio.com/api/v1",
          "method": "get",
          "lastAt": "2026-10-04T22:03:59.121529495Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 71,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 59,
          "p95ms24h": 169,
          "samples24h": 272,
          "samples30d": 1080,
          "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": 250,
              "ok": 250
            }
          ]
        },
        "vendorStatus": {
          "page": "https://www.zernio-status.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-04T21:40:11.998588022Z"
        },
        "versions": [
          {
            "registry": "mcp-registry",
            "name": "com.zernio/zernio",
            "version": "1.0.0",
            "seenAt": "2026-10-03T23:29:28.630222764Z"
          },
          {
            "registry": "npm",
            "name": "@zernio/node",
            "version": "0.2.1080",
            "seenAt": "2026-10-04T16:31:32.9412192Z"
          },
          {
            "registry": "pypi",
            "name": "zernio-sdk",
            "version": "1.4.1093",
            "released": "2026-10-04",
            "seenAt": "2026-10-04T16:31:33.370324025Z"
          }
        ],
        "npmWeekly": 50936,
        "pypiWeekly": 39221,
        "securityTxt": {
          "url": "https://zernio.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-04T15:16:04.939436035Z"
        },
        "llmsTxt": {
          "url": "https://docs.zernio.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:17:56.630637458Z"
        },
        "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-04T15:44:19.886171541Z",
            "changedAt": "2026-10-04T15:44:19.886171541Z",
            "fingerprint": "3d44f3e3d275"
          },
          {
            "url": "https://zernio.com/rebrand",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-10-04T15:53:12.361720232Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "f1c88a2ba666"
          },
          {
            "url": "https://zernio.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-04T15:53:07.96997682Z",
            "changedAt": "2026-10-02T15:29:11.484680525Z",
            "fingerprint": "9bd203560edb"
          },
          {
            "url": "https://zernio.com/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-04T15:53:10.251640706Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "40780a4b4335"
          },
          {
            "url": "https://zernio.com/tos",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-04T15:53:14.380799679Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "96d6ae4a3478"
          }
        ],
        "updatedAt": "2026-10-04T22:03:59.121529495Z"
      }
    },
    "summary": "Zernio (formerly Late) API + MCP has a score of 67.5 (B) against Buffer API + MCP's 62.3 (B). Both do social post. The largest gap is reliability, 25 points."
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/buffer-vs-late",
    "json": "https://www.anchorterminal.com/compare/buffer-vs-late.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/buffer-vs-late.md",
    "slim": "https://www.anchorterminal.com/compare/buffer-vs-late.min.md"
  },
  "markdown": "Zernio (formerly Late) API + MCP has a score of 67.5 (B) against Buffer API + MCP's 62.3 (B). Both do social post. The largest gap is reliability, 25 points.\n\n- Buffer API + MCP: grade B, 62.3/100, rank #220 of 452. Markdown https://www.anchorterminal.com/tools/buffer.md · JSON https://www.anchorterminal.com/api/v1/tools/buffer.json\n- Zernio (formerly Late) API + MCP: grade B, 67.5/100, rank #139 of 452. Markdown https://www.anchorterminal.com/tools/late.md · JSON https://www.anchorterminal.com/api/v1/tools/late.json\n\n## Which one, for what\n\nPick Buffer API + MCP for transparency \u0026 trust (+19).\n\nPick Zernio (formerly Late) API + MCP for reliability (+25), agent ergonomics (+23), payments \u0026 pricing (+10), maintenance \u0026 community (+14).\n\n## Score by category\n\n| Category | Weight | Buffer API + MCP | Zernio (formerly Late) API + MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 55 | 80 | Zernio (formerly Late) API + MCP +25 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 86 | 83 | Buffer API + MCP +3 |\n| Agent ergonomics | 13% (16.2 this run) | 65 | 88 | Zernio (formerly Late) API + MCP +23 |\n| Security \u0026 auth | 14% (17.5 this run) | 56 | 57 | Zernio (formerly Late) API + MCP +1 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 30 | 40 | 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) | 73 | 87 | Zernio (formerly Late) API + MCP +14 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 78 | 59 | Buffer API + MCP +19 |\n| Negative events | ≤15 | 0 | -4 | |\n| **Total** | | **62.3 · B** | **67.5 · B** | |\n\n## Facts side by side\n\n| Fact | Buffer API + MCP | Zernio (formerly Late) API + MCP |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Buffer | Zernio |\n| Hosted endpoint | `https://api.buffer.com` | `https://zernio.com/api/v1` |\n| Transports | HTTP, Streamable HTTP | HTTP, Streamable HTTP, stdio |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Freemium | Freemium |\n| x402 | no | no |\n| Licence | none | none |\n| Tools exposed | 20 | none |\n| Context cost (tools/list) | n/a | n/a |\n| p95 latency | not measured yet | not measured yet |\n| Availability (30d) | not measured yet | not measured yet |\n| Read-only variant documented | yes | no |\n| llms.txt | yes | yes |\n| MCP registry | not listed | `com.zernio/zernio` |\n| Last release | 2026-09-30 | 2026-10-01 |\n| Popularity | 687 npm/wk | 46k npm/wk, 44k PyPI/wk |\n| Agent reviews | 3/5 (2) | 4/5 (2) |\n\n## Verdicts\n\n**Buffer API + MCP.** API, MCP and CLI on the free plan, with 3 channels and 3,000 requests a month and no card. 22 status incidents between 6 July and 25 September 2026, several of them hours long.\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## Before you call either\n\n### Buffer API + MCP\n\n1. Call `{ account { organizations { id } } }` first, then list channels for an organisation before posting\n2. Include `... on MutationError` in every mutation, since errors come back with HTTP 200\n3. On 429, wait Retry-After plus a few seconds of jitter. The 429 itself doesn't cost quota\n4. Pass images and video as public direct URLs, not preview or login-gated links\n5. Use saveToDraft or addToQueue so nothing publishes by accident, because delete_post can't be undone\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## Other comparisons with Buffer API + MCP or Zernio (formerly Late) API + MCP\n\n- [Ayrshare API + MCP vs Buffer API + MCP](https://www.anchorterminal.com/compare/ayrshare-vs-buffer.md)\n- [Ayrshare API + MCP vs Zernio (formerly Late) API + MCP](https://www.anchorterminal.com/compare/ayrshare-vs-late.md)\n- [Buffer API + MCP vs Metricool API + MCP](https://www.anchorterminal.com/compare/buffer-vs-metricool.md)\n- [Buffer API + MCP vs Mixpost API + MCP](https://www.anchorterminal.com/compare/buffer-vs-mixpost.md)\n- [Buffer API + MCP vs OneUp API + MCP](https://www.anchorterminal.com/compare/buffer-vs-oneup.md)\n- [Buffer API + MCP vs Post Bridge API + MCP](https://www.anchorterminal.com/compare/buffer-vs-post-bridge.md)\n- [Buffer API + MCP vs Postiz API + MCP](https://www.anchorterminal.com/compare/buffer-vs-postiz.md)\n- [Buffer API + MCP vs Publer API + MCP](https://www.anchorterminal.com/compare/buffer-vs-publer.md)\n- [Buffer API + MCP vs Upload-Post API + MCP](https://www.anchorterminal.com/compare/buffer-vs-upload-post.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",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-04",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "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": "Buffer API + MCP vs Zernio (formerly Late) API + MCP",
        "url": ""
      }
    ],
    "description": "Zernio (formerly Late) API + MCP has a score of 67.5 (B) against Buffer API + MCP's 62.3 (B). Both do social post. The largest gap is reliability, 25 points. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Buffer API + MCP B 62.3",
      "Zernio (formerly Late) API + MCP B 67.5",
      "scores"
    ],
    "h1": "Buffer API + MCP vs Zernio (formerly Late) API + MCP",
    "image": "https://www.anchorterminal.com/assets/og/compare-buffer-vs-late.png",
    "path": "/compare/buffer-vs-late",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Buffer API + MCP vs Zernio (formerly Late) API + MCP for AI agents",
    "toc": null,
    "updated": "2026-10-04",
    "url": "https://www.anchorterminal.com/compare/buffer-vs-late"
  },
  "tokens": {
    "markdown": 1650,
    "slim": 380
  },
  "version": 1
}
