Reverse-lookup organization for one or more domains
ctscout_lookup_domainReverse-look up one or more apex domains to identify the organization attributed to each. Returns cert-based ownership attribution and sibling domains from Certificate Transparency data.
Instructions
Reverse-lookup ctscout.dev's domain-attribution warehouse: given one or more apex domains, return the organization(s) attributed to each.
Args:
domains (string[], required): apex domains to look up. Each between 3 and 253 chars. Max 10 per call. Examples: ["gs.com"], ["coalition.com", "at-bay.com"].
response_format ('markdown' | 'json', default 'markdown'): output format.
Returns (on success, structuredContent follows the declared outputSchema — the same one as ctscout_search_company; a failed call is isError with no structuredContent):
In markdown: a snapshot line, then a table of (domain, attributed to, cert count, subdomain count). Only domains found in the warehouse appear; a missing domain means no attribution in this snapshot, not a negative finding.
In JSON: the same structure as ctscout_search_company, including "snapshot" / "snapshot_source". The 'domains' array contains one entry per attributed (domain, org) pair found. Reverse lookups never return semantic candidates.
Examples:
Use when: "Who is gs.com attributed to?" -> { domains: ["gs.com"] }
Use when: "Are coalition.com and at-bay.com attributed to the same parent?" -> { domains: ["coalition.com", "at-bay.com"] }
Don't use when: You have a company name and want to enumerate its domains — use ctscout_search_company instead.
Coverage caveat:
Returns 0 results if domain isn't in the warehouse. Either the domain is not in our index, or no OV/EV certs have been issued for it. DV-only domains (Let's Encrypt etc.) are typically not indexed.
When a domain IS in the warehouse but the attributed org is a subsidiary (e.g. an Allianz brand domain), the 'org' field shows the cert-subject organization which may differ from the brand on the homepage.
Auth & limits: same as ctscout_search_company.
Corrections:
Wrong attribution? Open an issue at https://github.com/minghsuy/ctscout-mcp/issues. Missing entity? Email pro@ctscout.dev. Include the domain queried, the result returned and why it is wrong.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| domains | Yes | Apex domains to look up (e.g. ['gs.com', 'goldmansachs.com']). Returns the organization(s) attributed to each domain, plus any sibling domains in the warehouse attributed to the same orgs. Max 10. | |
| response_format | No | Output format: 'markdown' for human-readable summary, 'json' for the raw API response. | markdown |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| total | No | Matching pairs in the warehouse before any cap. | |
| source | No | 'warehouse' on /scan (both tiers); 'live-enriched' / 'cache-only' on a deep-dive result. | |
| domains | Yes | Attributed (domain, organization) pairs. Empty when nothing is attributed. | |
| snapshot | Yes | Warehouse/D1 sync date (YYYY-MM-DD) the answer was read from; the warehouse syncs daily. null when the API could not determine it. | |
| truncated | No | ||
| candidates | No | Present only when match_type is 'semantic'. Candidates are not attributions. | |
| match_type | No | 'exact' = domains are warehouse attributions; 'semantic' = domains is empty and candidates holds name-similarity guesses; 'none' = nothing matched. | |
| empty_reason | No | ||
| upgrade_hint | No | ||
| snapshot_source | Yes | 'scan' = the API response carried the date; 'unavailable' = it did not, snapshot is null and must be treated as unknown, never as current. | |
| org_match_strategy | No |