Skip to main content
Glama

Server Details

Phone carrier lookup, append, verification, DNC, and fraud data services.

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.

MCP client
Glama
MCP server

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.

100% free. Your data is private.
Tool DescriptionsA

Average 4.2/5 across 27 of 27 tools scored. Lowest: 3.4/5.

Server CoherenceA
Disambiguation4/5

Tools have clear distinct purposes overall, but some pairs like find_phone vs lookup_phone_owner could cause momentary confusion despite descriptions differentiating them. Most tools target unique data services.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern (e.g., append_gender, check_dnc, find_email) with no mixed conventions, making the set highly predictable.

Tool Count3/5

27 tools is above the typical 3-15 range and exceeds the 25 threshold for borderline. While each tool serves a distinct purpose, the count feels slightly heavy for a single server.

Completeness5/5

The server covers a comprehensive range of data enrichment and validation services, including contact info, DNC, carrier, IP, property, and signup screening, with no obvious gaps for its stated domain.

Available Tools

27 tools
append_genderA
Read-onlyIdempotent
Inspect

Return the probable gender for a person based on their first (given) name. Returns the gender (MALE or FEMALE) and a percentage likelihood that it is correct. Provide either fname or a full name.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoFull name; alternative to fname.
fnameNoFirst (given) name.
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, destructiveHint. Description adds useful context about output format and input flexibility (fname or full name), complementing annotations without contradiction.

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?

Two sentences, front-loaded with purpose, no redundant information. Highly efficient.

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?

No output schema, but description explains return values (gender and likelihood). Lacks details on edge cases (e.g., unrecognized names), but overall sufficient for a simple lookup.

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?

Schema covers both parameters with descriptions (100% coverage). Description adds value by clarifying the anyOf constraint: provide either fname or a full name.

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?

Description clearly states it returns gender (MALE/FEMALE) and likelihood percentage based on first name. Verb and resource are specific, and it distinguishes from sibling tools by function.

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

Usage Guidelines4/5

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

Implies usage for gender inference from a name. No explicit alternatives or when-not-to-use, but sibling tools are all unrelated, so minimal confusion.

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

check_balanceA
Read-onlyIdempotent
Inspect

Return the account's current prepaid balance. Free. Use to check available funds before running paid queries.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Beyond annotations (readOnly, idempotent), description adds that it is free and returns the prepaid balance, adding useful behavioral context.

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?

Two concise sentences, front-loaded with action and resource, no unnecessary words.

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

Completeness5/5

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

Complete for a parameterless tool; explains purpose, cost, and use case; no output schema needed for such a simple return.

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?

No parameters; baseline 4 applies as schema coverage is 100% and description adds no param info needed.

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?

Clearly states it returns the account's current prepaid balance and is distinct from sibling tools (none of which are balance-related).

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

Usage Guidelines4/5

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

Explicitly tells to use for checking available funds before paid queries, providing clear context though no alternatives are listed.

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

check_dncA
Read-onlyIdempotent
Inspect

Check a US phone number against the Federal Do-Not-Call registry and the account's internal DNC list before calling or texting. Returns one of: OK-TO-DIAL, FEDERAL DNC, INTERNAL DNC, or UNAUTHORIZED (the account lacks DNC access for that number's area code). Call before any outbound dialing or texting to a US number to support TCPA compliance. Accepts 1-99 numbers per call.

ParametersJSON Schema
NameRequiredDescriptionDefault
phonesYesOne or more US phone numbers to check, digits only.
Behavior4/5

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

Annotations indicate read-only, idempotent, non-destructive. Description adds that unauthorized status occurs when account lacks area code access, providing useful behavioral context beyond annotations.

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, front-loaded with purpose and outcome, no redundant information.

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

Completeness5/5

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

Given no output schema, description explains the four return values. Covers input constraints, purpose, and behavior completely for a single-parameter tool.

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?

Schema coverage is 100% with description for 'phones' parameter. Description adds constraints (digits only, 1-99, US numbers) that supplement the schema.

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 clearly states the tool checks a US phone number against the Federal DNC registry and internal DNC list, with specific return values. This differentiates it from siblings like manage_dnc_list.

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

Usage Guidelines4/5

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

Explicitly says to call before outbound dialing or texting to support TCPA compliance. Does not mention when not to use or alternatives, 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.

find_emailB
Read-onlyIdempotent
Inspect

Find the email address for a person or business given their name and address. Provide the name either as fname plus lname, or as a single full name. Returns the contact's email.

ParametersJSON Schema
NameRequiredDescriptionDefault
zipNo
cityYes
nameNoFull name; alternative to fname + lname.
fnameNo
lnameNo
phoneNo
stateYes
addressYes
business_nameNo
Behavior3/5

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

Annotations already provide readOnlyHint, idempotentHint, and destructiveHint=false, so the safe, idempotent nature is clear. The description adds no new behavioral traits beyond stating it returns an email, which is already implied by the purpose. Given annotations, the burden is lowered, but the description provides minimal extra transparency.

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 two sentences, no fluff, and front-loaded with the main purpose. Every sentence earns its place.

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?

