Partner and Vendor Due Diligence

What does a domain reveal for M&A due diligence?

A domain reveals a target's real tech stack, hosting and email infrastructure, firmographics, AI backend, and security grade, correlated in one pass. For M&A that means you can verify technical claims, price integration and security risk, and check whether AI capabilities ship or only market. Bassethound returns all five layers in a single keyless call, before you sign an NDA.

Best move: pull the five-layer dossier on the target’s domain before the data room opens, and use it to write your technical diligence questions.

Why it works: a domain exposes the real stack, infrastructure, and security posture from the outside, with no cooperation from the target. You walk into diligence already knowing where the pitch and the code disagree.

Key takeaways

  • A domain scan runs from the outside with no target cooperation, so you can start diligence before an NDA or data room.
  • The infrastructure layer surfaces integration and security risk: TLS expiry, CDN and hosting org, email-auth (SPF/DKIM/DMARC), and a header grade A-F.
  • Deep AI-stack detection separates shipped AI from slideware by fingerprinting model providers, SDKs, orchestration, and vector stores in the running app.
  • Fusion is the value: one call correlates tech, infrastructure, firmographics, AI, and security, so you read a target whole instead of stitching five reports.
  • A static crawl cannot see server-side or proxied components, so the dossier marks its gaps and hands you the questions to ask in the data room.

What can you verify before signing an NDA?

Everything the dossier reads is public. DNS, TLS certificates, HTTP responses, and the client code a page loads. No login, no cooperation from the target, nothing carried from one call to the next. So you run it during sourcing, before the NDA, before management knows you are looking. You get the primary_stack (frameworks, CMS, ecommerce, payments), the hosting and email infrastructure, firmographics from structured data and social profiles, an AI-readiness verdict, and a security grade.

Correlate that against the pitch. If the deck says “cloud-native, AI-powered platform” and the domain shows a WordPress marketing site on shared hosting with zero AI signals in the app, you have your first question. The icp_signal (hot, warm, cold) is a triage flag for a pipeline: which targets merit a closer look and which do not. This is reconnaissance, not confirmation. It sharpens the questions you take into the room, and it flags mismatches between story and stack early, when walking away is still cheap. You confirm inside the data room. You start outside it.

How does a domain expose integration and security risk?

The infrastructure and security layers. The TLS certificate gives you issuer, SANs, expiry, and days_remaining. A cert with nine days left, or a wildcard sprawled across unrelated brands, tells you something about ops discipline. Hosting org, ASN, and CDN reveal where the app runs and what you inherit on close. Nameservers and MX records show the DNS and email vendors, a hint at operational maturity and lock-in.

Email-auth booleans (SPF, DKIM, DMARC) are cheap to check and expensive to ignore. A target with no DMARC is a phishing and brand-impersonation liability you would own the day the deal signs. The security layer grades response headers A-F (HSTS, CSP, X-Content-Type-Options, X-Frame-Options, Referrer-Policy, Permissions-Policy) and adds a TLS grade. None of this replaces a pen test or a SOC 2 review. It gives you a fast external risk read across the whole pipeline, and it prices the integration and remediation work you would fund after close. Cheap to run, honest about what it sees and what it cannot.

Can you tell if the AI is real or slideware?

This is the axis nobody else reads well. Most “AI-readiness” checks scan the homepage for the word “AI” and glance at llms.txt. That rewards marketing over engineering. Bassethound fingerprints the backend instead: model providers (Anthropic, OpenAI, Gemini, Cohere, Mistral), AI SDKs (Anthropic, OpenAI, Vercel AI), orchestration (LangChain, LlamaIndex, Haystack, CrewAI), vector stores (Pinecone, Weaviate, Qdrant, Chroma, Milvus), LLM observability (Helicone, LangSmith, Langfuse), AI widgets, MCP endpoints, and .well-known AI files.

It rolls those into an ai_readiness score (distinct signal groups hit, out of six) and a verdict: shipping, experimenting, or none. For an AI-premium acquisition, that is the difference between paying for infrastructure and paying for a press release. A detected vector store and a live model provider are expensive and pointless to fake. If the target claims a proprietary AI platform and the app shows one OpenAI SDK call behind a chat widget, price accordingly. The honest limit: fully server-side calls behind a proxy can hide from a static crawl, and the dossier reports that gap rather than guessing past it.

