Skip to main content
Glama
thenavidm
by thenavidm

List segments

list_segments
Read-onlyIdempotent

Retrieve and filter segments for a Beehiiv publication, with optional pagination, sorting, and stats expansion. Use it to inspect audience groups and their status.

Instructions

List segments. Reads account data. OAuth integrations require segments:read.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageNoPagination returns the results in pages. Each page contains the number of results specified by the `limit` (default: 10). If not specified, results 1-10 from page 1 will be returned.
typeNoOptionally filter the results by the segment's type.all
limitNoA limit on the number of objects to be returned. The limit can range between 1 and 100, and the default is 10.
expandNoOptionally expand the response to include additional data. `stats` - Requests the most recently calculated statistics for a segment. Segment stats are recalculated once daily around 7 a.m. UTC for dynamic segments, but can be manually recalculated at any time in the dashboard. Manual and static segments only calculate once upon upload or creation.
statusNoOptionally filter the results by the segment's status.all
accountNoNamed private account from BEEHIIV_ACCOUNTS. Defaults to BEEHIIV_DEFAULT_ACCOUNT or the first configured account.
order_byNoThe field that the results are sorted by. Defaults to created `created` - The time in which the segment was first created. `last_calculated` - The time that the segment last completed calculation. Measured in seconds since the Unix epoch.created
directionNoThe direction that the results are sorted in. Defaults to asc `asc` - Ascending, sorts from smallest to largest. `desc` - Descending, sorts from largest to smallest.asc
publication_idYesThe prefixed ID of the publication object

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.0.0

TDQS

A3.5/5.0
Behavior4/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description goes beyond that by disclosing the required OAuth scope (segments:read) and the data-access nature of the call, which is genuinely actionable for an agent configuring auth.

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

Conciseness5/5

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

Three short sentences, purpose front-loaded, with the auth constraint stated compactly. No filler, no repetition of schema detail.

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

Completeness3/5

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

For a nine-parameter list tool with full schema coverage, the description is adequate on the auth side but silent on filtering/sorting behavior and on what the response contains (no output schema exists, so the return shape is undocumented). It does the minimum without being misleading.

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% and every one of the nine parameters carries its own description (pagination, type/status filters, expand=stats, order_by/direction, account). The description adds nothing beyond the schema, so the baseline 3 applies.

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

Purpose4/5

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

The description opens with a specific verb+resource ("List segments"), so an agent knows it enumerates the segment collection. However, it does nothing to distinguish this from the sibling tools get_segment, create_segment, delete_segment, or segments_recalculate that operate on the same resource.

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

Usage Guidelines2/5

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

"Reads account data" and the OAuth scope note give context but no when-to-use guidance. There is no statement about when to call list_segments versus get_segment (single fetch) or how it relates to the other segment-listing/expansion tooling in the sibling set.

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

Deploy Server

Other Tools