Given the tool has 9 params (3 required), no output schema, and siblings, the description covers the essential input variants and return value. It explains the key anyOf structure. Minor gaps: no mention of optional params like zip or phone, and no guidance on usage context. Still mostly complete for a simple lookup tool.

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 only 11% (only 'name' has a description). The description compensates by explaining the alternative parameter groups (fname+lname vs full name vs business_name), which helps agents understand the anyOf structure. However, other parameters like zip, phone, and the required address components are not explained beyond their schema types. Baseline is 3 due to low coverage, and the description adds some value but not enough for a higher score.

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 states the tool finds an email address for a person or business given name and address. It is specific about the resources (email) and input requirements. However, it does not differentiate from sibling tools like find_phone or lookup_email_owner, which have overlapping purposes.

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?

The description explains how to provide the name (fname+lname, full name, or business_name) but gives no guidance on when to use this tool versus alternatives like lookup_email_owner or screen_business_email. No explicit when-not-to-use or context for choosing among siblings.

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

find_phoneB
Read-onlyIdempotent
Inspect

Find phone number(s) for a person or business given their name and address. Provide the name either as fname plus lname, or as a single full name. Returns the contact's phone with its line type, plus up to five additional numbers when available.

ParametersJSON Schema
NameRequiredDescriptionDefault
zipNo
cityYes
nameNoFull name; alternative to fname + lname.
fnameNo
lnameNo
stateYes
addressYes
business_nameNo
Behavior3/5

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

Adds output details (line type, up to five additional numbers) beyond annotations, but annotations already cover read-only and idempotent aspects. No contradictions found.

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?

Two concise sentences, front-loaded with purpose and input, then output summary. No fluff or redundancy.

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?

Provides essential information for basic usage despite high parameter count and lack of output schema. Missing explicit person vs business differentiation and more detailed output field names.

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?

Explains the alternative name input options (fname+lname vs full name), which adds value over the schema's sparse descriptions (13% coverage). However, other parameters like zip or business_name are not elaborated.

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?

Clearly states the tool finds phone numbers for a person or business given name and address, and specifies input options. However, it does not differentiate from sibling tools like lookup_phone_owner or match_phone.

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 guidance on when to use this tool vs alternatives; no mention of prerequisites or contextual cues for choosing between person/business lookup.

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

geolocate_ipA
Read-onlyIdempotent
Inspect

Geolocate an IP address and assess its risk. Returns city, state, country, ZIP, latitude/longitude, area code, and timezone, plus security signals: proxy, VPN, TOR, relay, cloud-provider, and known-abuser/attacker/threat flags. Use to locate an IP or screen it for fraud and anonymization. Pairs well with screen_signup.

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYesThe IPv4 or IPv6 address to look up.
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, etc. The description adds valuable detail: exact geolocation fields and security signals (proxy, VPN, TOR, etc.), enhancing transparency beyond the structured data.

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, front-loaded with purpose and returns. Every sentence adds value: purpose, return list, usage guidance, and pairing suggestion. No waste.

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

Completeness5/5

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

With one required parameter and no output schema, the description fully explains return values (geolocation + security flags) and use cases. No gaps for an agent to infer.

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 only parameter 'ip' has a schema description explaining it accepts IPv4 or IPv6. The main description does not add additional semantic meaning beyond what the schema provides, so 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 clearly states the verb 'Geolocate' and resource 'IP address' with risk assessment. It distinguishes from sibling tools like 'lookup_zipcode' and 'screen_signup' by specifying unique outputs: city, state, country, security signals.

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

Usage Guidelines4/5

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

Explicitly says 'Use to locate an IP or screen it for fraud and anonymization' and mentions pairing with 'screen_signup'. Lacks explicit when-not-to-use but provides clear context.

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

get_account_rate_cardA
Read-onlyIdempotent
Inspect

Return the calling account's balance, access flags, DNC-authorized area codes, and the per-service billing rate for every data service this key can use. Call this to find out what an operation costs before running it, or to check whether the account is provisioned for a given service. Rates are per-lookup ceilings, not guaranteed charges. Free.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. Description adds meaningful context: returns rates for every service, rates are ceilings not guaranteed, and it's free.

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?

Four sentences, front-loaded with output and use cases. Every sentence adds value; no redundant or vague phrasing.

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

Completeness5/5

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

With no parameters and no output schema, description fully explains purpose, output, use cases, and behavioral nuances. 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.

Parameters4/5

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

No parameters in schema; description correctly omits parameter details. Baseline score of 4 applies for zero-parameter tools.

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?

Clearly states the tool returns account balance, access flags, DNC-authorized area codes, and per-service billing rates. Distinguishes from siblings like check_balance and check_dnc by listing comprehensive rate card data.

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

Usage Guidelines4/5

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

Explicitly advises using this tool to find costs before running an operation or to check provisioning. Lacks explicit alternatives but context implies specific tools for subset data.

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

