Skip to main content
Glama

find_contacts

Find a company website's public contact details -- the tool to reach for when someone needs an email address, phone number or social profile for a business. Reads the homepage plus up to three likely pages (/contact, /about ...) and returns email addresses (including Cloudflare-obfuscated ones), phone numbers, social profiles (LinkedIn, X/Twitter, Facebook, Instagram, YouTube, TikTok, GitHub) and the contact page URL. Up to 5 sites per call; a site behind a bot-protection challenge is reported as blocked, never guessed. Paid: $0.02 per call in USDC on Base via x402 -- call once without x_payment to receive the payment challenge.

Input Schema

NameRequiredDescriptionDefault
urlsYesSites to read: homepage URLs or bare domains (max 5)
x_paymentNoOptional X-PAYMENT header value from a completed x402 payment. Omit on first call to receive the payment challenge; complete the payment with your x402 wallet tooling, then retry with this set.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.4/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so: it discloses crawl scope (homepage plus up to three likely pages), that Cloudflare-obfuscated emails are decoded, that bot-protected sites return 'blocked' rather than fabricated data, and the batch ceiling of 5 sites. It also surfaces the paid x402 flow and the exact first-call protocol (omit x_payment to get the challenge, then retry), which is the kind of operational detail an agent cannot guess.

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-loaded with the purpose and the selection condition, then the crawl behavior, then the return contents and payment mechanics, in a sensible order. The social-platform enumeration and parenthetical asides are slightly dense but each maps to a real decision the caller makes.

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 two-parameter, no-annotation, no-output-schema tool, the description supplies everything needed to invoke it correctly: what gets fetched, what comes back, the batch cap, the blocked-site failure mode, and the two-step payment handshake. No output schema exists, yet the return payload is enumerated field by field.

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

Parameters3/5

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

Schema description coverage is 100%, so both parameters are already documented, and the description largely restates them ('up to 5 sites per call' mirrors the max-5 note on urls; the payment challenge wording mirrors x_payment). It adds no syntax guidance on how bare domains versus full URLs are normalized, so it does not go meaningfully 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?

States a specific verb and resource ('Find a company website's public contact details') and immediately narrows the output set to email, phone and social profiles. That framing separates it cleanly from generic fetching siblings like read_page or render_url, which return whole pages rather than structured contact 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?

Gives a clear triggering condition ('when someone needs an email address, phone number or social profile for a business') and a per-call batch limit, so an agent knows the shape of the task it fits. It stops short of naming an alternative sibling or stating when not to use it (e.g. single-page extraction or non-business contacts), leaving that inference to the caller.

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.

Resources