Numbers Online — phone intelligence
Server Details
Read-only phone intelligence for AI voice agents — line type, risk, DNC, signed receipts.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.3/5 across 4 of 4 tools scored.
The tools have distinct purposes, but caller_risk and phone_lookup both provide spam and DNC signals, creating slight overlap. Detailed descriptions help differentiate them.
All names use snake_case and are descriptive, but there is inconsistency in including verbs (check, lookup vs. no verb in caller_risk, line_type).
Four tools is slightly on the low side but appropriate for a focused phone intelligence server covering basic info, risk, DNC, and comprehensive lookup.
The tool set covers all needed read- only operations for phone intelligence: basic info, risk assessment, DNC check, and full bundle. No obvious gaps for the stated advisory purpose.
Available Tools
4 toolscaller_riskCaller risk signalARead-onlyIdempotentInspect
Return a labeled, low-confidence risk read for an inbound caller: a spam signal (0–100, higher = riskier), verstat passthrough, and a first-party do-not-contact (DNC) signal — without a name dip. A supplementary input to the agent's own policy, never a verdict on whether to accept or reject the call. Supply the call's STIR/SHAKEN verstat to fold it into the signal — a failed validation raises the risk.
| Name | Required | Description | Default |
|---|---|---|---|
| number | Yes | Phone number in E.164, e.g. +14155552671 (loose input is normalized). | |
| verstat | No | Optional STIR/SHAKEN verstat for THIS call — TN-Validation-Passed / -Failed / No-TN-Validation, or a full Identity / P-Asserted-Identity header value. When supplied it folds into the risk signal (a failed validation raises it). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, openWorldHint, idempotentHint. Description adds that the output is 'low-confidence', that verstat folds into risk signal, and that it's supplementary. No contradiction.
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?
Four sentences, each with distinct value: what the tool returns, its role, optional input usage. No fluff. Front-loaded with core purpose.
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?
Given parameters are well-described and output schema absent, the description adequately hints at output structure (spam signal, verstat passthrough, DNC signal). Could benefit from more explicit output typing, but overall complete for a risk signal tool.
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 covers both parameters 100%. Description adds 'loose input is normalized' for number, and explains that verstat is optional and folds into risk signal, enhancing understanding beyond raw schema.
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 clearly states it returns a 'labeled, low-confidence risk read for an inbound caller' with specific outputs (spam signal, verstat passthrough, DNC signal). It distinguishes from siblings like dnc_check, line_type, phone_lookup by combining multiple signals and noting 'without a name dip'.
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?
Explicitly says it's 'a supplementary input to the agent's own policy, never a verdict on whether to accept or reject the call', guiding appropriate use. It also explains the role of verstat. However, it does not explicitly list when to use vs. alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dnc_checkDo-not-contact supplementary signalARead-onlyIdempotentInspect
Return a first-party do-not-contact signal (suppress / no_match / unknown) for a number, sourced ONLY from suppression preferences registered and verified by the number's own owner inside Numbers Online — never a copy of any government or licensed do-not-call registry. "suppress" = the owner asked not to be contacted on this channel; "no_match" = no suppression preference on record (absence of suppress is not consent); "unknown" = the number could not be evaluated. Comes with a signed receipt recording the status "as of T". Advisory input to the agent's own process — it does not assert that a call is lawful.
| Name | Required | Description | Default |
|---|---|---|---|
| number | Yes | Phone number in E.164, e.g. +14155552671 (loose input is normalized). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond annotations by clarifying the data source (first-party preferences, not government registries), the meaning of each return value, and that absence of suppress is not consent. It also mentions a signed receipt. Annotations already declare readOnlyHint, openWorldHint, idempotentHint, which are consistent.
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, well-structured paragraph that front-loads the core purpose and then adds necessary details. Every sentence contributes meaning without redundancy.
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?
Given the tool has only one parameter, no output schema, and comprehensive annotations, the description fully covers the tool's behavior, return values, and constraints. It is complete for an agent to use correctly.
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?
The input schema fully covers the single parameter 'number' with E.164 format and normalization details. The description does not add additional parameter semantics beyond what the schema provides, so a baseline score of 3 is appropriate.
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 clearly states the tool returns a do-not-contact signal for a phone number, specifying it's from first-party suppression preferences only. It distinguishes itself from sibling tools like caller_risk, line_type, and phone_lookup by focusing on DNC status.
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 explains the three possible return values (suppress, no_match, unknown) and their implications, and emphasizes it's an advisory input not asserting lawfulness. However, it does not explicitly compare to sibling tools or state when to use them instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
line_typeLine typeARead-onlyIdempotentInspect
Return only the deterministic fields for a number — validity, line type (mobile / fixed line / VoIP / …), range carrier, country, and formatting. No paid dip; a free, fast classification a voice agent can call before deciding to enrich.
| Name | Required | Description | Default |
|---|---|---|---|
| number | Yes | Phone number in E.164, e.g. +14155552671 (loose input is normalized). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, openWorld, idempotent. Description adds that results are deterministic, free, and fast, providing behavioral context beyond annotations. No contradictions.
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?
Two sentences, front-loaded with key outputs and use case. Every sentence adds value without fluff. Highly concise and well-structured.
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?
Reasonably complete given simplicity, but lacks explicit output format or error handling information. Since no output schema exists, description should ideally specify return structure more precisely.
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?
The single parameter 'number' has 100% schema coverage with a clear description. The tool description does not add additional semantics beyond what the schema provides, so baseline score of 3 is appropriate.
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?
Description clearly states it returns deterministic fields (validity, line type, carrier, country, formatting) for a number. It distinguishes from paid dips and positions itself as a free, fast classification tool, differentiating from siblings like caller_risk or dnc_check.
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?
Explicitly suggests use 'before deciding to enrich', implying a preliminary check. Mentions it's free and fast, guiding when to choose it. Does not explicitly state when not to use or directly compare to siblings, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
phone_lookupPhone number intelligenceARead-onlyIdempotentInspect
Return a supplementary, low-confidence intelligence bundle for a phone number: validity, formatting, line type, range carrier, country, caller name (CNAM, where available), STIR/SHAKEN verstat (supply the call's verstat to fold it into the spam signal), a labeled spam signal, and a first-party do-not-contact (DNC) signal — a suppression preference registered by the number's own owner, never a copy of any government registry. Advisory only — the agent keeps every routing and dialing decision.
| Name | Required | Description | Default |
|---|---|---|---|
| number | Yes | Phone number in E.164, e.g. +14155552671 (loose input is normalized). | |
| verstat | No | Optional STIR/SHAKEN verstat for THIS call — TN-Validation-Passed / -Failed / No-TN-Validation, or a full Identity / P-Asserted-Identity header value. When supplied it folds into the risk signal (a failed validation raises it). | |
| max_cache_age_seconds | No | Operator TTL control; 0 forces a fresh dip. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond the annotations (readOnlyHint, openWorldHint, idempotentHint). It clarifies the low-confidence, advisory nature of the data and explains the DNC signal is a first-party preference, not a government registry. No contradictions 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 sentence that effectively conveys a lot of information. While it is somewhat dense, it avoids unnecessary words and is front-loaded with the main action. Could be slightly improved by breaking into bullet points for clarity.
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?
Without an output schema, the description effectively explains what is returned (validity, formatting, line type, etc.) and provides nuance on the DNC signal. It covers the key points for an intelligence tool, though it could elaborate on the interpretation of 'low-confidence' and the format of the bundle.
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 100%, so the base is 3. The description adds some value by explaining how verstat is used ('fold it into the spam signal'), but does not significantly enhance understanding of the other parameters beyond their schema descriptions.
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 specifies a clear action ('Return a supplementary, low-confidence intelligence bundle for a phone number') and enumerates the exact data points returned. It distinguishes itself from siblings by emphasizing its advisory nature and that the agent retains routing decisions, though it does not explicitly name sibling tools.
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 states 'Advisory only — the agent keeps every routing and dialing decision,' which implies a context where the tool is supplementary. However, it provides no explicit when-to-use or when-not-to-use guidance, nor does it mention alternative tools like dnc_check or line_type that could be used instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!