get_account_usageA
Read-onlyIdempotent
Inspect

Return this account's API usage and spend over a time period: total spend, total query count, and a per-service breakdown. The period defaults to the current month if omitted. Free.

ParametersJSON Schema
NameRequiredDescriptionDefault
periodNoUsage window: today, current calendar month (default), or current calendar year.
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds that the tool is 'Free,' which provides cost transparency not covered by annotations. 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.

Conciseness5/5

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

The description is a single, front-loaded sentence that conveys purpose, return fields, default, and cost with no waste. Every part earns its place.

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

Completeness5/5

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

For a simple read-only tool with one optional parameter and no output schema, the description is complete: it covers purpose, return fields, default behavior, and cost. No gaps remain.

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%, with the only parameter 'period' fully described in the schema. The description adds no new parameter semantics beyond restating the default, so the baseline score of 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 clearly states the tool returns account API usage and spend over a time period, specifying total spend, total query count, and per-service breakdown. It distinguishes itself from siblings like get_subclient_usage and get_account_rate_card by focusing on the account's own usage.

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

Usage Guidelines4/5

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

The description explains the default period behavior, which guides usage. However, it does not explicitly mention when to use this tool versus alternatives like get_subclient_usage, though the context suggests account-level vs subclient-level distinction.

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

get_subclient_usageA
Read-onlyIdempotent
Inspect

Return usage for a specific subclient (sub-account) for a given year and month, broken down by product. Free. Use when usage must be attributed to a named subclient.

ParametersJSON Schema
NameRequiredDescriptionDefault
yearYesFour-digit year.
monthYesMonth number 1-12.
subclientYesThe subclient identifier.
Behavior5/5

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

Annotations already indicate readOnly, idempotent, non-destructive. The description adds that it's free and returns usage broken down by product, providing additional behavioral context beyond the annotations.

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?

Two brief sentences that immediately convey the tool's purpose and usage context. No wasted words; front-loaded with the core action.

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?

With no output schema, the description hints at the return structure ('broken down by product') and mentions it's free. While it doesn't detail units or possible pagination, it is adequate for a simple retrieval tool with well-described inputs and annotations.

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% with descriptions for all three parameters. The description does not add any extra semantics beyond what the schema already provides, so 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?

Clearly states the specific verb 'Return usage' for a specific subclient, year, and month, broken down by product. Distinguishes from account-level usage via sibling get_account_usage, especially with the guidance on attribution.

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

Usage Guidelines4/5

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

Explicitly says 'Use when usage must be attributed to a named subclient.' This provides clear context for when to use. It doesn't explicitly mention alternatives like get_account_usage, but the sibling tools and the description imply the distinction.

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

list_carrier_phonesA
Read-onlyIdempotent
Inspect

Return the phone numbers associated with a carrier, identified by its carrier_id (as returned by lookup_carrier). Use when you need the set of numbers belonging to a specific carrier. This can return very large result sets and is BILLED PER PHONE NUMBER RETURNED, so a single call can incur a large charge. Requires top-tier access.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccNoCountry: 'us' (default) or 'ca'.
limitNoMax phone numbers to return (default 1000, max 5000). Each is billed.
carrier_idYesThe carrier_id to enumerate.
Behavior5/5

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

Discloses critical behaviors beyond annotations: can return very large result sets, is billed per phone number returned, and requires top-tier access. No contradiction with annotations (readOnlyHint, etc.).

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?

Four sentences, each essential. Front-loaded with purpose, followed by usage indication, billing warning, and access requirement. No redundancy.

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?

Comprehensive given no output schema: explains input, output (phone numbers), billing, and large results. Missing explicit mention of pagination or continuation, but limit parameter covers that implicitly.

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?

Schema covers parameters fully (100% coverage). Description adds value by linking carrier_id to lookup_carrier and emphasizing billing for limit parameter, but does not add new semantics beyond schema descriptions.

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 clearly states the tool returns phone numbers for a carrier, and distinguishes it from the sibling tool lookup_carrier by specifying the input comes from that tool and the purpose is to enumerate numbers.

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?

Explicitly states when to use: 'Use when you need the set of numbers belonging to a specific carrier.' Also warns about billing implications and large result sets, providing clear usage context.

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

lookup_carrierA
Read-onlyIdempotent
Inspect

Identify the carrier for a US or Canadian phone number. Returns carrier name and ID, a wireless flag, line type (mobile/landline/VOIP), and the email-to-SMS and email-to-MMS gateway addresses when available. Use to find a number's carrier, check whether it is mobile, or obtain a gateway address for sending a text via email. Accepts 1-99 numbers per call. Cost is per number.

ParametersJSON Schema
NameRequiredDescriptionDefault
phonesYesOne or more phone numbers (US/Canada), digits only, e.g. 16175551212.
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, destructiveHint. The description adds cost ('Cost is per number') and details on return fields, providing value beyond annotations. 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.

Conciseness5/5

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

