Title95/100
Submit Query
The title clearly communicates the tool’s action and subject. Keep it concise.
Description95/100
Create a new CatchAll processing job from a natural-language query. Use when: - You want to start a new CatchAll web research run from a user query. - You want the API to fetch/process sources and then return structured results. Do not use when: - You want status for an existing job (use `get_job_status`). - You want records for an existing job (use `pull_results`). Key rules: - `query` is required. - You can submit with only `query`; omitted optional fields (`validators`, `enrichments`, `start_date`, `end_date`) are auto-selected/generated by the API. - Optional fields are independent: you can pass any subset (for example, custom `validators` but no `enrichments`), and omitted fields are still auto-selected/generated. - When `connected_dataset_ids` is set, the `query` must describe the **topic or event type only** (e.g. "M&A activity", "regulatory filings", "executive changes"). Do NOT write things like "for my companies", "for the selected list of companies", or "news about my watchlist" — the entity filtering is applied automatically by the connected dataset. Mentioning companies in the query when a dataset is attached is redundant and degrades retrieval quality. - When `connected_dataset_ids` is set, entity-relevance validators (e.g. `company_is_primary_subject`) are generated automatically by the API. Do NOT add them manually to `validators` — they are redundant and may conflict with the auto-generated ones. Only pass validators that describe the **event or topic**, not entity filtering. - `start_date` and `end_date` filter by web page discovery date, not event date. - Discovery dates and extracted event dates can differ. For event-time accuracy, use event-focused validators/enrichments and verify `event_date` in pulled results. - `end_date` must be after `start_date`. - Dates outside your plan lookback limits return API 400. - `limit` controls processed record count (cost-affecting). Omit it to retrieve everything up to your plan's maximum. If provided, must be >= 10. - `validators` / `enrichments` may be passed either as arrays or as JSON-string arrays (for client compatibility). - `validators[].type` must be `boolean` (if omitted, it defaults to `boolean`). - `enrichments[].type` supported values: text, number, date, option, url, company. Basic examples: - validators: `[{"name":"is_acquisition_event","description":"true if page describes an acquisition","type":"boolean"}]` - enrichments: `[{"name":"acquiring_company","description":"Extract acquiring company","type":"company"},{"name":"deal_value","description":"Extract announced deal value","type":"number"}]` Next step: - Save the returned `job_id`. - Poll `get_job_status` and call `pull_results` (partial results can appear before completion).
The description explains the capability, when to use it, and what to expect.
Inputs69/100
15 of 21 inputs have descriptions. Add descriptions to the missing inputs, including where to obtain IDs and how to supply values.
query
Plain text search intent (required).
Clear enough to supply this argument.
api_key
CatchAll API key. Optional if provided via x-api-key header or CATCHALL_API_KEY env var.
Clear enough to supply this argument.
context
Optional guidance on what to prioritize (for example, target entities, event types, and specific data points you want captured in enrichments). If a company dataset will be attached, note that entity-relevance validators (e.g. `company_is_primary_subject`) will be auto-generated — do not ask for them here. Do not mention things like "company list will be attached".
Clear enough to supply this argument.
limit
Optional processing cap (minimum 10); affects cost. Omit to retrieve everything up to your plan's maximum.
Remove validation rules already expressed in this field’s schema; describe its meaning and usage instead.
start_date
Optional ISO 8601 UTC start of search window.
Explain what happens when this optional value is omitted.
end_date
Optional ISO 8601 UTC end of search window.
Clear enough to supply this argument.
validators › anyOf › 0 › items › name
Not provided
Missing description. Explain what this value means and how to supply it.
validators › anyOf › 0 › items › description
Not provided
Missing description. Explain what this value means and how to supply it.
validators › anyOf › 0 › items › type
Not provided
Missing description. Explain what this value means and how to supply it.
enrichments › anyOf › 0 › items › name
Not provided
Missing description. Explain what this value means and how to supply it.
enrichments › anyOf › 0 › items › description
Not provided
Missing description. Explain what this value means and how to supply it.
enrichments › anyOf › 0 › items › type
Not provided
Missing description. Explain what this value means and how to supply it.
mode
Optional job processing mode: `"lite"` (faster, lower cost, less detail) or `"base"` (default, full extraction). If omitted, the API defaults to `"base"`.
Clear enough to supply this argument.
project_id
Optional project ID to associate this job with.
Clear enough to supply this argument.
webhook_ids
Optional list of webhook IDs to notify when the job completes (max 5 per job). Use `list_webhooks` / `create_webhook` to get IDs.
Clear enough to supply this argument.
schema
Optional advanced custom JSON schema string that overrides the default extraction schema. Use `initialize_query` to discover a suitable schema.
Clear enough to supply this argument.
connected_dataset_ids
Optional list of dataset IDs whose entities narrow the retrieval scope. When set: (1) entity filtering is applied automatically — do NOT mention the company list or watchlist in `query`; (2) entity-relevance validators such as `company_is_primary_subject` are generated automatically — do NOT add them to `validators`. `ed_score_min` defaults to 2 if not provided.
Clear enough to supply this argument.
ed_score_min
Optional minimum entity-domain relevance score (1-10). Only relevant when `connected_dataset_ids` is set.
Clear enough to supply this argument.
ed_association_type
Optional filter on how strongly a watchlist entity must appear in each event. Only relevant when `connected_dataset_ids` is set. - `"event_associated"`: keep only events where the entity is a **direct actor** (default when connected_dataset_ids is set). - `"mention"`: keep all even where the entity is **merely referenced**.
Clear enough to supply this argument.
fetch_all_watchlist_news
When `True`, retrieves **all** news for connected watchlist entities without applying topic filtering from `query`. Requires `connected_dataset_ids` to be set. Default: `False`.
Clear enough to supply this argument.
source_groups
Optional list of source group slugs (max 20 per job) that scope fetching to their domain allowlists. Use `list_source_groups` to discover available slugs. The attached groups (slug, name, description) are echoed back as `source_groups` in `get_job_status` / `pull_results`.
Clear enough to supply this argument.
Annotations0/100
Declare readOnlyHint, destructiveHint, idempotentHint, openWorldHint based on the tool’s actual behavior.
Not declared
Output schema10/100
Describe the returned fields so an agent can interpret the result.
View output schema
{
"type": "object",
"required": [
"result"
],
"properties": {
"result": {
"type": "string"
}
},
"x-fastmcp-wrap-result": true
}