Skip to main content
Glama

Server Details

SMS verification for AI agents: buy a number, get the code, cancel with refund.

Ownership verified
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
MassimoSun/smsverbot-mcp
GitHub Stars
0

TDQS

B3.2/5.0

Scored across 9 tools

Disambiguation4/5

Most tools target clearly distinct resources or actions: buy versus price, country versus service, order history versus waiting for a code. The only real overlap is get_balance and whoami, since both return balance; whoami adds API key verification, but an agent needing only the balance could still misselect.

Naming Consistency4/5

Seven of nine names follow a clear verb_noun pattern such as buy_number, cancel_order, get_balance, list_services, and wait_for_code. The deviations are order_history (noun phrase) and whoami (single word), which are minor but keep it from perfect consistency.

Tool Count5/5

Nine tools is well within the ideal 3-15 range and each maps to a meaningful step in the SMS activation lifecycle: discovery, purchase, waiting, cancellation, history, and account checks. The set feels scoped, not padded.

Completeness4/5

The surface covers discovery, purchasing, code retrieval, cancellation, history, and balance/API verification. Minor gaps exist, such as no dedicated get_order or explicit order-status tool beyond order_history, and no release-number operation beyond cancel_order.

Available Tools

9 tools
buy_numberCInspect

Buy a phone number and debit the prepaid balance.

ParametersJSON Schema
NameRequiredDescriptionDefault
api_keyNo
countryYes
serviceYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/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 the key trait that this is a paid operation debiting the prepaid balance. However, it says nothing about whether the purchase is reversible, what happens if balance is insufficient, whether api_key authentication is required, or that a code must later be retrieved via wait_for_code.

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?

One short sentence with zero filler and the core action front-loaded; the cost implication is appended efficiently. It is arguably under-sized for a paid mutation, but nothing in it is wasted.

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

Completeness2/5

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

An output schema exists, so return values need not be explained, but the definition is still thin for a financial transaction tool: no annotations, no parameter documentation, no guidance on prerequisites or error conditions. An agent has enough to attempt the call but not enough to use it safely.

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% and the description adds no parameter meaning whatsoever for the three parameters. It does not indicate that country/service are required selectors that should come from list_countries/list_services, nor what format api_key takes, leaving the agent to guess at accepted values.

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 a specific verb and resource ("Buy a phone number") and adds the financial effect ("debit the prepaid balance"), so the agent immediately knows what the call does. It does not reference any sibling or state how it relates to cancel_order/get_price, but no sibling overlaps its function, so ambiguity is low.

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 when-to-use guidance and no mention of the natural workflow implied by the siblings (list_countries, list_services, get_price before buying; cancel_order after). The agent must infer that this is the terminal step of a purchase flow entirely on its own.

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

cancel_orderBInspect

Cancel an order and refund the balance exactly once.

ParametersJSON Schema
NameRequiredDescriptionDefault
api_keyNo
order_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3/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. It usefully discloses that the operation refunds the balance and does so 'exactly once', hinting at idempotency, but it omits permissions, irreversibility, error states, and what happens if the order is already cancelled or otherwise not eligible.

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?

The description is a single efficient sentence with no wasted words. The action and its important exactly-once refund guarantee are front-loaded.

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

Completeness2/5

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

For a high-stakes financial mutation with no annotations and 0% schema description coverage, the description is too thin. An output schema exists so return details are not needed, but authentication, eligibility conditions, and failure behavior remain unaddressed.

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%, so the description must compensate for undocumented parameters. It implies an order identifier through the word 'order', but says nothing about the required 'order_id' format or the optional 'api_key' parameter.

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 states a specific verb and resource ('Cancel an order') plus its side effect ('refund the balance exactly once'). It clearly distinguishes itself from the sibling tools, which are all read or purchase operations, but it does not name or contrast any specific sibling.

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 use this tool versus alternatives, no prerequisites, and no exclusions. The description implies usage only by its name and action.

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

get_balanceCInspect

Return the current prepaid balance.

ParametersJSON Schema
NameRequiredDescriptionDefault
api_keyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It does not mention that this is a read-only operation, whether authentication is required, or any rate limits, leaving the agent with only the name and purpose.

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?

The description is a single, front-loaded sentence with no wasted words. However, its extreme brevity contributes to gaps in other dimensions, though structurally it is efficient.

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

Completeness2/5

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