The description is concise (4 sentences), front-loaded with the primary purpose, then return fields, then use cases, then capacity/cost. Every sentence adds value without redundancy.

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

Completeness5/5

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

For a simple lookup tool with good annotations and full schema coverage, the description covers purpose, return fields, usage scenarios, capacity, and cost. No output schema exists, but the description explains return fields adequately. It is complete for the tool's complexity.

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% and includes a clear description and example for the 'phones' parameter. The tool description reiterates 'US or Canadian phone number' and 'digits only' but does not add significant new meaning beyond the schema.

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 clearly states the tool identifies carriers for US/Canadian phone numbers, lists specific return fields (carrier name, ID, wireless flag, line type, gateway addresses), and provides concrete use cases. It effectively distinguishes from siblings like lookup_carrier_international by specifying US/Canada.

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

Usage Guidelines4/5

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

The description explicitly directs usage: 'Use to find a number's carrier, check whether it is mobile, or obtain a gateway address...' and specifies capacity (1-99 numbers). It does not explicitly exclude alternatives or provide when-not-to-use, but the context is clear.

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

lookup_carrier_internationalA
Read-onlyIdempotent
Inspect

Identify the carrier for a phone number outside the US/Canada. The number must include its country code. Returns carrier name and ID, the country, and the ISO 3166 two-letter country code. Use for international carrier identification. Requires international-carrier access. Accepts 1-99 numbers per call.

ParametersJSON Schema
NameRequiredDescriptionDefault
phonesYesOne or more international phone numbers, each including its country code.
Behavior4/5

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

Annotations declare readOnlyHint, idempotentHint, and destructiveHint. The description adds valuable behavioral details: the access requirement, the mandatory country code, and the returned fields (carrier name/ID, country, ISO code). 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.

Conciseness5/5

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

The description is concise: two sentences plus a phrase. It front-loads the purpose and each sentence provides distinct value (scope, constraints, return, usage). No wasted words.

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

Completeness5/5

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

Given the simple parameter (1 required), no output schema, and existing annotations, the description covers all necessary context: purpose, input constraints, access requirements, and return information. No gaps identified.

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% with a clear description for the lone parameter 'phones'. The description reiterates the country code requirement and batch size (1-99), which are already in schema constraints. No additional semantic depth provided beyond the schema.

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 clearly states the verb 'identify' and the resource 'carrier for a phone number outside the US/Canada'. It effectively distinguishes from the sibling tool 'lookup_carrier' by specifying the international scope.

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

Usage Guidelines4/5

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

The description provides explicit context: numbers must include country code, accepts 1-99 numbers, and requires international-carrier access. However, it does not explicitly state when not to use this tool or mention alternatives, leaving some ambiguity but sufficient guidance for typical use.

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

lookup_email_ownerA
Read-onlyIdempotent
Inspect

Find the name and address associated with an email address (reverse email append). Returns name, phone, address, business, and gender where available. Use to identify who an email belongs to.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYesThe email address to reverse-look-up.
Behavior4/5

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

Annotations already indicate readOnlyHint=true, idempotentHint=true, destructiveHint=false. Description adds that data is available 'where available', implying optional completeness. No additional behavioral traits disclosed, but annotations carry most of the burden.

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?

Description is three concise sentences. It front-loads the action and returns, with no fluff. Each sentence adds value.

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

Completeness5/5

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

Given the tool's simplicity (one parameter, no output schema), description adequately explains what it does and what it returns. No gaps.

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 has one parameter 'email' with a clear description. Schema description coverage is 100%. Description does not add meaningful info beyond the schema, so 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?

Description clearly states the tool's purpose with specific verb 'Find' and resource 'email address'. It explains the return fields (name, phone, address, business, gender). Differentiates from sibling 'lookup_phone_owner' by focusing on email.

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?

Description says 'Use to identify who an email belongs to', which implies usage context. However, it does not specify when not to use it or mention alternative tools for similar tasks.

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

lookup_phone_nameA
Read-onlyIdempotent
Inspect

Find the name on a phone line (CNAM / caller-ID name). Returns the subscriber's name when available; when no name is on file it returns the city/state tied to the number instead. Does NOT return a postal address. Cheaper and often more accurate than lookup_phone_owner when you only need the name -- use lookup_phone_owner when you also need the address. Accepts 1-99 numbers per call.

ParametersJSON Schema
NameRequiredDescriptionDefault
phonesYesOne or more phone numbers to look up the name for, digits only.
Behavior4/5

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

Annotations already indicate readOnlyHint, idempotentHint, etc. The description adds that it returns subscriber name or city/state if name not available, and does NOT return postal address. This provides useful behavioral context beyond annotations.

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 with no wasted words. Front-loaded with core purpose, then key details, then usage guidance.

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?

Given the simple nature (1 param, no output schema, clear annotations), the description sufficiently explains what the tool does and doesn't do. Could mention that it is a lookup operation, but not required.

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 schema covers the parameter fully, and the description adds that phones must be digits only and specifies the quantity range (1-99 numbers), which adds meaning beyond the schema.

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 clearly states the tool finds the name on a phone line (CNAM/caller-ID name) and distinguishes from the sibling tool lookup_phone_owner by specifying use cases.

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?

