Skip to main content
Glama

Business lookup: who is this phone number or website? (paid, $0.01)

leads_lookup
Read-only

PAID over x402 inside this tool call ($0.01 USDC on Base or Arc per lookup that finds a business; no match, no charge): give a US phone number or a website and get the local business behind it: name, address, category, the best email graded A/B/C, a contact name when the email shows one, socials and buying signals. A website only matches when it carries the business's own phone number. Call once without payment to get the x402 PaymentRequired, then again with the signed payment in _meta["x402/payment"].

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
phoneNoA US phone number, any format: 4043552001, (404) 355-2001, +14043552001. Give phone or domain.
domainNoOr a website: example.com or https://www.example.com/contact.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
noteNoNotes
countNoBusinesses returned
foundNoWhether a business matched
queryNoThe phone or domain looked up
priceUsdNoPrice of this call
sharedByNoTotal listings sharing this number or website
businessesNoEach business, same fields as a lead plus chain

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": {},
      +  "properties": {
      +    "businesses": {
      +      "description": "Each business, same fields as a lead plus chain",
      +      "items": {},
      +      "type": "array"
      +    },
      +    "count": {
      +      "description": "Businesses returned",
      +      "type": "number"
      +    },
      +    "found": {
      +      "description": "Whether a business matched",
      +      "type": "boolean"
      +    },
      +    "note": {
      +      "description": "Notes",
      +      "type": "string"
      +    },
      +    "priceUsd": {
      +      "description": "Price of this call",
      +      "type": "number"
      +    },
      +    "query": {
      +      "additionalProperties": {},
      +      "description": "The phone or domain looked up",
      +      "properties": {},
      +      "type": "object"
      +    },
      +    "sharedBy": {
      +      "description": "Total listings sharing this number or website",
      +      "type": "number"
      +    }
      +  },
      +  "type": "object"
      +}
  2. Added

TDQS

A4.6/5.0
Behavior5/5

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

Goes far beyond the annotations (readOnly/openWorld/idempotent=false/non-destructive) by disclosing the paid pricing model, the no-match-no-charge policy, the exact payment handshake via _meta['x402/payment'], the chain (Base or Arc), and the subtle match rule that a website only resolves when it carries the business's own phone. This is exactly the behavioral context an agent needs before invoking.

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?

Front-loads the PAID designation and pricing, then the entity description, then match semantics and the call protocol. Dense but every clause carries information; slightly heavy within a single paragraph, which keeps it from a 5.

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?

An output schema exists, so return fields needn't be re-explained, and the annotations carry the safety profile. The description fills the remaining gaps — payment flow, pricing, match conditions — leaving nothing an agent needs to call this correctly undefined.

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 description coverage is already 100% for phone/domain, so the baseline is 3. The description adds genuine meaning beyond the schema: the constraint that a domain only matches when it carries the business's own phone number, and the phone-or-domain exclusivity implied by 'give a US phone number or a website'.

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?

States a specific verb+resource (look up the local business behind a phone number or website) and enumerates the returned fields (name, address, category, graded email, contact name, socials, buying signals). This clearly distinguishes it from siblings like leads_search, leads_count, and leads_tech, which operate on lists rather than single-entity resolution.

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?

Gives a clear precondition ('give a US phone number or a website'; website only matches when it carries the business's own phone number) and a full usage protocol (call once unpaid to get PaymentRequired, then again with the signed payment). It stops short of explicitly naming when to prefer leads_search over this tool, so it's clear context rather than explicit alternatives.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.