Skip to main content
Glama

Server Details

A real US mobile number that receives verification codes, by text or transcribed call.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
100.0% over 21 days
Last Tested
Transport
Streamable HTTP · MCP 2025-06-18
URL

TDQS

A3.7/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: listing lines, listing messages, retrieving the latest code, and blocking until a new code arrives. There is no practical ambiguity between them, even though latest_code and wait_for_code both deal with codes, as one is immediate and one is waiting.

Naming Consistency3/5

Two tools follow the verb_noun pattern (list_lines, list_messages), but latest_code uses adjective_noun and wait_for_code uses verb_preposition_noun. The naming is still readable and understandable, but the lack of a consistent verb_noun style makes it mixed.

Tool Count5/5

With only 4 tools focused on a narrow domain (verification code retrieval via SMS lines), the count is well-scoped. Each tool serves a necessary function and there is no bloat or duplication.

Completeness4/5

The server covers the core workflow of listing available lines, checking recent codes, and waiting for new codes, plus a message history fallback. A minor gap is lacking a way to clear or mark codes as consumed, but for typical verification code flows these tools are sufficient.

Available Tools

4 tools
latest_codeLatest codeBInspect

The most recent verification code sent to a line, or nothing if none has arrived.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromNoOptional. Only consider messages whose sender contains this text, case-insensitively — a short code, say 32665.
lineIdYesThe line's id, from list_lines.
serviceNoOptional. Only consider messages Cleat attributed to this service (its id or name, e.g. facebook), or that carry this label from your workspace's contacts.

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the burden, and it does state the primary behavior and the no-code result. However, it does not disclose whether reading the code consumes it, what permissions are needed, or how a verification code is identified among messages.

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?

A single, front-loaded sentence conveys the core operation and the important empty-result case without wasted words or redundant detail.

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?

For a simple retrieval tool with a fully described schema and explicit return behavior, the description is mostly sufficient. The main missing context is sibling-aware usage guidance and a bit more behavioral transparency, but nothing critical is absent.

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?

The input schema already provides full descriptions for all three parameters, so the baseline is 3. The tool description adds no additional meaning about how lineId, from, or service affect the result beyond what the schema already states.

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 clearly identifies the tool as returning the most recent verification code for a line, including the empty case. It is specific and understandable, though it does not explicitly contrast itself with sibling tools such as wait_for_code or list_messages.

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?

No explicit guidance is given about when to use this tool versus its siblings. The phrase 'or nothing if none has arrived' implies this is a non-blocking check, but it never tells the agent to prefer latest_code over wait_for_code or to use list_messages for raw message history.

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

list_linesList linesBInspect

The phone numbers in this workspace that can receive texts, newest first.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.3/5.0
Behavior3/5

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

No annotations are provided, so the description carries the disclosure burden alone. It does add one genuine behavioral fact — results are ordered newest first — but says nothing about pagination, result limits, or whether historical/disabled numbers are included.

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?

A single short sentence with the resource and ordering front-loaded and no filler. It is appropriately sized for a zero-parameter list tool.

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?

With no output schema and no annotations, the description must carry the full contract, and it only partially does. It states what a line is and the ordering, but omits return-volume expectations and whether the list is exhaustive or paginated.

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

Parameters4/5

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

The tool takes zero parameters and the schema is 100% covered, so there is nothing for the description to clarify. Baseline 4 applies since no parameter semantics are needed.

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 names the resource specifically (phone numbers in this workspace that can receive texts) and resolves the ambiguous term 'lines' from the tool name. It clearly identifies the returned entity and excludes other sibling domains like messages or codes, though it is phrased as a noun fragment rather than an action.

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?

There is no guidance on when to call this versus alternatives, and no prerequisites or exclusions are stated. With siblings like list_messages and latest_code, a brief 'use this to discover which numbers can receive texts' would have removed ambiguity.

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

list_messagesList messagesBInspect

Texts received by one line, newest first.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoHow many to return. Defaults to 20.
lineIdYesThe line's id, from list_lines.

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden, and it does disclose two useful traits: only received (inbound) texts are returned, and results are ordered newest first. It does not cover pagination or the read-only nature, so the coverage is partial rather than rich.

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?