Explicitly provides when to use this tool vs the alternative: 'Cheaper and often more accurate than lookup_phone_owner when you only need the name -- use lookup_phone_owner when you also need the address.' Also specifies input constraints (1-99 numbers).

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

lookup_phone_ownerA
Read-onlyIdempotent
Inspect

Find the name and address associated with a phone number (reverse phone append). Returns name, address, email, business name, and gender where available. Use to identify who a number belongs to. Accepts 1-99 numbers per call.

ParametersJSON Schema
NameRequiredDescriptionDefault
phonesYesOne or more phone numbers to reverse-look-up, digits only.
Behavior4/5

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

Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds value by specifying return fields and data availability ('where available'), and the batch size constraint. 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.

Conciseness5/5

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

Three sentences, front-loaded with purpose, no unnecessary words. Every sentence adds useful information (what it does, return fields, batch limit). Highly efficient.

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?

Given no output schema, the description adequately describes return fields. For a simple reverse lookup tool with good annotations, it is mostly complete. Could mention return format (array per phone) but current completeness is sufficient.

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%; the single parameter 'phones' is well-described in the schema (digits only, min/max items). The description adds 'reverse phone append' and 'digits only' but largely repeats schema info. Baseline 3 is appropriate as schema does the heavy lifting.

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?

Description clearly states the tool's purpose: 'Find the name and address associated with a phone number' and lists specific return fields (name, address, email, business name, gender). It distinguishes from sibling tools like lookup_email_owner and lookup_phone_name by specifying 'reverse phone append' and the exact data returned.

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?

Description provides usage context: 'Use to identify who a number belongs to.' and mentions batch size (1-99 numbers per call). However, it does not clearly differentiate from similar siblings like lookup_phone_name or provide when-not-to-use guidance, limiting its utility for agent decision-making.

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

lookup_profileA
Read-onlyIdempotent
Inspect

Return a deep consumer profile for a person, given any combination of phone, name, address, and email. Returns demographic, employment, and asset information. This is the broadest and most expensive enrichment service; use it when you need a full profile rather than a single appended field. Supply as many identifiers as are available. Requires profile access.

ParametersJSON Schema
NameRequiredDescriptionDefault
zipNo
cityNo
nameNoFull name; alternative to fname + lname.
emailNo
fnameNo
lnameNo
phoneNo
stateNo
addressNo
Behavior4/5

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

Annotations already indicate readOnly, idempotent, openWorld. Description adds that it is expensive, returns demographic/employment/asset info, and requires profile access. This goes beyond annotations without contradiction.

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 focused sentences: purpose, return content, usage guidance. No wasted words.

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 tool with 9 params, no output schema, and many siblings, the description provides enough context: what it returns, when to use, and what identifiers to provide. Could potentially detail return format but overall sufficient.

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 has 9 params with only 11% coverage. Description lists phone, name, address, email as examples but omits zip, city, state, fname, lname. States 'any combination' which adds flexibility but does not fully compensate for the low schema documentation.

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?

Description clearly states it returns a deep consumer profile given identifiers like phone, name, address, email. Distinguishes from siblings by calling it the broadest and most expensive enrichment service.

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?

Explicitly says when to use (for full profile vs single appended field) and provides guidance to supply as many identifiers as possible. Also notes requirement for profile access.

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

lookup_propertyA
Read-onlyIdempotent
Inspect

Look up property data for a US street address. Returns owner name, assessed value, last sale price and date, beds/baths, building and lot area, year built, foreclosure status, equity, and parcel info. Use for real-estate or property-ownership research. US only.

ParametersJSON Schema
NameRequiredDescriptionDefault
zipNoProperty ZIP code. Optional.
cityYesProperty city.
stateYesProperty state.
addressYesProperty street address.
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, destructiveHint=false. The description adds context about return fields and geographic scope but does not contradict annotations. A score of 3 is appropriate as the description provides some added value beyond annotations.

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 two sentences long, front-loaded with the action and return value, and every sentence adds value. No wasted words.

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?

Given no output schema, the description lists the return fields, which is helpful. It also specifies usage context. For a lookup tool with good annotations, this is fairly complete, missing only minor details like result format or pagination.

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% with clear descriptions for each parameter. The tool description does not add new parameter-level details beyond what the schema provides, so baseline 3 is correct.

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 exactly what the tool does: 'Look up property data for a US street address' and lists the specific data returned. It clearly distinguishes itself from sibling tools that deal with emails, phones, or carriers.

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

Usage Guidelines4/5

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

The description specifies 'Use for real-estate or property-ownership research. US only.' providing clear context and a geographic constraint. It does not explicitly state when not to use it, but the sibling list offers implicit alternatives, and the 'US only' sets a clear boundary.

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

lookup_zipcodeA
Read-onlyIdempotent
Inspect

