Find Companies
Describe the company profile you want, get back a list of matching companies.
- Tool
find_companies- Cost
- 0.3 credits per result
- Category
- Company Search
- Required input
- None — pass at least one filter
- Returns
- Matching company profiles
What it does
- Searches for companies across Crustdata and returns matching company profiles.
- No required parameter. You must pass at least one filter or there is nothing to search on.
- Filters cover identity, category, location, type, size, revenue, funding, social following, age and headcount growth — see the tables below.
- Paged:
limitis 1–100 (default 25), andcursortakes thenext_cursorfrom the previous response. - Cost scales with results — 0.3 credits per company returned. A default page of 25 costs 7.5 credits; a full page of 100 costs 30.
This is how you build an account list. Enrichment tools like enrich_organization work on domains you already have — this call produces them.
Parameters
No parameter is required, but a call with no filters has nothing to match on. Combine filters from any of the families below.
Identity
| Parameter | Type | Notes |
|---|---|---|
company_names | array | Fuzzy, any-of |
primary_domains | array | Exact |
Category
| Parameter | Type | Notes |
|---|---|---|
industries | array | |
exclude_industries | array | None-of |
categories | array | |
specialities | array | LinkedIn specialities |
Location
| Parameter | Type | Notes |
|---|---|---|
countries | array | Exact HQ country |
headquarters_locations | array | Fuzzy |
largest_headcount_countries | array | Where most employees sit |
Type
| Parameter | Type | Notes |
|---|---|---|
company_types | array | e.g. "Public Company", "Privately Held" |
markets | array | e.g. "NYSE", "NASDAQ", or "PRIVATE" |
Size
| Parameter | Type | Notes |
|---|---|---|
employee_count_ranges | array | "1-10" | "11-50" | "51-200" | "201-500" | "501-1000" | "1001-5000" | "5001-10000" | "10001+" |
min_headcount | number | |
max_headcount | number |
Revenue
| Parameter | Type | Notes |
|---|---|---|
min_revenue_usd | number | |
max_revenue_usd | number |
Funding
| Parameter | Type | Notes |
|---|---|---|
min_total_funding_usd | number | |
max_total_funding_usd | number | |
last_funding_round_types | array | e.g. "seed", "series_a", "series_b" |
min_last_round_amount_usd | number | |
max_last_round_amount_usd | number | |
last_fundraise_after | string | YYYY-MM-DD |
last_fundraise_before | string | YYYY-MM-DD |
investors | array |
Social
| Parameter | Type | Notes |
|---|---|---|
min_followers | number | LinkedIn follower count |
max_followers | number | LinkedIn follower count |
Age
| Parameter | Type | Notes |
|---|---|---|
min_year_founded | number | |
max_year_founded | number |
Growth
| Parameter | Type | Notes |
|---|---|---|
min_headcount_growth_percent_1m | number | Percent growth over 1 month |
min_headcount_growth_percent_3m | number | Percent growth over 3 months |
min_headcount_growth_percent_6m | number | Percent growth over 6 months |
min_headcount_growth_percent_12m | number | Percent growth over 12 months |
min_headcount_growth_absolute_1m | number | Headcount added over 1 month |
min_headcount_growth_absolute_3m | number | Headcount added over 3 months |
min_headcount_growth_absolute_6m | number | Headcount added over 6 months |
min_headcount_growth_absolute_12m | number | Headcount added over 12 months |
Paging
| Parameter | Type | Notes |
|---|---|---|
limit | number | 1–100, default 25 |
cursor | string | From next_cursor on the previous response |
How to use it
Connect the MCP server
Follow the setup guide for your client. Browser sign-in, no API key.
Describe the account profile
Find privately held SaaS companies in the US with 51-200 employees.Add the timing signal
Narrow that to companies whose last funding round was series_a or series_b and
closed after 2025-06-01.Add the growth signal
Now only keep companies with min_headcount_growth_percent_6m above 20.Page through the results
Return 100 per page and keep paging with the cursor until I have 300 companies.
Report credits used.Example prompts
| Ask your client | What you get back |
|---|---|
| ”Privately held fintech in Germany, 201-500 employees” | Companies matching company_types, industries, countries, employee_count_ranges |
| ”Series A companies that raised after 2025-06-01” | last_funding_round_types plus last_fundraise_after |
| ”Companies that grew headcount 20%+ in the last 6 months” | min_headcount_growth_percent_6m |
| ”Founded after 2020, over $5M raised, not in retail” | min_year_founded, min_total_funding_usd, exclude_industries |
| ”NASDAQ-listed companies with over 100k LinkedIn followers” | markets plus min_followers |
Best prompting practices
- Always pass at least one filter. There is no required parameter, so an unfiltered ask returns whatever the search defaults to rather than what you meant.
- Use the range enums, not free text.
employee_count_rangesaccepts fixed buckets —"51-200","1001-5000". “Mid-market” is not a value. - Dates are
YYYY-MM-DD.last_fundraise_after: "2025-06-01". “Last six months” will not parse. - Stack growth windows deliberately.
min_headcount_growth_percent_1mcatches a sudden spike;_12mcatches sustained expansion. Percent filters favour small companies, absolute filters favour large ones. - Exclude early.
exclude_industriescosts nothing and keeps agencies, recruiters and consultancies out of a list you would otherwise clean by hand. - Set
limitexplicitly. Default is 25.limitis the cost dial at 0.3 credits per company, so ask for volume only when you will use it. - Search before you enrich. 100 companies here is 30 credits; guessing 100 domains and enriching them at 2 credits each is 200.
Output
{
"companies": [
{
"company_name": "Example Inc",
"primary_domain": "example.com",
"employee_count_range": "51-200",
"countries": ["United States"]
}
],
"next_cursor": "eyJwYWdlIjoyfQ"
}Credits and limits
0.3 credits per company returned. limit is 1–100 with a default of 25, so a default call costs 7.5 credits and a full page costs 30. Run check_credits (free) before a long paging run.
The cost is per result, so paging is what drives spend. Three pages of 100 is 300 companies and 90 credits. Tell your client how many companies you want up front rather than letting it page until the cursor runs out.
Related tools
| Tool | Use it instead when |
|---|---|
find_people | You want people across many companies, not the companies themselves — 0.3 credits per result |
enrich_organization | You already have the domains and need firmographics — 2 credits |
enrich_linkedin_page | You already have LinkedIn pages and want the cheapest enrichment — 0.5 credits |
find_people_within_company | You have your account list and now need contacts at each one — 0.3 credits |
google_maps_listings | You are sourcing local businesses rather than firmographic B2B accounts — 0.3 credits |
Next steps
- All MCP tools — the full catalogue with credit costs
- TAM Sourcing — workflows that turn a company search into a working list
Keep learning
Two courses take these tools past the reference page — clustered by GTM job, then chained into workflows.