AI Company Search by Plain-Language Description
omnial/discover-ai
Given a plain-language description of the companies you're looking for (industry, location, headcount, founding year, or any mix of those), an AI turns it into search filters and returns matching companies with their domain, name, and how many emails are on file for each -- plus the filters it inferred and the total number of matches, so you can see how it interpreted your request. A query the AI cannot turn into a valid search returns an error code and message instead of results.
Price
$0.137 per call
You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $5.00.
Data source
Data from Hunter.
Use it
Your AI assistant does the work: it finds this tool, shows you the price first, runs it, and you are charged when the run finishes. There is nothing to set up for this tool in particular.
Connect once and your AI can find and run this tool, and any other it needs.
For developers: the calls your assistant makes
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "omnial/discover-ai" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "omnial/discover-ai" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "omnial/discover-ai", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "omnial/discover-ai", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.137 |
- Updated
- Oct 27, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Companies per page. Default and max 100."
},
"query": {
"type": "string",
"minLength": 1,
"description": "Natural-language description of the target companies, e.g. 'fintech startups in Singapore founded after 2020'."
},
"offset": {
"type": "integer",
"maximum": 10000,
"minimum": 0,
"description": "Companies to skip. Max 10,000."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"properties": {
"code": {
"type": "string",
"description": "Present only when the query could not be turned into a valid search, e.g. 'HTTP_400'. Absent on a populated match set."
},
"data": {
"type": "array",
"items": {
"type": "object",
"properties": {
"domain": {
"type": "string",
"description": "The company's primary domain."
},
"emails_count": {
"type": "object",
"properties": {
"total": {
"type": "number"
},
"generic": {
"type": "number"
},
"personal": {
"type": "number"
}
},
"description": "Counts of email addresses on file for this domain, not the addresses themselves.",
"additionalProperties": true
},
"organization": {
"type": "string",
"description": "The company's own public name."
}
},
"additionalProperties": true
},
"description": "The matching companies for this page of results."
},
"meta": {
"type": "object",
"properties": {
"limit": {
"type": "number"
},
"offset": {
"type": "number"
},
"params": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "The query as submitted."
}
},
"additionalProperties": true
},
"filters": {
"type": "object",
"properties": {
"keywords": {
"type": "object",
"properties": {
"match": {
"type": "string",
"description": "e.g. 'any'."
},
"include": {
"type": "array",
"items": {
"type": "string"
}
}
},
"additionalProperties": true
},
"headcount": {
"type": "array",
"items": {
"type": "string"
},
"description": "Headcount buckets, e.g. '1-10', '11-50'."
},
"year_founded": {
"type": "object",
"properties": {
"from": {
"type": "number"
}
},
"additionalProperties": true
},
"headquarters_location": {
"type": "object",
"properties": {
"include": {
"type": "array",
"items": {
"type": "object",
"properties": {
"country": {
"type": "string"
}
},
"additionalProperties": true
}
}
},
"additionalProperties": true
}
},
"description": "The structured search filters the AI derived from the plain-language query.",
"additionalProperties": true
},
"results": {
"type": "number",
"description": "Total matches across all pages."
}
},
"description": "Pagination and the filters the AI inferred from the query.",
"additionalProperties": true
},
"message": {
"type": "string",
"description": "Present only alongside code -- a human-readable reason the query failed."
}
},
"description": "The discovery result. A query the AI cannot resolve into search filters settles as {code, message} instead of {data, meta} -- no field below is guaranteed present.",
"additionalProperties": true
}