Find the ZIP code and standardized address components for a US city/state (and optional street address). Returns the ZIP, ZIP+4, street components, county, area code, timezone, and related fields. US only.

ParametersJSON Schema
NameRequiredDescriptionDefault
cityYesCity.
stateYesState.
addressNoStreet address. Optional.
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, covering safety. The description adds behavioral context: US-only restriction and lists return fields (ZIP, ZIP+4, street components, county, etc.), providing useful information beyond annotations.

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?

Two efficient sentences: first states purpose, second lists outputs and scope. No wasted words, front-loaded, and easy to parse.

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?

Given the tool's simplicity and good annotations, the description covers purpose, parameters, and outputs. Lacks details on input formatting or error cases, but overall adequate for a lookup tool. Adding a note about validation requirements would improve completeness.

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% with clear descriptions for all three parameters. The description adds minimal extra meaning (e.g., 'optional' for address, 'city/state' as required), not significantly beyond the schema. Baseline 3 is appropriate.

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 states the tool finds ZIP code and address components for a US city/state, with optional street address. The verb 'Find' and resource 'ZIP code and standardized address components' are specific. It distinguishes from sibling 'reverse_zipcode' by inference but lacks explicit differentiation.

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 guidance on when to use this tool vs alternatives like reverse_zipcode. Does not mention prerequisites, exclusions, or cases where it should not be used.

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

manage_dnc_listA
Idempotent
Inspect

Add or remove a phone number on the account's internal Do-Not-Call list. Use action 'add' when someone opts out or requests no further contact, and 'remove' to reverse it. Returns a confirmation of ADDED or REMOVED.

ParametersJSON Schema
NameRequiredDescriptionDefault
phoneYesThe phone number to add or remove, digits only.
actionYesWhether to add to or remove from the internal DNC list.
Behavior4/5

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

Annotations already cover mutation (readOnlyHint=false), non-destructiveness (destructiveHint=false), and idempotency (idempotentHint=true). The description adds the confirmation message (ADDED or REMOVED), which provides useful response context beyond annotations.

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?

Two concise sentences with no extra words; the first sentence front-loads the purpose and the second provides usage guidance, making it efficient for an agent to parse.

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 tool with 2 parameters, an enum, and no output schema, the description covers purpose, usage, and return value adequately. Missing details like error conditions, but given its simplicity, it is complete enough.

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

Parameters5/5

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

Schema covers 100% of parameters with descriptions. The description adds context for the 'action' parameter ('add when someone opts out, remove to reverse') and mentions the response confirmation, providing full clarity beyond the schema.

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 clearly states the specific verb 'Add or remove' targeting the 'account's internal Do-Not-Call list', which distinguishes it from sibling tools like 'check_dnc' that read the list.

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

Usage Guidelines4/5

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

Explicitly instructs when to use 'add' (opt-out, no further contact) and 'remove' (reverse), but does not mention scenarios where the tool should not be used, though it is sufficient for this dual-action tool.

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

match_phoneA
Read-onlyIdempotent
Inspect

Determine whether a phone number plausibly belongs to a given person or company. Checks the line (carrier + in-service for mobiles) and compares the name on the line to the name/company you supply. Returns a YES/NO match and the name found on the line. Use to confirm a phone belongs to a known person -- e.g. identity confirmation or contactability checks.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoFull name to match against.
fnameNo
lnameNo
phoneYesThe phone number to check, digits only.
companyNoCompany name to match against (alternative to a person name).
Behavior4/5

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

Annotations already indicate readOnlyHint=true, idempotentHint=true, destructiveHint=false. Description adds specifics: it checks carrier and in-service, then compares the line name to supplied name/company. 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.

Conciseness5/5

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

Two sentences, no wasted words. Front-loaded with clear purpose, followed by process and usage. Every sentence is valuable.

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?

No output schema, but description explains return values (YES/NO and name). Adequately covers input parameters (except fname/lname explicitly). For a moderate-complexity tool, it is fairly complete.

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 60% (3 of 5 params described). Description explains name, phone, company for matching but does not mention fname and lname as alternatives. Adds some meaning by describing how parameters are used, but fname and lname lack explanation.

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?

Description states the tool determines if a phone number plausibly belongs to a person or company. It specifies the process (checks carrier, in-service, compares name) and output (YES/NO and name). Distinguishes from sibling lookup tools by emphasizing matching to a known identity.

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

Usage Guidelines4/5

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

Explicitly says 'Use to confirm a phone belongs to a known person' and gives examples (identity confirmation, contactability checks). Does not explicitly state when not to use or list alternatives, but the context is sufficient for a knowledgeable agent.

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

reverse_zipcodeA
Read-onlyIdempotent
Inspect

Look up information about a US ZIP code. Given a 5- or 9-digit ZIP, returns city, state, county, area code, timezone, congressional district, and related fields. US only.

ParametersJSON Schema
NameRequiredDescriptionDefault
zipYesA 5- or 9-digit ZIP code (NNNNN or NNNNN-NNNN).
Behavior3/5

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

