Skip to main content
The Brew MCP server exposes customer tasks, not one tool per HTTP route. Some tools compose several Public API v1 operations (get_email_analytics answers the overview, send, and event reads), and a few have no HTTP route at all. The catalog below is generated from what an organization connection’s tools/list returns, grouped under the topics get_brew_capabilities uses. A brand connection sees the same tools except create_brand. Every tool is strictly typed and carries readOnlyHint and destructiveHint annotations. Call get_brew_capabilities with a tool for one tool’s full input schema, or with a topic for focused help. Each description is exactly what your agent reads, and it states the tool’s cost: every credit-metered tool names its price there, and running out returns INSUFFICIENT_CREDITS.

Tool Catalog

Email

Automations

Contacts and audiences

Domains

Brand

Images and media

Account and discovery

Conventions

response_format

Every tool except submit_feedback accepts an optional response_format: The complete machine-readable record is always in structuredContent either way, so concise never costs you data, only the JSON echo in the text channel. Reach for detailed when you want to read the raw fields in the transcript. Every tool publishes the shape of that record as its outputSchema in tools/list, so a client can validate a result and read its fields without guessing.

idempotency_key

Write tools that can be retried accept an optional idempotency_key: a repeat call with the same key replays the original result instead of acting twice. Use a fresh UUID per intended action. See Safe Retries.

include

Expansions are opt-in. Every tool that takes include takes an array of the expansion names its input schema lists (include: ["html"] on get_email, include: ["identity", "logos"] on get_brand). A string is refused.

Previews

Email and image tools attach Brew’s stored preview where your client can show it in the transcript, plus an Open in Brew link, and the result’s text says which previews the client shows. Markdown images are left out: some clients turn them into a “Show Image” button instead of the design. preview: false returns text only.

Confirmation

On OAuth and organization connections, a call that emails people or removes contact data returns a confirmation request first: campaigns, tests to someone else, automation launches and trigger fires, publishing or resuming an automation, resuming a send, and deleting contacts or a contact field. After the user approves, the same call with confirmed: true and the request’s confirmation_id runs it. See Confirmation.

Result Size

Results are sized to fit a model’s context:
  • A list page comes back whole or not at all. When a page is too large, the call returns RESPONSE_TOO_LARGE with no rows and names what to lower (the limit, or an include expansion). Rows are never trimmed behind a cursor. list_insights is the one exception: it shortens long text and cuts its expansions to fit, and its truncated array names what it cut.
  • So list pages are smaller than the HTTP API’s: 25 rows by default and at most for most list_* and search_* tools. search_contacts reads 10 by default (up to 25), because a contact carries every custom field it has. list_insights reads 10, and list_email_comments with messages reads 3 threads. Each tool’s limit states its bounds; the full table is on Pagination.
  • A single record comes back whole in structuredContent. Its text summary may be shortened, keeping the identifiers and next steps. A record past the hard cap returns RESPONSE_TOO_LARGE too.
  • A write always returns its outcome. An oversized result is compacted in place (long strings and arrays shortened), keeping every field’s type.

Need Help?

Our team is ready to support you at every step of your journey with Brew. Choose the option that works best for you:

Search Documentation

Type in the “Ask any question” search bar at the top left to instantly find relevant documentation pages.

ChatGPT/Claude Integration

Click “Open in ChatGPT” at the top right of any page to explore it further with ChatGPT or Claude.