Skip to main content
Glama

rowfeed/subdomain-finder

rowfeed--subdomain-finder
Destructive

This tool calls the Actor "rowfeed/subdomain-finder" and retrieves its output results. Actor description: Find subdomains of any domain from certificate logs, passive DNS and the Internet Archive, merged into one list, with a live DNS check and IP addresses. Bulk domains. $0.50 per 1,000 subdomains, domains with none are free.

Input Schema

NameRequiredDescriptionDefault
domainsNoThe domains to look up, up to 500 per run, e.g. example.com. A full link also works. Example values: ["apify.com"]
checkDnsNoCheck whether each subdomain resolves today and list its IP addresses. Included in the price. Example values: true
onlyLiveNoDeliver only subdomains that resolve today. Old names from certificates are dropped, not charged. Needs the DNS check.
waitSecsNoMax seconds (0–45, default 30) to cap the wait for the Actor run to reach terminal state. For long-running Actors the response returns at the cap with the current run status; follow `nextStep` to poll via get-actor-run. Set to 0 to fire-and-forget.
maxSubdomainsPerDomainNoCaps the cost of very large domains. Each subdomain delivered is one charge. Example values: 1000

Output Schema

NameRequiredDescriptionDefault
tipNoAdvisory guidance RAG Web Browser wrote to its key-value store under the reserved "TIP" key
runIdYesActor run ID
statsNoRun statistics
statusYesRun status: READY | RUNNING | TIMING-OUT | TIMED-OUT | ABORTING | ABORTED | SUCCEEDED | FAILED
actorIdYesStable Apify Actor ID from the run record
summaryYesPast-tense summary of the run state
exitCodeNoActor process exit code; populated for terminal states (especially FAILED)
nextStepYesOne primary follow-up action with identifiers interpolated
storagesYesDataset and key-value store metadata, keyed by alias. "default" is always the primary entry.
actorNameNo"username/actor-name"
startedAtNoISO timestamp when the run started
finishedAtNoISO timestamp when the run finished (terminal states only)
statusMessageNoPass-through from Apify run.statusMessage
apifyConsoleUrlNoPersonalized Apify Console link to the run; present only for Console sessions

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.6/5.0
Behavior4/5

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

Annotations only declare generic wrapper traits (readOnly=false, destructive=true, openWorld=true); the description supplies the genuinely useful behavior an agent needs — per-result pricing ($0.50 per 1,000 subdomains), that domains with no subdomains are free, and that the DNS check is included in the price. It does not contradict the annotations. It stops short of explaining run timing/async behavior, which is left to the waitSecs schema field.

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?

Two sentences, with the capability statement before the pricing line, so the most decision-relevant information is front-loaded. The opening clause 'This tool calls the Actor ... and retrieves its output results' is boilerplate that earns little, but it is short.

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 values need not be described; with that covered, the description supplies purpose, sources, and cost model — everything an agent needs to decide to call it. Pagination/async follow-up is handled by waitSecs plus sibling get-actor-run, both already available.

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 coverage is 100%, so every parameter is already documented in-schema. The description adds only marginal meaning beyond that — 'Bulk domains' loosely points at the domains array, and the per-1,000-subdomain price gives context for maxSubdomainsPerDomain. Baseline 3 is appropriate when the schema carries the semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'Find subdomains of any domain' and names the data sources (certificate logs, passive DNS, Internet Archive) plus live DNS/IP enrichment. That is far more specific than the wrapper boilerplate 'calls the Actor X and retrieves its output results'. It does not name a sibling, but among the ~40 sibling tools only seo-site-audit and backlink-checker are even adjacent, so explicit differentiation is less critical.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use or when-not-to-use guidance, and no alternative tool is mentioned. 'Bulk domains' hints at scale but does not tell the agent when this is preferable to running an SEO site audit that might include subdomains. Usage must be inferred entirely from the purpose statement.

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.