Annotations already declare safe, read-only, idempotent behavior. Description adds specific fields returned and US-only constraint, providing modest additional behavioral context.

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?

Two concise sentences with no waste, clearly front-loaded with action and scope.

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?

Adequately complete for a simple lookup tool with good annotations and full schema coverage. Could mention returned fields more explicitly but not necessary given output schema absence.

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 covers parameter fully with clear description. Description repeats input format but adds no new meaning beyond 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?

Clearly states it looks up US ZIP code info, lists returned fields, and specifies input format. However, does not differentiate from sibling 'lookup_zipcode' which likely has similar purpose.

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?

Implies usage for US ZIP codes requiring city/state/county etc., and restricts to US only. Lacks explicit guidance on when not to use or comparison to alternatives.

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

screen_business_emailA
Read-onlyIdempotent
Inspect

Decide whether a signup email belongs to a real person at a legitimate business, so you can reject free, personal, disposable, or throwaway addresses at account signup. Given an email (and optionally the signup name), returns a 0-100 score, a business_email true/false verdict (true when score >= 50), reason codes, the domain class (business / free webmail / ISP / alias-relay / disposable / spam), the mail host, domain age, website status, and mailbox type. This is a signup-gating heuristic, NOT a mailbox-deliverability check -- use verify_email for deliverability. Set strict=true to hard-reject free/personal providers outright.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoThe signup name (full name). Optional; corroborates the email's local part.
emailYesThe signup email address to evaluate.
strictNoWhen true, free-webmail / ISP / alias-relay / brand-new-domain addresses are hard-rejected instead of scored low.
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds behavioral details: returns a score, verdict, reason codes, domain class, mail host, domain age, website status, mailbox type, and explains the strict parameter's effect. 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.

Conciseness4/5

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

The description is concise, front-loads the purpose, and packs essential details into two sentences. Every sentence adds value without redundancy.

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

Completeness5/5

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

Given no output schema, the description comprehensively lists return fields (score, verdict, reason codes, domain class, etc.). It handles all three parameters, explains the strict option, and addresses potential confusion with sibling tools. The description 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.

Parameters3/5

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

Schema coverage is 100% for the three parameters. The description adds minor semantic value: 'name corroborates email local part' and 'strict hard-rejects free providers', but the schema already describes the parameters adequately.

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 uses specific verbs (decide, reject) and identifies the resource (signup email) with clear criteria (real person, legitimate business). It distinguishes itself from the sibling verify_email by explicitly stating it is a signup-gating heuristic, not a deliverability check.

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?

Explicitly states when to use (account signup) and when not to use (mailbox deliverability), and directs to the alternative tool verify_email. The strict parameter guidance further clarifies conditional usage.

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

screen_signupA
Read-onlyIdempotent
Inspect

Assess whether a new-account signup is likely legitimate or fraudulent. Given the identity details supplied at signup, returns a 1-100 legitimacy score (under 50 is suspicious, over 80 is likely legitimate), the specific cross-checks that matched or failed (e.g. city vs IP, name vs phone), and notes such as VOIP phone, disposable email, or proxy server. Supply as many fields as are available -- more inputs produce a more reliable score.

ParametersJSON Schema
NameRequiredDescriptionDefault
ipNoIP address the user signed up from.
zipNo
cityNo
emailNo
phoneNo
stateNo
addressNo
lastnameNo
firstnameNo
company_urlNo
company_nameNo
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds valuable context: returns a 1-100 score, specific cross-checks matched/failed, and notes like VOIP phone or proxy server. This goes beyond the annotations.

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 two sentences with no fluff. The first sentence front-loads purpose and output; the second sentence gives usage guidance. Every sentence adds value.

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?

Given the complexity of 11 optional parameters and no output schema, the description covers the tool's behavior and return values (score, checks, notes). It could elaborate on specific checks but is sufficient for an AI agent to understand core functionality.

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 only 9% (only 'ip' has a description). The description compensates by explaining that fields are used for identity checks and that more inputs improve reliability. However, it does not provide specific semantics for each parameter, leaving meaning partially inferred.

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 uses specific verbs ('assess whether...legitimate or fraudulent') and clearly states the tool's scope for new-account signup. It distinguishes itself from sibling tools by focusing on signup fraud screening with a scoring mechanism, rather than general identity verification or lookups.

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

Usage Guidelines4/5

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

The description clearly implies usage at signup time ('Given the identity details supplied at signup') and encourages providing many fields. However, it does not explicitly mention when not to use or compare with alternatives like screen_business_email or validate_lead.

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

validate_leadA
Read-onlyIdempotent
Inspect

Validate a contact before outreach in a single call. Given a phone and/or email, confirms the phone is active, confirms the email is deliverable, and checks the phone against Federal and internal Do-Not-Call lists. Returns a consolidated assessment so a caller can decide whether and how to make contact. Each underlying check is billed separately. Provide a phone, an email, or both.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailNoEmail to verify deliverability.
phoneNoPhone to verify and DNC-check, digits only.
Behavior4/5

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