Given the lack of annotations, undocumented parameter, and no usage guidance, the description is too sparse. An output schema exists so return values need not be described, but the agent still lacks critical context for when and how to invoke the tool correctly.

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

Parameters1/5

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

The schema description coverage is 0% for the single api_key parameter, so the description must compensate but adds no information about the parameter's meaning, whether it is required, or how it is used. The agent receives no guidance beyond the schema's bare name and default.

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 states a specific verb (return) and resource (current prepaid balance), making the tool's function clear. It does not explicitly differentiate from siblings like whoami or get_price, so it falls short of a 5.

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 use this tool versus alternatives such as whoami or order_history. The description only states what it does, leaving context entirely to inference.

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

get_priceBInspect

Get the retail price for a service and country without buying.

ParametersJSON Schema
NameRequiredDescriptionDefault
api_keyNo
countryYes
serviceYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. 'Without buying' does signal a non-mutating read, which is helpful, but the description says nothing about the api_key requirement, authentication, rate limits, or the currency/format the price is returned in.

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 the scope constraint front-loaded and no filler. It is efficient, though one more clause on identifier format would have earned its place.

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?

An output schema exists, so return-value explanation is not required. Still, for a tool needing an API key plus service/country identifiers drawn from sibling listing tools, the description leaves the agent without prerequisite or identifier-format guidance.

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 3 parameters. The description names the two required inputs (service, country) but adds no format or identifier syntax, and the api_key parameter is entirely unexplained in both schema and description.

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?

States a specific verb (Get) and resource (retail price) qualified by scope (for a service and country). The phrase 'without buying' implicitly separates it from the buy_number sibling, though it doesn't name that sibling directly.

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 trailing 'without buying' implies this is the pre-purchase price-check step versus buy_number, which is useful implied routing. However, there is no explicit when-to-use statement, no prerequisite callouts (e.g., resolve service/country first via list_services/list_countries), and no exclusions.

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

list_countriesCInspect

List countries available for SMS activation.

ParametersJSON Schema
NameRequiredDescriptionDefault
api_keyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It implies a read-only listing but says nothing about authentication requirements (an api_key parameter exists with an empty default and is never explained), rate limits, result scope, or ordering — significant gaps for a tool with zero annotation coverage.

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?

One short sentence, front-loaded with the verb and resource, with no filler. It is efficient, though arguably terse to the point of under-specification rather than optimally sized.

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?

An output schema exists, so return values need not be explained, and the tool is a straightforward list operation. Still, with no annotations and an undocumented api_key parameter, the definition covers only the minimum an agent needs; it lacks any auth or usage context.

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% for the single api_key parameter, and the description never mentions it. Whether the key is required, optional (default is an empty string), or how it is supplied is left entirely undocumented in both schema and description.

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 a specific verb ('List') and resource ('countries') with a scoping qualifier ('available for SMS activation'), which is clearer than a bare 'list countries'. It does not, however, differentiate itself from sibling listing tools such as list_services or get_price, leaving the agent to infer the boundary.

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 explicit when-to-use guidance, no prerequisites, and no mention of alternatives. Usage is only implied by the phrase 'for SMS activation' — an agent could guess this precedes buy_number or get_price, but nothing states that relationship or any when-not-to-use condition.

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

list_servicesCInspect

List services available for SMS activation in a country.

ParametersJSON Schema
NameRequiredDescriptionDefault
api_keyNo
countryNoindonesia

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral burden. It implies a read-only listing, but says nothing about the required API key, rate limits, or pagination behavior for what is presumably a large catalog.

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 clean sentence with the purpose front-loaded and no wasted words. There is simply little content to structure, so it cannot reach the top of the range.

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

Completeness2/5

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

An output schema exists, so return values need not be explained. However, with no annotations, 0% parameter coverage, and no usage context, the description is too thin for an agent to invoke this confidently, especially regarding the unexplained api_key.

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%, so both parameters are undocumented structurally. The description only hints at 'country' and adds no format detail (e.g. the lowercase 'indonesia' default), and the api_key parameter is never mentioned.

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 states a specific verb (List) and resource (services available for SMS activation), scoped by country. An agent can distinguish it from siblings like list_countries and get_price, though it doesn't explicitly name those alternatives.

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 guidance, prerequisites, or alternatives are given. It doesn't say whether this should be called before buy_number or how it relates to get_price, leaving the workflow entirely to inference.

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

order_historyCInspect