How do you scan a whole acquisition pipeline?

The tool is a remote MCP endpoint. One tool, one call per domain. Stateless and keyless on the free tier, so an agent host (Claude, Cursor, ChatGPT) can iterate a list of target domains and pull a dossier on each without provisioning keys or holding state. Every call is self-contained. Point your diligence agent at fifty domains and it returns fifty correlated reports, each with an icp_signal to triage and a primary_stack to compare.

Profiles trade depth for speed. fast is deterministic and keyless in a few seconds for a first pass across a long list. standard adds the AI stack and firmographics. deep adds the security grade, follow-on probes, and Wayback first-seen history, which dates when a target launched a capability versus when it started claiming one. Run fast across the funnel, then deep on the shortlist. The paid OAuth tier lifts rate limits and depth for heavy sweeps. Your results are stored against your account, which is worth knowing when the subject is a live deal and the fact that you are looking is itself sensitive. The privacy policy is the authoritative statement on what is kept.

Where does a domain scan stop being enough?

Honest limits. A domain reads the outside of a company. It does not open the books. Financials, contracts, the cap table, customer concentration, IP ownership, headcount quality: none of that lives in DNS or HTTP headers. A static crawl plus optional JS render can miss fully server-side components, internal services with no public surface, and anything behind a proxy or a login. Private repos are invisible.

The dossier reports these gaps instead of papering over them, which is the point. It tells you what it could not reach, so you know what to ask. Use it as the first pass and the question generator, not the verdict. It narrows a pipeline, prices external risk, and separates shipped technology from slideware. Then the data room, the pen test, the code audit, and the customer calls do the rest. A domain is where diligence starts cheap and fast. It is not where it ends, and any tool that claims otherwise is selling you one layer as if it were the whole company.

Bassethound perspective

Diligence tools sell you corpora. Apollo and ZoomInfo sell firmographics. BuiltWith and Wappalyzer sell a tech-stack list. Censys and Shodan sell infrastructure and exposure. Each is one layer, and for M&A a single layer lies by omission. A tech-stack list without the AI backend tells you a company uses React, not whether its “AI platform” ships. Firmographics without security posture tell you the headcount, not the liability you inherit on close.

The value in diligence is correlation. The same target read as tech, infrastructure, firmographics, AI, and security at once, so the contradictions surface. An agent cannot cheaply rebuild that correlation from five separate MCP servers, because the joins are the work. We own the crawl, so the call is keyless and the layers arrive fused. We read the AI stack deeper than a homepage scan, because in 2026 the AI claim is the one most likely to be slideware and the one most likely to move a price. Read the stack, not the story. That is the whole job.

Sources

Frequently asked questions

Can you run diligence on a target before signing an NDA?

Yes. Everything the dossier reads is public: DNS, TLS certificates, HTTP responses, and loaded client code. No login and no cooperation from the target. It is external reconnaissance, so treat it as claims to confirm in the data room, not as confirmed facts.

Does a domain scan replace technical due diligence?

No. It is the first pass and the question generator. A static crawl reads the outside of a company. It cannot open the books, see private repos, or reach fully server-side components. Use it to price external risk and sharpen questions, then run the code audit and pen test.

How do you tell if a target's AI is real?

By fingerprinting the backend, not the homepage. A live model provider, an AI SDK, and a detected vector store are expensive and pointless to fake. Bassethound rolls those into a shipping, experimenting, or none verdict, and marks anything a proxy hid.

Can you scan a whole pipeline of targets at once?

Yes. The endpoint is one MCP tool, one call per domain, stateless and keyless on the free tier. Point a diligence agent at a list and it returns a correlated dossier per target, each with a hot, warm, or cold triage signal. Run fast across the funnel, deep on the shortlist.

What infrastructure risk shows up in a domain?

TLS expiry and issuer, hosting org, CDN, nameservers, MX and email vendors, email-auth (SPF, DKIM, DMARC), and a security-header grade A-F. A target with no DMARC or a cert about to expire is a liability you would own on close. None of it replaces a SOC 2 review.

Sniff a domain.

Run sniff_domain on any site and read its five-layer dossier in one call.

Sniff a domain