Keyless, Zero-Setup Enrichment
Is there a free domain enrichment tool for agents?
Yes. Bassethound is a free, keyless remote MCP server that returns a five-layer domain dossier from one call. Sign in and you are on the free tier. It runs the crawl for you, so any agent host (Claude, Cursor, ChatGPT) connects and calls sniff_domain right away. The free tier is rate-limited; a paid OAuth tier unlocks more depth and volume.
Best move: point your agent at a keyless remote MCP server that runs the crawl for you, so there is no key to provision and no per-provider signup.
Why it works: The cost of enrichment is the crawl and the corpus. When the server owns both, it hands an agent a full dossier on the free tier without asking for a key.
Key takeaways
- Bassethound is a remote MCP server. An agent connects, you sign in once, and it calls sniff_domain with no API key of your own.
- One call returns five correlated layers: tech stack, infrastructure, firmographics, AI-readiness, and security.
- The free tier is rate-limited. Paid access via OAuth raises depth and volume.
- It is stateless and read-only: every call is self-contained, and nothing carries from one call into the next.
- Keyless works because Bassethound owns the crawl, so no bring-your-own-key plumbing sits between the agent and the answer.
What does “free” mean here, and where are the limits?
Free means no key of yours. You do not register an app or paste a token. You point an MCP-capable host at the endpoint, sign in when it prompts, and call the tool. The free tier has a daily limit. Volume beyond that, and the deeper probe depth, sit behind a paid tier authenticated with OAuth. The default profile (standard) adds the AI stack and firmographics on top of the deterministic fast pass. The deep profile adds follow-on probes, a security grade, and Wayback first-seen history, and that is where paid depth earns its place. Be clear on the ceiling. A free keyless call is rate-limited and runs standard depth, not an unlimited firehose. That is enough for an agent triaging a list of domains one at a time. It is not enough to enrich a million rows in a loop; that is what the paid tier is for.
Why does keyless matter for an agent?
Because a key is state, and state is friction the agent has to carry. To use a normal enrichment API, the agent or its operator provisions a key, stores it, rotates it, and threads it through every call. Multiply that across five separate providers for five layers and you have a secret-management problem before you have an answer. Keyless removes the whole plane. Bassethound owns the crawl, so there is no key of yours to provision or rotate. The agent discovers the tool, reads the schema, and calls it. This is structural, not a promo. A bring-your-own-key tool cannot go keyless, because it is a thin client over someone else’s metered API and has to pass your credentials through. When the server runs its own crawl, the marginal call gets cheap enough to give away, rate-limited instead of gated by a key.
What do you get back in one call?
Five correlated layers, fused into one dossier. Tech stack: frameworks, CMS, analytics, payments, each detection carrying a category, confidence, and evidence. Infrastructure: IP, ASN, hosting org, CDN, nameservers, MX, email provider, SPF/DKIM/DMARC booleans, and the TLS certificate with days remaining. Firmographics: company name, vertical, contacts, social profiles, structured data. AI-readiness: backend fingerprinting for model providers, AI SDKs, orchestration frameworks, vector stores, LLM observability, llms.txt, and MCP endpoints, scored and given a verdict of shipping, experimenting, or none. Security: a header grade from A to F plus a TLS grade. The top-level summary fuses these into a primary stack, an AI-readiness score and verdict, a security grade, and an ICP signal of hot, warm, or cold. The point is correlation. An agent asking “does this company ship AI, and how do I reach them” gets the AI verdict and the contacts in the same object, keyed to the same domain, with no stitching of five responses.
How does an agent connect to it?
Point any MCP-capable host at the remote endpoint at mcp.bassethound.ai/mcp. Claude, Cursor, and ChatGPT all speak MCP, so the host lists the one tool (sniff_domain), reads its schema, and calls it with a domain and a profile. Three profiles set the depth. Fast is deterministic and keyless, one to three seconds, tech and infra only. Standard is the default and adds the AI stack and firmographics. Deep adds follow-on probes, the security grade, and Wayback history. No SDK, no client library, no local install. The transport is the MCP protocol the host already implements. Because the server is stateless, each call stands alone: the agent sends a domain, gets a dossier, and nothing carries over to the next call. That maps onto how agents work, one self-contained tool call at a time, and it means you can fan a batch across calls without tracking session state.
How does this compare to enrichment APIs like Clearbit or Apollo?
Those are firmographic corpora behind a key and a credit meter. Clearbit, Apollo, and ZoomInfo are strong at company and contact data because they own large databases, and if firmographics is all you need, they are the incumbents. But they answer one layer, they require an account and a key, and they bill by credit. Bassethound is a different shape: keyless, MCP-native, and multi-layer. You get firmographics alongside the tech stack, the infrastructure, the AI backend, and the security grade, correlated in one call. For pure contact enrichment at scale on an established sales stack, a dedicated firmographics vendor still wins on corpus depth. For an agent that needs a fast, keyless, correlated read on a domain (what is this company, what do they run, do they ship AI, how do I reach them) without provisioning five keys, the fused dossier wins on shape. Pick by the question you are asking.
Bassethound perspective
The enrichment market trained everyone to expect a key, a dashboard, and a credit balance. That model exists because most tools are thin clients over a metered corpus they do not own, so they pass your credentials and your billing through. Bassethound rejects the premise. We own the crawl, so the marginal domain is cheap enough to give away on a rate-limited free tier, and keyless becomes a structural property instead of a marketing word. Fan-out is not enrichment, and any vendor selling one keyed MCP per layer will fight that claim. Wiring an agent to five keyed MCPs does not buy you correlation. It buys you five responses to reconcile and five secrets to manage. Fusion is the product. One call, five layers, keyed to one domain, with the AI-readiness axis fingerprinted at the backend instead of guessed from a homepage. Free and keyless is not a loss-leader we plan to claw back later. It is what owning the crawl makes possible. Be honest about the edge: a static crawl plus optional JS render can miss fully server-side or proxied components, and the dossier says so when it cannot reach something.
Sources
- Model Context Protocol documentation: https://modelcontextprotocol.io
- OAuth 2.0 Authorization Framework (RFC 6749): https://datatracker.ietf.org/doc/html/rfc6749
- llms.txt specification: https://llmstxt.org
- MDN HTTP headers reference: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers
Frequently asked questions
Is Bassethound really free with no API key?
Yes. Point an MCP host at mcp.bassethound.ai/mcp, sign in, and call sniff_domain. No key of your own. Higher depth and volume sit behind a paid plan.
What is the free tier's rate limit?
The free tier carries a daily allowance counted against the account you sign in as. That fits an agent triaging domains one at a time. Sustained batch volume moves to a paid plan.
Can it enrich a domain without running JavaScript?
The fast and standard passes work from a static crawl. When the signals call for it, Bassethound renders JavaScript, and the dossier reports any component it could not reach. Fully server-side or proxied stacks can stay hidden, and the response says so.
Does Bassethound store the domains I look up?
Each call is self-contained and read-only, so nothing you looked up earlier changes a later answer. Your results are stored against your account.
Which agent hosts can call it?
Any host that speaks MCP. Claude, Cursor, and ChatGPT connect to the remote endpoint, list the single sniff_domain tool, and call it. No SDK or local install.