Skip to main content
Glama

Buttondown MCP by usefulapi

List subscribers

buttondown_list_subscribers
Read-only

List or search subscribers (newest first by default) with e-mail, type (regular, unactivated, unsubscribed, premium, ...), tags, notes, metadata, source, open/click rates and dates. Filter by e-mail text, type, tag, signup date or domain. GET /subscribers.

Input Schema

NameRequiredDescriptionDefault
tagNoOnly subscribers with these tag names.
pageNoPage number, from 1 (default 1). Pass the previous reply's next_page.
typeNoOnly subscribers of these types (e.g. regular, unactivated, unsubscribed).
domainNoOnly subscribers whose e-mail domain is one of these.
not_typeNoExclude subscribers of these types.
orderingNoSort field, - for descending (default -creation_date).
created_afterNoOnly subscribers created on or after this date (yyyy-mm-dd).
email_addressNoOnly subscribers whose e-mail address contains this text.
created_beforeNoOnly subscribers created before this date (yyyy-mm-dd).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/openWorld/non-destructive, so the safety bar is met. The description adds genuinely new context: default ordering ('newest first by default' / new→old), the endpoint (GET /subscribers), and a short inventory of returned fields. Pagination semantics live only in the schema, not here, which caps it below 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two dense sentences plus a trailing endpoint token; purpose and default ordering are front-loaded with no filler. The 'GET /subscribers' fragment is slightly redundant but harmless. Efficient overall.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description steps in by enumerating returned fields (e-mail, type, tags, notes, metadata, source, open/click rates, dates) and the default sort. Pagination is covered by the page parameter in schema, so nothing critical is missing; a note on result-size/cursor behaviour would be the only gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all nine parameters (tag, page, type, not_type, domain, ordering, created_after/before, email_address) are already fully documented. The description's filter list ('e-mail text, type, tag, signup date or domain') largely mirrors the schema and omits not_type and page, so it adds little beyond the structured fields. Baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb pair ('list or search') and resource ('subscribers'), and the surrounding sibling names (get_subscriber, add_subscriber, update_subscriber) make the singular/single-item and mutation variants trivially distinguishable. An agent can tell this is the collection read endpoint without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The filtering sentence implies the tool's role (enumerate/filter subscribers), but there is no explicit when-to-use vs when-not, and no alternative sibling is named for cases like finding one subscriber (get_subscriber) or mutating (update_subscriber). Usage is inferable but not guided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.