The description adds billing context beyond the annotations, which already mark the tool as read-only, idempotent, and non-destructive. 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.

Conciseness5/5

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

Three sentences, front-loaded with the main purpose, each sentence adds value. No wasted words.

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?

The description mentions a 'consolidated assessment' but does not detail the return format. Given no output schema, the agent lacks guidance on interpreting the result, which is a gap for a multi-check tool.

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?

With 100% schema coverage, the description repeats the schema's parameter descriptions almost verbatim (e.g., 'digits only' for phone). It adds no new meaning beyond what the schema already provides.

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 clearly states the tool validates a contact before outreach, confirming phone active, email deliverable, and checking DNC lists. It specifies the consolidated nature, distinguishing it from sibling tools that perform individual checks.

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

Usage Guidelines4/5

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

The description implies using this tool for bundled validation before outreach and mentions separate billing, hinting that single checks might be done with sibling tools. However, it does not explicitly state when not to use it or name specific alternatives.

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

verify_addressA
Read-onlyIdempotent
Inspect

Validate and standardize a US postal address against USPS standards. Returns whether the address is valid plus corrected and standardized fields (street components, city, state, ZIP+4, county, and related fields). Use to clean or confirm a mailing address. US only.

ParametersJSON Schema
NameRequiredDescriptionDefault
zipNoZIP code. Optional.
cityYesCity.
stateYesState.
addressYesStreet address.
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint as safe. The description adds that the tool returns a validity status and standardized fields (street components, city, state, ZIP+4, county), providing useful behavioral context beyond the annotations.

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 three sentences, front-loaded with the core action and standard, followed by return value and usage. No wasted words; every sentence adds value.

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

Completeness5/5

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

For a simple query tool with 4 parameters and no output schema, the description covers the main purpose, return fields, and geographic limitation. It is complete enough 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.

Parameters3/5

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

Schema coverage is 100% with descriptive parameter names and descriptions. The description does not add significant per-parameter detail, but given the schema already documents them adequately, 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.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool validates and standardizes US postal addresses against USPS standards. It specifies 'US only' and distinguishes itself from sibling tools focused on email, phone, or ZIP code lookups by clearly focusing on full address validation.

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

Usage Guidelines4/5

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

The description explicitly says 'Use to clean or confirm a mailing address. US only,' providing clear context for when to use. It does not explicitly name alternative tools for non-US or related lookups, but the exclusion is clear.

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

verify_emailA
Read-onlyIdempotent
Inspect

Check whether an email address is valid and deliverable. Returns whether it is valid, the reason, whether it is a free provider (gmail, yahoo, etc.), and whether it is a disposable/temporary address. Use before sending email or to clean a contact record.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYesThe email address to verify.
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false. Description adds details about return fields (valid, reason, free provider, disposable) but does not disclose behavioral traits like rate limits or authentication needs. With annotations present, the description adds some value beyond them.

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?

Two sentences, no wasted words. Front-loaded with action and result. Every sentence earns its place.

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

Completeness5/5

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

For a simple verification tool with one parameter, no output schema, and thorough annotations, the description fully captures purpose, return values, and usage context.

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 has 100% description coverage for the single parameter 'email'. The description simply repeats 'The email address to verify.' No additional meaning beyond schema is provided, so baseline 3 applies.

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?

Description clearly states the tool checks if an email is valid and deliverable, listing specific return fields (valid, reason, free provider, disposable). Distinguishes from sibling tools like find_email (search) and screen_business_email (business screening).

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

Usage Guidelines4/5

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

Explicitly recommends usage 'before sending email or to clean a contact record.' Does not mention when not to use or alternatives, but the context is clear given sibling tools.

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

verify_phoneA
Read-onlyIdempotent
Inspect

Check whether a phone number is active and able to receive calls. Returns an active flag (YES/NO) and a confidence level (high/low). A YES with high confidence is most likely reachable; a NO with high confidence is least likely. Use to confirm a number is live before calling or texting.

ParametersJSON Schema
NameRequiredDescriptionDefault
phoneYesThe phone number to verify, digits only.
Behavior5/5

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

Annotations indicate readOnly, idempotent, non-destructive. The description adds behavioral context by explaining the return values (active flag, confidence level) and their interpretation, which is beyond the annotations.

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?

Two sentences, no fluff, efficiently conveys purpose, return format, and usage context. Front-loaded with key information.

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

Completeness5/5

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

For a simple tool with one parameter, full annotations, and output schema absent but return values explained, the description is complete and leaves no gaps.

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% with a clear description of the 'phone' parameter as digits only. The description does not add new parameter details but confirms the format implicitly.

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 clearly states the tool checks if a phone number is active and reachable, with specific verb 'verify' and resource 'phone'. It distinguishes from siblings like 'find_phone' or 'match_phone' by focusing on activity status.

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

Usage Guidelines4/5

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

The description advises using the tool to confirm a number is live before calling or texting, providing clear context. It does not explicitly mention when not to use it, but the use case is well-defined.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources