{
 "slug": "buffer",
 "name": "Buffer",
 "url": "https://buffer.com",
 "domain": "buffer.com",
 "category": "social-media-scheduling",
 "category_name": "Social media scheduling",
 "tested_at": "2026-10-06",
 "run": "20261006T061808Z",
 "draft": false,
 "reviewed": true,
 "owner_verified": null,
 "origin": "editorial",
 "history": [
  {
   "run": "20261001T192951Z",
   "date": "2026-10-01",
   "level": 1,
   "engine": {
    "runner": "omp",
    "model": null,
    "driver": null,
    "signed": true,
    "inbox": [
     "agentdrives.com"
    ],
    "robots": "start"
   },
   "drives": 3
  },
  {
   "run": "20261006T061808Z",
   "date": "2026-10-06",
   "level": 1,
   "engine": {
    "runner": "omp",
    "model": "claude-opus-5-5",
    "driver": 2,
    "signed": true,
    "inbox": [
     "agentdrives.com"
    ],
    "robots": "start"
   }
  }
 ],
 "level": 1,
 "level_name": "Needs a person",
 "level_selfhost": null,
 "entry": "closed",
 "door": {
  "passed": 0,
  "tries": 3,
  "self_start": false
 },
 "badges": [],
 "stages": [
  {
   "key": "in",
   "label": "Access",
   "state": "no",
   "text": "Can't get in on its own",
   "at": "signup"
  },
  {
   "key": "work",
   "label": "Use",
   "state": "unreached",
   "text": "Work not measured"
  },
  {
   "key": "pay",
   "label": "Pay",
   "state": "unreached",
   "text": "Payment not reached",
   "value": "unreached",
   "route": "card_checkout"
  },
  {
   "key": "leave",
   "label": "Leave",
   "state": "unreached",
   "text": "Leaving not reached",
   "how": "no-account"
  }
 ],
 "outcomes": [
  {
   "key": "find",
   "label": "Find",
   "state": "part",
   "text": "Some docs agents can read: llms.txt and an MCP server",
   "have": [
    "llms_txt",
    "mcp"
   ]
  },
  {
   "key": "access",
   "label": "Access",
   "state": "no",
   "text": "Can't get in on its own",
   "at": "signup",
   "stage": "in"
  },
  {
   "key": "use",
   "label": "Use",
   "state": "unreached",
   "text": "Work not measured",
   "stage": "work"
  },
  {
   "key": "pay",
   "label": "Pay",
   "state": "unreached",
   "text": "Payment not reached",
   "value": "unreached",
   "route": "card_checkout",
   "stage": "pay"
  },
  {
   "key": "leave",
   "label": "Leave",
   "state": "unreached",
   "text": "Leaving not reached",
   "how": "no-account",
   "stage": "leave"
  }
 ],
 "access": [
  {
   "key": "person",
   "label": "A person sets it up",
   "routes": [],
   "minutes": null,
   "core": null
  }
 ],
 "minutes": null,
 "next": {
  "to": 2,
  "text": "Next: let an agent sign up on its own"
 },
 "stop": "signup",
 "core": "0/10",
 "scores": {
  "coverage": null,
  "reliability": null,
  "resilience": null,
  "setup": 75,
  "surface_coverage": null,
  "docs_accuracy": null,
  "docs_completeness": null
 },
 "parts": {
  "holds_up": null,
  "docs_match": null,
  "setup": 75,
  "security": null,
  "standards": [
   {
    "standard": "MCP client registration",
    "state": "behind",
    "behind": null,
    "value": "dcr"
   }
  ]
 },
 "reliability_method": null,
 "resilience": null,
 "stress": [],
 "surface_audit": null,
 "coverage_core": null,
 "after_wall": null,
 "coverage_source": "computed",
 "driver": {
  "version": 2,
  "model": "claude-opus-5-5",
  "profile": "full",
  "assisted": false,
  "handoff": null,
  "prompt_sha": "f3d0adeeb256",
  "kb_version": "2+overlay-9e43028a2c",
  "identity": null
 },
 "methodology": 15,
 "rules_date": "2026-10-15",
 "engine": {
  "runner": "omp",
  "model": "claude-opus-5-5",
  "driver": 2,
  "signed": true,
  "inbox": [
   "agentdrives.com"
  ],
  "robots": "start"
 },
 "same_level_drives": 4,
 "drives": 4,
 "works_assisted": null,
 "freshness": "fresh",
 "nothing_to_pay": false,
 "core_gated": false,
 "profiles": {},
 "agent_check": {
  "rung": "signup",
  "vendor": "hCaptcha",
  "visible": true,
  "type": "challenge",
  "human": null,
  "how": "Check the Web Bot Auth signature on the sign-up request (the agent's key directory is public) and skip hCaptcha for signed agents; or offer a documented sign-up API with email verification.",
  "signed": true
 },
 "agent_pass": null,
 "who_gets_in": {
  "server": {
   "state": "captcha"
  },
  "signed": {
   "state": "page",
   "kind": "signup",
   "at": "2026-10-12"
  },
  "browser": {
   "state": "captcha",
   "measured": false
  },
  "our_key": "pending",
  "robots": null,
  "tip": false
 },
 "ladder": {
  "docs": {
   "status": "headless",
   "note": "developers.buffer.com/llms.txt, guides as .md URLs, CLI, MCP and Agent Setup guides."
  },
  "signup": {
   "status": "human",
   "note": "Web-only sign-up at auth.buffer.com; clicking Sign Up shows a visible hCaptcha puzzle. No API/CLI sign-up route."
  },
  "verify": {
   "status": "",
   "note": "No account was created, so no verification mail.",
   "reached": false
  },
  "credentials": {
   "status": "",
   "note": "API keys only in the web app (Settings > API); OAuth PKCE/DCR needs a logged-in human to consent; no device flow.",
   "via": "",
   "reached": false
  },
  "first_call": {
   "status": "",
   "note": "No credential; unauthenticated GraphQL and MCP calls return 401.",
   "reached": false
  },
  "first_action": {
   "status": "",
   "note": "No credential.",
   "reached": false
  },
  "pay": {
   "status": "",
   "grade": "P1",
   "rails": [
    "card in the web app (Visa, Mastercard, Amex, JCB, Discover, Diners per pricing FAQ)"
   ],
   "rail_ids": [
    "card"
   ],
   "first_party": false,
   "rail_scope": "none",
   "trial_path": "no-card trial",
   "note": "No 402, no x402/MPP, no billing API. Pricing FAQ: card only, payment details entered under Billing Method in the account; 14-day trial without a card per the FAQ (not confirmed). The account needed to buy sits behind an hCaptcha puzzle a human must solve; checkout not seen.",
   "reached": false
  },
  "cancel": {
   "status": "",
   "grade": "n/a",
   "note": "No plan started; no cancel or billing operation in the API or CLI.",
   "reached": false
  },
  "delete": {
   "status": "",
   "note": "No account to delete; no account-deletion mutation in the API schema or CLI.",
   "account": false,
   "reached": false
  }
 },
 "routes": [],
 "checkout": null,
 "docs": null,
 "claims": null,
 "pay_options": {
  "checked": "2026-10-06",
  "source": "drive",
  "options": [
   {
    "id": "card",
    "name": "Card checkout",
    "kind": "checkout",
    "first_party": false,
    "lead": false,
    "networks": [],
    "testnet": false
   }
  ],
  "agentic": [],
  "paid": null,
  "exercised": null,
  "detected_grade": null,
  "trial": {
   "no_card": true,
   "card_required": null,
   "free_plan": null
  },
  "owner_fixes": [
   {
    "title": "Accept x402 or MPP on your API",
    "how": "Answer an unpaid call with 402 and a payment challenge, so an agent pays per call or buys credits without an account or a card."
   },
   {
    "title": "List your plans on Stripe Projects",
    "how": "Agents buy a plan with `stripe projects add`, paid with a token under a spend cap the owner sets (projects.dev)."
   }
  ]
 },
 "surfaces": {
  "api": true,
  "openapi": false,
  "cli": true,
  "sdk": false,
  "mcp": "official",
  "llms_txt": true,
  "webhooks": false,
  "sandbox": false
 },
 "surface_notes": {
  "api": "GraphQL, 20 queries / 22 mutations, introspection open",
  "mcp": "official remote server, Bearer key or OAuth",
  "cli": "@bufferapp/cli 2.0.1, 42 commands, skill files, --dry-run",
  "llms_txt": "developers.buffer.com/llms.txt; pricing.md for agents"
 },
 "can_do": [
  "Read Buffer's API docs, guides and pricing as Markdown",
  "Introspect the GraphQL schema without an account",
  "Install the Buffer CLI and validate post payloads with --dry-run without an account"
 ],
 "cannot_do": [
  {
   "what": "Create a Buffer account",
   "why": "Sign-up form shows a visible hCaptcha puzzle"
  },
  {
   "what": "Get an API key or OAuth token",
   "why": "Keys are created only in the logged-in web app; OAuth needs a human consent"
  },
  {
   "what": "Schedule, edit or delete posts, capture ideas, read metrics",
   "why": "No account or credential"
  },
  {
   "what": "Delete the account headless",
   "why": "No account-deletion operation in API or CLI"
  }
 ],
 "blockers": [
  "hCaptcha image puzzle on the web sign-up form (auth.buffer.com/signup)"
 ],
 "tips_for_owner": [
  "Let verified agents sign up",
  "Issue API keys without the web UI",
  "Support CIMD client registration",
  "Answer server/discover with supported versions",
  "Add account delete and billing to API",
  "Document 401 status for auth errors"
 ],
 "tips_for_agents": [
  "Have a human create the account and an API key at publish.buffer.com/settings/api; then use the CLI (BUFFER_API_KEY) or MCP at https://mcp.buffer.com/mcp with a Bearer key.",
  "GraphQL introspection works without a key: use `buffer schema describe posts create` and --dry-run to build payloads first.",
  "Free plan API: 1 key, 100 req/15 min, 250/day, 3,000/30 days (docs).",
  "Auth errors are HTTP 401 despite the docs saying 200."
 ],
 "selfhost": null,
 "summary": "Buffer offers a GraphQL API, an official MCP server, a CLI with agent skill files and Markdown docs, but an agent cannot get an account: the web-only sign-up shows an hCaptcha picture puzzle. Without an account there is no API key, so no capability could be driven.",
 "wall": "hCaptcha puzzle on the sign-up form",
 "plan_scope": "",
 "robots_stop": null,
 "robots": null,
 "plain": {
  "summary": "Buffer is a social media scheduling tool with good docs, an API and an official agent server, but an agent cannot get past sign-up: the sign-up page shows a picture puzzle (hCaptcha) that only a human can solve. Without an account there is no key, so nothing beyond reading documentation could be tried.",
  "can_do": [
   "Read Buffer's help guides and pricing page without an account",
   "Look at the shape of Buffer's API (what actions exist) without an account",
   "Install Buffer's command-line tool and check post formats offline without an account"
  ],
  "cannot_do": [
   {
    "what": "Create a Buffer account",
    "why": "Sign-up shows a picture puzzle only a person can solve"
   },
   {
    "what": "Get a key to use the API or chat assistant",
    "why": "Keys are only made inside the account, which needs the puzzle solved first"
   },
   {
    "what": "Schedule posts, read stats, manage ideas or comments",
    "why": "None of these work without an account"
   },
   {
    "what": "Buy a plan or cancel one, or delete the account",
    "why": "No account was ever created to buy or delete"
   }
  ]
 },
 "plan_gated": [],
 "reply": null,
 "capabilities": [
  {
   "id": "cap-01",
   "group": "Publish",
   "capability": "Schedule a post to a channel",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "mutation createPost",
    "mcp": "create_post",
    "cli": "buffer (Buffer CLI, per developers.buffer.com/guides/cli)",
    "ui": "Publish > Composer"
   },
   "check": "GET post via list_posts/get_post shows status scheduled with a dueAt timestamp",
   "source": "https://buffer.com/publish; https://developers.buffer.com/guides/posts-and-scheduling.md; https://developers.buffer.com/guides/integrations/mcp.md"
  },
  {
   "id": "cap-02",
   "group": "Publish",
   "capability": "Add post to the next available queue slot",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "mutation createPost(mode: addToQueue)",
    "mcp": "create_post (mode addToQueue)",
    "cli": null,
    "ui": "Publish > Queue"
   },
   "check": "get_post/list_posts shows status scheduled with dueAt set to the channel's next posting slot",
   "source": "https://developers.buffer.com/guides/posts-and-scheduling.md"
  },
  {
   "id": "cap-03",
   "group": "Publish",
   "capability": "Publish immediately / share next",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "mutation createPost(mode: shareNow|shareNext)",
    "mcp": "create_post (mode shareNow/shareNext)",
    "cli": null,
    "ui": "Publish > Composer 'Share Now'"
   },
   "check": "get_post status transitions to sent shortly after the call",
   "source": "https://developers.buffer.com/guides/integrations/mcp.md"
  },
  {
   "id": "cap-04",
   "group": "Publish",
   "capability": "Edit a scheduled or draft post",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "mutation editPost (per CLI/MCP; see rest-migration)",
    "mcp": "edit_post",
    "cli": null,
    "ui": "Publish > Queue/Calendar > edit post"
   },
   "check": "get_post shows updated text/dueAt/assets after the call",
   "source": "https://developers.buffer.com/guides/integrations/mcp.md"
  },
  {
   "id": "cap-05",
   "group": "Publish",
   "capability": "Delete a post",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "mutation deletePost",
    "mcp": "delete_post",
    "cli": null,
    "ui": "Publish > Queue > delete"
   },
   "check": "get_post/list_posts no longer returns the post id (404/absent)",
   "source": "https://developers.buffer.com/guides/integrations/mcp.md"
  },
  {
   "id": "cap-08",
   "group": "Publish",
   "capability": "Attach media (image/video/document) to a post",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "mutation createPost(assets: [...])",
    "mcp": "create_post (assets param)",
    "cli": null,
    "ui": "Publish > Composer media upload"
   },
   "check": "get_post assets array lists the attached image/video/document with its mimeType",
   "source": "https://developers.buffer.com/examples/create-image-post.md; https://developers.buffer.com/examples/create-video-post.md"
  },
  {
   "id": "cap-09",
   "group": "Analytics",
   "capability": "View post and channel performance insights",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "query post metrics / Post.metrics",
    "mcp": "get_aggregated_post_metrics; get_post(includeMetrics)",
    "cli": null,
    "ui": "Insights"
   },
   "check": "get_post(includeMetrics:true) or get_aggregated_post_metrics returns reactions/impressions/reach numbers for sent posts",
   "source": "https://buffer.com/insights; https://developers.buffer.com/guides/post-metrics.md"
  },
  {
   "id": "cap-10",
   "group": "Community",
   "capability": "Reply to comments across connected channels",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Community inbox"
   },
   "check": "Comment thread in Community shows the reply posted and (per docs) visible natively on the platform",
   "source": "https://buffer.com/community"
  },
  {
   "id": "cap-11",
   "group": "Create",
   "capability": "Capture a content idea",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": "mutation createIdea",
    "mcp": "create_idea",
    "cli": null,
    "ui": "Create > Ideas board"
   },
   "check": "list_ideas returns the new idea with its title/text/target services",
   "source": "https://developers.buffer.com/guides/ideas.md; https://developers.buffer.com/guides/integrations/mcp.md"
  },
  {
   "id": "cap-12",
   "group": "Connect",
   "capability": "Connect a social channel/account",
   "weight": "core",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Settings > Channel connections (OAuth per platform)"
   },
   "check": "list_channels / get_channel returns the new channel with connected status",
   "source": "https://buffer.com (channel connect tiles); https://buffer.com/instagram"
  },
  {
   "id": "cap-06",
   "group": "Publish",
   "capability": "Save a post as draft",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "mutation createPost(saveToDraft: true)",
    "mcp": "create_post (saveToDraft)",
    "cli": null,
    "ui": "Publish > Create > Save to Drafts"
   },
   "check": "get_post shows status draft",
   "source": "https://developers.buffer.com/guides/integrations/mcp.md"
  },
  {
   "id": "cap-07",
   "group": "Publish",
   "capability": "Create a threaded post (X, Bluesky, Threads, Mastodon)",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "mutation createPost (metadata.<service>.thread)",
    "mcp": "create_post (metadata thread array)",
    "cli": null,
    "ui": "Publish > Composer thread builder"
   },
   "check": "get_post metadata.<service>.thread array shows each thread item in order, and after sending the platform shows a chained reply thread",
   "source": "https://developers.buffer.com/examples/create-threaded-post.md"
  },
  {
   "id": "cap-13",
   "group": "AI",
   "capability": "Generate or rewrite post content with AI Assistant",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Create > AI Assistant"
   },
   "check": "Composer text field is populated with AI-generated/rewritten copy after invoking the assistant",
   "source": "https://buffer.com/ai-assistant"
  },
  {
   "id": "cap-15",
   "group": "Organize",
   "capability": "Tag posts and ideas",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "mutation createTag/updateTag/deleteTag",
    "mcp": null,
    "cli": null,
    "ui": "Create/Publish tag picker"
   },
   "check": "get_tag returns the tag; list_posts filtered by tagIds includes the tagged post",
   "source": "https://developers.buffer.com/guides/tags.md; https://developers.buffer.com/examples/create-tag.md"
  },
  {
   "id": "cap-16",
   "group": "Organize",
   "capability": "Organize ideas into board columns/groups",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "query ideaGroups",
    "mcp": "list_idea_groups",
    "cli": null,
    "ui": "Create > Ideas board columns"
   },
   "check": "list_idea_groups shows the column and list_ideas shows an idea filed under its id",
   "source": "https://developers.buffer.com/guides/integrations/mcp.md"
  },
  {
   "id": "cap-17",
   "group": "Organize",
   "capability": "Create and reuse post templates",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": "mutation createPostTemplate/updatePostTemplate",
    "mcp": "create_post_template; update_post_template; list_post_templates; get_post_template",
    "cli": null,
    "ui": "Create > Templates"
   },
   "check": "get_post_template returns the saved body/title, and the template appears in list_post_templates",
   "source": "https://developers.buffer.com/guides/integrations/mcp.md"
  },
  {
   "id": "cap-18",
   "group": "Publish",
   "capability": "Schedule a first comment on a post",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": "createPost metadata.<service>.firstComment",
    "mcp": "create_post (metadata firstComment)",
    "cli": null,
    "ui": "Publish > Composer first comment field"
   },
   "check": "get_post metadata shows firstComment text and, after sending, the first comment appears on the live Instagram/LinkedIn post",
   "source": "https://buffer.com/pricing (Essentials: First comment scheduling)"
  },
  {
   "id": "cap-19",
   "group": "Publish",
   "capability": "Duplicate an existing post",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Publish > Queue/Calendar > Duplicate"
   },
   "check": "A new post with the same content/media appears in the queue after duplicating",
   "source": "https://buffer.com/pricing (Publishing: Duplicate posts)"
  },
  {
   "id": "cap-20",
   "group": "Publish",
   "capability": "View visual content calendar",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Publish > Calendar"
   },
   "check": "Calendar view renders scheduled posts on their due dates",
   "source": "https://buffer.com/pricing (Publishing: Visual content calendar)"
  },
  {
   "id": "cap-21",
   "group": "Community",
   "capability": "Save and use canned replies for comments",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Community > Saved replies"
   },
   "check": "A saved reply inserted into a comment response matches the stored template text",
   "source": "https://buffer.com/community"
  },
  {
   "id": "cap-22",
   "group": "Community",
   "capability": "Get AI-suggested comment replies",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Community > AI replies"
   },
   "check": "Comment composer shows an AI-generated reply suggestion (rephrase/shorten/expand) before posting",
   "source": "https://buffer.com/community; https://buffer.com/pricing (Community: AI replies)"
  },
  {
   "id": "cap-23",
   "group": "Community",
   "capability": "Turn a comment reply into a new post",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Community > comment > Create post from reply"
   },
   "check": "Composer opens prefilled with the reply's text, and saving creates a new post in the queue/draft",
   "source": "https://buffer.com/community"
  },
  {
   "id": "cap-24",
   "group": "Collaborate",
   "capability": "Submit post for team approval and approve/reject",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Collaborate > Approvals"
   },
   "check": "get_post/list_posts shows status needs_approval, then scheduled/sent after an approver approves it",
   "source": "https://buffer.com/collaborate; https://developers.buffer.com/guides/integrations/mcp.md (status needs_approval)"
  },
  {
   "id": "cap-25",
   "group": "Collaborate",
   "capability": "Leave notes/comments on a draft post",
   "weight": "secondary",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Collaborate > post notes"
   },
   "check": "Note text appears attached to the post and is visible to other team members viewing the same post",
   "source": "https://buffer.com/collaborate (Notes feature, FAQ)"
  },
  {
   "id": "cap-26",
   "group": "Start Page",
   "capability": "Build and customize a Start Page link-in-bio",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Start Page editor"
   },
   "check": "Published Start Page URL renders the configured links/theme/blocks",
   "source": "https://buffer.com/start-page"
  },
  {
   "id": "cap-27",
   "group": "Start Page",
   "capability": "View Start Page click/traffic analytics",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Start Page > Analytics"
   },
   "check": "Analytics panel shows page views and per-link click counts after visits occur",
   "source": "https://buffer.com/start-page"
  },
  {
   "id": "cap-28",
   "group": "Publish",
   "capability": "Shorten links in posts",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Publish > Composer link shortening setting"
   },
   "check": "Published post text contains a shortened link instead of the original long URL",
   "source": "https://buffer.com/pricing (Publishing: Link shortening)"
  },
  {
   "id": "cap-29",
   "group": "Mobile",
   "capability": "Manage queue and post from the mobile app",
   "weight": "secondary",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Buffer iOS/Android app"
   },
   "check": "A post created/edited in the mobile app appears identically in the web Publish queue",
   "source": "https://buffer.com/mobile"
  },
  {
   "id": "cap-30",
   "group": "Admin",
   "capability": "Invite team members and set channel permissions",
   "weight": "peripheral",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Settings > Manage Your Team"
   },
   "check": "Invited member appears in team list with the assigned channel access level",
   "source": "https://buffer.com/collaborate (Invite your team, FAQ)"
  },
  {
   "id": "cap-31",
   "group": "Admin",
   "capability": "Generate an API key and manage app clients",
   "weight": "peripheral",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": "buffer auth (per CLI guide)",
    "ui": "Settings > API (publish.buffer.com/settings/api)"
   },
   "check": "A newly created API key authenticates a GraphQL request to api.buffer.com and appears in the account's key list",
   "source": "https://developers.buffer.com/guides/authentication.md; https://developers.buffer.com/guides/getting-started.md"
  },
  {
   "id": "cap-32",
   "group": "Admin",
   "capability": "Create branded analytics reports",
   "weight": "peripheral",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Insights > Reports (branded, Team plan)"
   },
   "check": "Generated report file/export carries the account's branding and selected channel metrics",
   "source": "https://buffer.com/pricing (Analytics: Branded reports)"
  },
  {
   "id": "cap-33",
   "group": "Admin",
   "capability": "Set custom UTM parameters for post links",
   "weight": "peripheral",
   "plan": "paid",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Settings/Composer > UTM settings"
   },
   "check": "Published post link contains the configured UTM query parameters",
   "source": "https://buffer.com/pricing (Analytics: Custom UTM parameters)"
  },
  {
   "id": "cap-34",
   "group": "Admin",
   "capability": "Enable two-factor authentication",
   "weight": "peripheral",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Settings > Security"
   },
   "check": "Login subsequently prompts for a 2FA code after password entry",
   "source": "https://buffer.com/pricing (Collaboration: Two-factor authentication)"
  },
  {
   "id": "cap-35",
   "group": "Admin",
   "capability": "Connect third-party app integrations (Canva, Zapier, Dropbox, etc.)",
   "weight": "peripheral",
   "plan": "free",
   "surfaces": {
    "api": null,
    "mcp": null,
    "cli": null,
    "ui": "Settings > Integrations"
   },
   "check": "Integration shows as connected in Settings and media/content can be pulled from or sent to it",
   "source": "https://buffer.com/pricing (Integrations table); https://developers.buffer.com/guides/integrations.md"
  }
 ],
 "attempts": [
  {
   "t": "00:59",
   "cap": "discovery",
   "capability": "agent discovery",
   "route": "api",
   "documented": true,
   "verified": true,
   "task": "llms.txt",
   "result": "done",
   "evidence": "developers.buffer.com/llms.txt 200 text/plain 10703 bytes; buffer.com/llms.txt 301 -> developers llms.txt; guides as .md URLs"
  },
  {
   "t": "00:59",
   "cap": "discovery",
   "capability": "agent discovery",
   "route": "api",
   "documented": true,
   "verified": true,
   "task": "MCP server/discover 2026-07-28 unauthenticated",
   "result": "partial",
   "evidence": "POST https://mcp.buffer.com/mcp -> 401 {'error':'Authorization header is required'}; WWW-Authenticate: Bearer realm=\"buffer-mcp\", resource_metadata=\"https://mcp.buffer.com/.well-known/oauth-protected-resource/mcp\"",
   "notes": "auth-required; retry with key later"
  },
  {
   "t": "00:59",
   "cap": "discovery",
   "capability": "agent discovery",
   "route": "api",
   "documented": true,
   "verified": true,
   "task": "MCP PRM + AS metadata",
   "result": "done",
   "evidence": "PRM 200 JSON at /.well-known/oauth-protected-resource(/mcp), AS https://auth.buffer.com; AS metadata: registration_endpoint /reg (DCR), no client_id_metadata_document_supported, no device_authorization_endpoint, PKCE S256, resource_parameter_supported true; OIDC config authorization_response_iss_parameter_supported true"
  },
  {
   "t": "00:59",
   "cap": "discovery",
   "capability": "agent discovery",
   "route": "api",
   "documented": true,
   "verified": true,
   "task": "cards and well-knowns",
   "result": "failed",
   "evidence": "mcp.buffer.com/mcp/server-card 404; buffer.com/.well-known/ai-catalog.json, mcp/server-card.json, agent-card.json, agent.json, ucp, /auth.md, /SKILL.md all 404 HTML"
  },
  {
   "t": "00:59",
   "cap": "discovery",
   "capability": "agent discovery",
   "route": "api",
   "documented": true,
   "verified": true,
   "task": "aipref / markdown negotiation",
   "result": "partial",
   "evidence": "robots.txt has no Content-Usage / Content-signal lines; no Content-Usage header on buffer.com; Accept: text/markdown on developers.buffer.com/guides/introduction returns text/html (no vary: accept); .md URLs work (guides/*.md)"
  },
  {
   "t": "01:50",
   "cap": "docs",
   "capability": "find docs",
   "task": "Find API docs",
   "route": "api",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "developers.buffer.com llms.txt + .md guides, GraphQL API at api.buffer.com, MCP guide, CLI guide (@bufferapp/cli)",
   "quality": {
    "docs_match": "match"
   }
  },
  {
   "t": "01:50",
   "cap": "signup",
   "capability": "sign up",
   "task": "Create a Buffer account with the agent's inbox",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "buffer.com/signup -> 301 auth.buffer.com/signup/ (headless GET lands on /error?kind=expired: SPA flow). In browser: filled email+password, clicked Sign Up -> hCaptcha image puzzle 'Select the material that is soft and flexible' (visible_challenge true, screenshot browser/shots/002.png).",
   "notes": "No API/CLI/MCP sign-up route documented; docs say 'sign up at buffer.com'. HCaptcha visible puzzle; not solved by us.",
   "quality": {
    "error_legibility": "n/a",
    "recoverable": "no"
   }
  },
  {
   "t": "03:40",
   "cap": "discovery",
   "capability": "agent discovery",
   "task": "MCP with invalid bearer / legacy initialize",
   "route": "mcp",
   "documented": true,
   "result": "partial",
   "verified": true,
   "evidence": "server/discover with Bearer invalid -> 401 {'error':'Unauthorized: Invalid or expired token','httpCode':401}; initialize without auth -> 401 'Authorization header is required'. Body is plain JSON, not JSON-RPC; protocol version cannot be read without a key."
  },
  {
   "t": "03:40",
   "cap": "discovery",
   "capability": "agent discovery",
   "task": "GraphQL API and CLI without account",
   "route": "api",
   "documented": true,
   "result": "done",
   "verified": true,
   "evidence": "POST api.buffer.com without auth -> 401 {'errors':[{'message':'An authentication JWT or Access Token is required','extensions':{'code':'UNAUTHENTICATED'}}]}; introspection allowed unauthenticated: 20 queries, 22 mutations (no account/channel/API-key/billing mutations, no updateIdea/deleteIdea). @bufferapp/cli 2.0.1 installs via npm, 42 commands, 'buffer context' skill topics, --dry-run validates locally; 'buffer account' -> AUTH_ERROR code 4 with clear fix.",
   "notes": "Docs error-handling guide says 'GraphQL always returns HTTP 200' incl. auth errors; live auth errors are HTTP 401",
   "quality": {
    "error_legibility": "clear",
    "docs_match": "drift"
   }
  },
  {
   "t": "03:40",
   "cap": "verify",
   "capability": "verify email",
   "task": "Verify sign-up email",
   "route": "none",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "No account created: sign-up stopped at hCaptcha; no mail expected"
  },
  {
   "t": "03:40",
   "cap": "login",
   "capability": "login",
   "task": "Log in",
   "route": "none",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "No account: sign-up blocked by hCaptcha. API keys are created only in the web app Settings > API; OAuth (auth.buffer.com, PKCE, DCR at /reg) needs a logged-in user to consent; no device flow, no agent registration."
  },
  {
   "t": "03:40",
   "cap": "credentials",
   "capability": "credentials",
   "task": "Create API key at publish.buffer.com/settings/api",
   "route": "none",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "No account: sign-up blocked by hCaptcha. API keys are created only in the web app Settings > API; OAuth (auth.buffer.com, PKCE, DCR at /reg) needs a logged-in user to consent; no device flow, no agent registration."
  },
  {
   "t": "03:40",
   "cap": "first_call",
   "capability": "The first call",
   "task": "GraphQL account query / MCP get_account",
   "route": "none",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "No account: sign-up blocked by hCaptcha. API keys are created only in the web app Settings > API; OAuth (auth.buffer.com, PKCE, DCR at /reg) needs a logged-in user to consent; no device flow, no agent registration."
  },
  {
   "t": "03:40",
   "cap": "first_action",
   "capability": "The first action",
   "task": "Create a post",
   "route": "none",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "No account: sign-up blocked by hCaptcha. API keys are created only in the web app Settings > API; OAuth (auth.buffer.com, PKCE, DCR at /reg) needs a logged-in user to consent; no device flow, no agent registration."
  },
  {
   "t": "03:40",
   "cap": "pay",
   "capability": "buy a plan",
   "task": "Find an agent purchase route",
   "route": "api",
   "documented": true,
   "result": "failed",
   "verified": true,
   "evidence": "x402./mpp./agents.buffer.com no answer (000); API unauthenticated -> 401 not 402; no /.well-known/ucp, /auth.md; Buffer not in x402 Bazaar or mpp.dev/api/services; no billing mutation in schema; buffer.com/pricing.md (text/markdown, 'machine-readable pricing for AI agents'): Free $0 (3 channels, API 1 key 3,000 req/month), Essentials from $6/channel, Team from $12/channel; pricing FAQ: card only (Visa, Mastercard, Amex, JCB, Discover, Diners), 14-day free trial, payment details entered under 'Billing Method' in the account. Checkout itself not seen (no account)."
  },
  {
   "t": "03:40",
   "cap": "cancel",
   "capability": "cancel plan",
   "task": "Cancel plan",
   "route": "none",
   "documented": true,
   "result": "skipped",
   "verified": false,
   "evidence": "No plan started (no account). No billing/cancel mutation in the GraphQL schema."
  },
  {
   "t": "03:40",
   "cap": "delete",
   "capability": "delete account",
   "task": "Delete account",
   "route": "none",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "No account to delete. No account-deletion mutation in the GraphQL schema (introspection) or CLI (42 commands)."
  },
  {
   "t": "03:44",
   "cap": "cap-01",
   "capability": "Schedule a post to a channel",
   "task": "Schedule a post to a channel in account",
   "route": "api",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: mutation createPost"
  },
  {
   "t": "03:44",
   "cap": "cap-02",
   "capability": "Add post to the next available queue slot",
   "task": "Add post to the next available queue slot in account",
   "route": "api",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: mutation createPost(mode: addToQueue)"
  },
  {
   "t": "03:44",
   "cap": "cap-03",
   "capability": "Publish immediately / share next",
   "task": "Publish immediately / share next in account",
   "route": "api",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: mutation createPost(mode: shareNow|shareNext)"
  },
  {
   "t": "03:44",
   "cap": "cap-04",
   "capability": "Edit a scheduled or draft post",
   "task": "Edit a scheduled or draft post in account",
   "route": "api",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: mutation editPost (per CLI/MCP; see rest-migration)"
  },
  {
   "t": "03:44",
   "cap": "cap-05",
   "capability": "Delete a post",
   "task": "Delete a post in account",
   "route": "api",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: mutation deletePost"
  },
  {
   "t": "03:44",
   "cap": "cap-08",
   "capability": "Attach media (image/video/document) to a post",
   "task": "Attach media (image/video/document) to a post in account",
   "route": "api",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: mutation createPost(assets: [...])"
  },
  {
   "t": "03:44",
   "cap": "cap-09",
   "capability": "View post and channel performance insights",
   "task": "View post and channel performance insights in account",
   "route": "api",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: query post metrics / Post.metrics"
  },
  {
   "t": "03:44",
   "cap": "cap-10",
   "capability": "Reply to comments across connected channels",
   "task": "Reply to comments across connected channels in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Community inbox"
  },
  {
   "t": "03:44",
   "cap": "cap-11",
   "capability": "Capture a content idea",
   "task": "Capture a content idea in account",
   "route": "api",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: mutation createIdea"
  },
  {
   "t": "03:44",
   "cap": "cap-12",
   "capability": "Connect a social channel/account",
   "task": "Connect a social channel/account in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Settings > Channel connections (OAuth per platform)"
  },
  {
   "t": "03:44",
   "cap": "cap-06",
   "capability": "Save a post as draft",
   "task": "Save a post as draft in account",
   "route": "api",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: mutation createPost(saveToDraft: true)"
  },
  {
   "t": "03:44",
   "cap": "cap-07",
   "capability": "Create a threaded post (X, Bluesky, Threads, Mastodon)",
   "task": "Create a threaded post (X, Bluesky, Threads, Mastodon) in account",
   "route": "api",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: mutation createPost (metadata.<service>.thread)"
  },
  {
   "t": "03:44",
   "cap": "cap-13",
   "capability": "Generate or rewrite post content with AI Assistant",
   "task": "Generate or rewrite post content with AI Assistant in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Create > AI Assistant"
  },
  {
   "t": "03:44",
   "cap": "cap-15",
   "capability": "Tag posts and ideas",
   "task": "Tag posts and ideas in account",
   "route": "api",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: mutation createTag/updateTag/deleteTag"
  },
  {
   "t": "03:44",
   "cap": "cap-16",
   "capability": "Organize ideas into board columns/groups",
   "task": "Organize ideas into board columns/groups in account",
   "route": "api",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: query ideaGroups"
  },
  {
   "t": "03:44",
   "cap": "cap-17",
   "capability": "Create and reuse post templates",
   "task": "Create and reuse post templates in account",
   "route": "api",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: mutation createPostTemplate/updatePostTemplate"
  },
  {
   "t": "03:44",
   "cap": "cap-18",
   "capability": "Schedule a first comment on a post",
   "task": "Schedule a first comment on a post in account",
   "route": "api",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: createPost metadata.<service>.firstComment"
  },
  {
   "t": "03:44",
   "cap": "cap-19",
   "capability": "Duplicate an existing post",
   "task": "Duplicate an existing post in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Publish > Queue/Calendar > Duplicate"
  },
  {
   "t": "03:44",
   "cap": "cap-20",
   "capability": "View visual content calendar",
   "task": "View visual content calendar in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Publish > Calendar"
  },
  {
   "t": "03:44",
   "cap": "cap-21",
   "capability": "Save and use canned replies for comments",
   "task": "Save and use canned replies for comments in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Community > Saved replies"
  },
  {
   "t": "03:44",
   "cap": "cap-22",
   "capability": "Get AI-suggested comment replies",
   "task": "Get AI-suggested comment replies in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Community > AI replies"
  },
  {
   "t": "03:44",
   "cap": "cap-23",
   "capability": "Turn a comment reply into a new post",
   "task": "Turn a comment reply into a new post in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Community > comment > Create post from reply"
  },
  {
   "t": "03:44",
   "cap": "cap-24",
   "capability": "Submit post for team approval and approve/reject",
   "task": "Submit post for team approval and approve/reject in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Collaborate > Approvals"
  },
  {
   "t": "03:44",
   "cap": "cap-25",
   "capability": "Leave notes/comments on a draft post",
   "task": "Leave notes/comments on a draft post in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Collaborate > post notes"
  },
  {
   "t": "03:44",
   "cap": "cap-26",
   "capability": "Build and customize a Start Page link-in-bio",
   "task": "Build and customize a Start Page link-in-bio in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Start Page editor"
  },
  {
   "t": "03:44",
   "cap": "cap-27",
   "capability": "View Start Page click/traffic analytics",
   "task": "View Start Page click/traffic analytics in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Start Page > Analytics"
  },
  {
   "t": "03:44",
   "cap": "cap-28",
   "capability": "Shorten links in posts",
   "task": "Shorten links in posts in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Publish > Composer link shortening setting"
  },
  {
   "t": "03:44",
   "cap": "cap-29",
   "capability": "Manage queue and post from the mobile app",
   "task": "Manage queue and post from the mobile app in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Buffer iOS/Android app"
  },
  {
   "t": "03:44",
   "cap": "cap-30",
   "capability": "Invite team members and set channel permissions",
   "task": "Invite team members and set channel permissions in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Settings > Manage Your Team"
  },
  {
   "t": "03:44",
   "cap": "cap-31",
   "capability": "Generate an API key and manage app clients",
   "task": "Generate an API key and manage app clients in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Settings > API (publish.buffer.com/settings/api)"
  },
  {
   "t": "03:44",
   "cap": "cap-32",
   "capability": "Create branded analytics reports",
   "task": "Create branded analytics reports in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Insights > Reports (branded, Team plan)"
  },
  {
   "t": "03:44",
   "cap": "cap-33",
   "capability": "Set custom UTM parameters for post links",
   "task": "Set custom UTM parameters for post links in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Settings/Composer > UTM settings"
  },
  {
   "t": "03:44",
   "cap": "cap-34",
   "capability": "Enable two-factor authentication",
   "task": "Enable two-factor authentication in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Settings > Security"
  },
  {
   "t": "03:44",
   "cap": "cap-35",
   "capability": "Connect third-party app integrations (Canva, Zapier, Dropbox, etc.)",
   "task": "Connect third-party app integrations (Canva, Zapier, Dropbox, etc.) in account",
   "route": "browser",
   "documented": true,
   "result": "blocked",
   "verified": false,
   "evidence": "Not attempted on the product: no account. Sign-up blocked by a visible hCaptcha puzzle, so no API key, OAuth token or web session exists.",
   "notes": "Documented route exists: Settings > Integrations"
  }
 ],
 "stale": false,
 "icon": "/logos/buffer.png",
 "monitored": false,
 "verdict": "Needs a person to get in: L1 · Needs a person. Sign-up stops our agent first, at auth.buffer.com, where clicking Sign Up shows a visible hCaptcha puzzle; no API or CLI route around it, so no account, no key, no verification mail. Buffer ships a GraphQL API, an official MCP server, a CLI and Markdown docs with agent setup guides, but without a key none of it could be driven: unauthenticated calls return 401. Pricing needs a card under Billing Method once a person is in; the trial-without-card claim from the FAQ was not confirmed. No checkout, cancel or delete path was reached.",
 "page": "https://agentdrives.com/tools/buffer?via=api"
}