buzzabout docs
MCP

MCP overview

How buzzabout exposes itself as an MCP server — the assistant flow, the read tools, and how to authenticate.

The buzzabout MCP server lets any Model Context Protocol client — Claude Desktop, Claude.ai, Claude Code, Codex, Cursor, ChatGPT, your own SDK agent — drive buzzabout from inside the conversation. You ask a research question; the assistant collects and analyses the posts and returns the answer in the chat, often as an interactive widget.

Transport

https://mcp.buzzabout.ai/mcp/

Streamable HTTP — one URL handles tool listing, tool calls, and OAuth discovery (no separate SSE endpoint).

Trailing slash is required

Use https://mcp.buzzabout.ai/mcp/ (with trailing slash). The unslashed /mcp returns a 307 redirect that strips the request body in many MCP clients, which surfaces as silent connection failures or empty tool lists.

See Use in your agent for per-host wiring.

Authentication

Two paths on the same URL, chosen by client:

  • OAuth — standard assistants (Claude Desktop, Claude.ai, ChatGPT) handle it; just sign in.
  • x-api-key — CLI / IDE agents (Claude Code, Codex, Cursor) and custom agents paste a key.

Both resolve to the same buzzabout account. Full details on Authentication.

What's exposed

15 tools, in two kinds:

  • The assistant flow — askget_messagerender. ask hands a prompt to the buzzabout assistant, which writes the query, previews it, collects posts, profiles audiences, detects patterns, and analyses. It returns immediately; you poll get_message for the answer, and render draws any rich block as an interactive widget.
  • Read-only lookups — list / fetch datasets, runs, mentions, audience profiles, and tracking agents the account already has.

There are no create / update / delete tools — collecting, profiling, and pattern detection all happen through ask. For programmatic CRUD, use the REST API.

The async flow

Research can run for minutes — past a host's tool-call timeout — so the assistant flow is asynchronous:

  1. buzzabout__ask(prompt) returns immediately with { chat_id, message_id, status: "working" }.
  2. The host polls buzzabout__get_message(chat_id, message_id) — which long-polls (one call holds for ~45s, returning the moment the turn settles) — until stop_reason is non-null.
  3. The answer comes back as blocks: a render: true block is shown via buzzabout__render as an interactive MCP App widget; a render: false block carries plain markdown the host relays. Hosts without the MCP Apps UI extension get markdown throughout.

Credit-exhausted accounts surface a 402 with a structured "need N more credits" body so the assistant can ask the user to top up before retrying.

When to use MCP vs REST

Use MCPUse REST
Interactive — a person talking to an LLM client.Batch — scheduled job, cron-driven sync.
You want the assistant to drive the research.You're writing the orchestration yourself.
Results inline in the conversation.You need primitive CRUD / precise control.

Both surfaces are backed by the same primitives, so hybrid setups work naturally (e.g. run a heavy collection via REST, then ask an MCP-capable assistant to summarise it).

See also

  • Agentation — third-party MCP devtool that pairs well with buzzabout for local agent development and inspection.

Next steps

On this page