interests_list
List saved audience packs
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| cursor | No | ||
| search | No | ||
| include_archived | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| message | No | ||
| retryable | No | ||
| support_ref | No |
List saved audience packs
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| cursor | No | ||
| search | No | ||
| include_archived | No |
| Name | Required | Description | Default |
|---|---|---|---|
| message | No | ||
| retryable | No | ||
| support_ref | No |
Changes observed during successful MCP inspections.
Output schema / else / properties / meta / properties / data_freshness / properties / last_pull_scopeAdded value: +{
+ "const": "workspace"
+}Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds the 'saved' qualifier, indicating it lists previously saved packs rather than fetching new ones, which is useful. It does not disclose pagination behavior, default ordering, or whether archived packs are included by default, but the include_archived parameter hints at that. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the core action and resource. It is appropriately sized for a simple list operation, though it could have added a brief note about filtering or pagination without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with an output schema and clear annotations, the description is mostly adequate. However, it lacks any mention of pagination (cursor), filtering (search), or the include_archived flag, which are the main behavioral choices an agent would need to make. The output schema likely covers return values, but the input semantics are left to the schema alone.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description carries the burden of explaining parameters, but it does not mention any of them. The parameter names (limit, cursor, search, include_archived) are fairly self-explanatory, and the schema provides types and defaults, but the description adds no semantic context beyond what the schema shows. Baseline 3 is appropriate given the schema's clarity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List saved audience packs' uses a specific verb ('List') and resource ('saved audience packs'), which clearly identifies the tool's function. It distinguishes it from sibling tools like interests_get (which likely retrieves a single pack) and interests_archive (which modifies packs), though it doesn't explicitly name them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a read-only listing operation, and the readOnlyHint annotation confirms it is safe to call. However, it provides no explicit guidance on when to choose this over interests_get or interests_fetch_from_adset, nor does it mention any exclusions or prerequisites. The context is clear but the guidance is minimal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.