Return recent orders for the API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
api_keyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It does not disclose pagination, ordering, the time window covered by 'recent', rate limits, or what happens when the key has no orders, leaving the behavior largely opaque.

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

Conciseness3/5

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

A single short sentence that is front-loaded and wastes no words. However, the brevity reflects under-specification rather than discipline, so it earns only a middling score.

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

Completeness2/5

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

An output schema exists, so return values need not be described. Still, for a query tool with zero annotation coverage and zero parameter documentation, the definition omits the time scope, pagination behavior, and auth expectations an agent needs to call it correctly.

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% and neither parameter is documented. The phrase 'for the API key' loosely maps to the api_key parameter, but 'limit' is never explained and no default or format guidance is added beyond the schema.

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 states a specific verb ('Return') and resource ('recent orders') scoped to an API key, so the agent knows what it retrieves. It does not distinguish itself from siblings like get_balance or cancel_order, and 'recent' is left undefined.

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 when-to-use guidance, no mention of alternatives among the eight sibling tools, and no prerequisites. The agent must infer that this is the tool for retrieving past order data.

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

wait_for_codeCInspect

Wait for an SMS code for an existing order.

ParametersJSON Schema
NameRequiredDescriptionDefault
api_keyNo
order_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. For a blocking wait/poll operation it says nothing about timeout behavior, poll duration, whether the call blocks indefinitely, or whether the received code is consumed by the read — all critical traits an agent needs before invoking it.

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 front-loaded sentence with no filler and the scope constraint placed last for emphasis. It is efficiently written, though arguably too terse given the blocking semantics of the operation.

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

Completeness2/5

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

An output schema exists, so return values need not be explained. But for a wait-based tool the description omits the behavioral facts that matter most (blocking/timeout behavior), so an agent cannot confidently invoke it or handle the no-code case.

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% for two parameters. The phrase 'existing order' loosely maps to order_id, but neither the expected order_id format/provenance nor the api_key parameter is explained anywhere. With a 0% coverage schema, the description should compensate and largely does not.

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?

Names a specific verb ('wait for') and resource ('SMS code') plus a scope qualifier ('for an existing order'), which clearly separates it from siblings like buy_number or order_history. It does not explicitly name a sibling it replaces or contrast with alternatives, but the intent is unambiguous.

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?

'For an existing order' implies the prerequisite that an order must already have been placed, so usage is inferable. However, there is no explicit when-to-use guidance, no statement of what to do if no code arrives, and no alternative tool named for checking order status or history.

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

whoamiBInspect

Verify an API key and return its id and balance in rubles.

ParametersJSON Schema
NameRequiredDescriptionDefault
api_keyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output 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 full burden. It does disclose the core behavior (validates the key and returns an id plus ruble balance), but it omits what happens on an invalid key, whether the call requires the key as a parameter versus ambient auth, and any rate-limit or failure behavior.

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 with the action first and the return payload second. Nothing is wasted or buried.

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?

An output schema exists, so return values need not be spelled out, and the description is adequate for a one-parameter tool. Still missing are the auth/failure semantics and any indication of how this differs from get_balance, which is the main thing an agent needs to route correctly.

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 0% for the single api_key parameter, so the description must compensate. It does signal that the parameter is the API key to verify, but it never clarifies that the field is optional with an empty default, nor any format expectations, leaving real ambiguity for a tool whose whole purpose is key validation.

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?

States a specific verb (verify) and resource (API key) plus what is returned (id and balance in rubles), which is concrete and readable. However, it does not differentiate itself from the sibling get_balance, which also returns balance, so an agent must guess which to pick when it only wants a balance.

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 when-to-use or when-not-to-use guidance and no named alternative. The name and purpose imply this is for validating a key, but nothing tells the agent to prefer get_balance for pure balance checks or when this tool is appropriate versus the other sibling calls.

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. 9 tool updates
    • First observedbuy_number
    • First observedcancel_order
    • First observedget_balance
    • First observedget_price
    • First observedlist_countries
    • First observedlist_services
    • First observedorder_history
    • First observedwait_for_code
    • First observedwhoami

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Enables AI agents to purchase phone numbers and retrieve one-time SMS/OTP verification codes via the CODASMS API, with support for 700+ services and 180+ countries including automatic refunds if no code arrives.
    7
    19 npm
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI clients and assistants to order virtual phone numbers and disposable email addresses, and retrieve verification codes (OTPs) from SMS and email messages for account verification workflows.
    18
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.