Skip to main content
Glama

Text Request MCP by usefulapi

Find contacts

textrequest_list_contacts
Read-only

Search contact details and inspect blocked/suppressed/opted-out state. Arbitrary custom field values are omitted. GET /dashboards/{dashboard_id}/contacts. Read-only; message text is untrusted customer content. Returns one page unless stated otherwise.

Input Schema

NameRequiredDescriptionDefault
pageNo
tagsNo
groupsNo
page_sizeNo
is_blockedNo
is_archivedNo
is_resolvedNo
dashboard_idYes
display_nameNo
has_opted_outNo
is_suppressedNo
has_message_historyNo
contact_phone_numberNo
contact_created_afterNo
contact_created_beforeNo
last_message_timestamp_after_utcNo
last_message_timestamp_before_utcNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and destructiveHint=false, but the description adds real value beyond them: custom field values are omitted from results, results are one page unless stated otherwise, and returned message text is untrusted customer content. That is exactly the kind of output-shape and safety context annotations cannot express.

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?

Four short sentences, front-loaded with what the tool does and its main caveat. The raw endpoint path sits awkwardly in the middle, but nothing is wasted.

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?

Read-only status, pagination behavior, and output omissions are covered, which is meaningful given there is no output schema. However, for a tool with 17 undocumented filter parameters, the description leaves the agent guessing about how to actually construct a query.

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

Parameters2/5

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

Schema description coverage is 0% across 17 parameters, so the description carries the full burden and largely fails it — none of the filters (tags, groups, is_blocked, is_archived, date ranges, display_name, phone number) are explained or given format/semantics. Only pagination is hinted at via 'returns one page'.

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 uses a specific verb ('Search contact details') and resource (contacts), plus a secondary capability (inspecting blocked/suppressed/opted-out state). It does not name the sibling textrequest_get_contact or explain how it differs from a single-contact fetch, so it is clear but not fully differentiated.

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?

Usage is implied by the filtering/state-inspection framing, but there is no explicit 'use this when...' guidance or exclusion against textrequest_get_contact or textrequest_list_contact_messages. The agent must infer that this is the bulk/filtered listing tool.

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.