A single tight sentence with no filler, and the scoping constraint plus ordering are front-loaded. It is efficient, though its brevity is close to the point of under-specification rather than maximal helpfulness.

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 simple read-only list tool with fully documented parameters, the definition is adequate. However, with no annotations and no output schema, an agent gets no signal about the return shape or pagination behavior, leaving a modest 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 both lineId and limit are already documented in the schema. The description reinforces that the query is scoped to one line but adds no format, range, or default details beyond what the schema states.

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?

"Texts received by one line, newest first" names the resource (messages/texts), the scoping dimension (a single line), and the sort order. It is clearly distinguishable from siblings like latest_code (a single code) and list_lines (the lines themselves), though it never names an alternative explicitly.

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?

No when-to-use or when-not-to-use guidance is given. The phrase "by one line" implies the tool is scoped to a single line, but there is no statement of prerequisites or of how this differs from reaching for latest_code or wait_for_code.

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

wait_for_codeWait for a codeAInspect

Waits for the next verification code to arrive at a line and returns it. Call this immediately BEFORE triggering the text, so nothing is missed. Returns timedOut: true if none arrives in time.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromNoOptional. Only consider messages whose sender contains this text, case-insensitively — a short code, say 32665.
lineIdYesThe line's id, from list_lines.
serviceNoOptional. Only consider messages Cleat attributed to this service (its id or name, e.g. facebook), or that carry this label from your workspace's contacts.
timeoutSecondsNoHow long to wait, up to 55. Defaults to 30.

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses the blocking/waiting behavior, the timeout result, and the timing requirement. It doesn't mention potential side effects or rate limits, but for a read/wait operation this is reasonably transparent.

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 sentences, each earning its place: what it does, when to call it, and what the timeout result is. The most important usage guidance is front-loaded.

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?

For a waiting tool with no output schema, the description covers the key behavioral aspects: blocking, timeout, and timing. It could mention what the return value looks like on success, but the core usage is clear. The sibling context (latest_code) suggests an alternative for non-waiting retrieval, which is adequately implied.

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 coverage is 100%, so the schema already documents all four parameters. The description adds the crucial timing context ('immediately BEFORE triggering the text') and the timeout return behavior, but doesn't add much beyond the schema for individual parameters. Baseline 3 is appropriate.

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?

The description states a specific verb ('waits'), a specific resource ('verification code'), and a clear outcome ('returns it'). It also distinguishes itself from siblings by emphasizing the waiting behavior and the timing instruction ('immediately BEFORE triggering the text').

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

Usage Guidelines5/5

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

The description explicitly tells the agent when to call this tool ('immediately BEFORE triggering the text') and what to expect ('Returns timedOut: true if none arrives in time'). It also implies the alternative (latest_code) by focusing on waiting for a future code rather than fetching the latest existing one.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 2 tool updates
    • Changedlatest_code2 fields changed
      • addedInput schema / properties / from
        Added value: +{
        +  "description": "Optional. Only consider messages whose sender contains this text, case-insensitively — a short code, say 32665.",
        +  "type": "string"
        +}
      • addedInput schema / properties / service
        Added value: +{
        +  "description": "Optional. Only consider messages Cleat attributed to this service (its id or name, e.g. facebook), or that carry this label from your workspace's contacts.",
        +  "type": "string"
        +}
    • Changedwait_for_code2 fields changed
      • addedInput schema / properties / from
        Added value: +{
        +  "description": "Optional. Only consider messages whose sender contains this text, case-insensitively — a short code, say 32665.",
        +  "type": "string"
        +}
      • addedInput schema / properties / service
        Added value: +{
        +  "description": "Optional. Only consider messages Cleat attributed to this service (its id or name, e.g. facebook), or that carry this label from your workspace's contacts.",
        +  "type": "string"
        +}
  2. 4 tool updates
    • First observedlatest_code
    • First observedlist_lines
    • First observedlist_messages
    • First observedwait_for_code

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources