List leads
list_leadsCRM leads of the active workspace, newest first. Read-only. CRM ONLY: mailing-list / shop contacts are another store (email_marketing_summary) — no CRM leads never means an empty base. Filters: 'status', 'source' ('discovery' = imported prospect, 'quiz' = site quiz), 'created_after' / 'created_before' ('YYYY-MM-DD' inclusive by day, or ISO-8601). Paging: 'limit' (1..100, default 20) + 'offset' (or 'cursor'). Returns {leads: [{id, number, name, company, status, source, created_at}], total (all matching), has_more}. More filters (see each property): 'custom' / 'custom_range' / 'custom_exists' (filterable fields of crm_list_fields, at most 8 conditions), 'q', 'city', 'tags', 'pipeline' + 'pipeline_stage' / 'stage_category', 'has_channel' / 'channel_status'. 'fields' shapes the rows (a pipeline lead always carries pipeline and stage).
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "list_leads"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Free text: company / name / e-mail substring, or an exact phone (any format), domain or ЄДРПОУ. | |
| city | No | The lead's city (exact, case-insensitive; a list = any of; 'Ки*' = prefix). | |
| mode | No | 'summary' = counts by status/source + the top 5 rows (a few KB). | |
| tags | No | ||
| limit | No | ||
| cursor | No | next_cursor from the previous page (instead of offset). | |
| custom | No | Equality on the workspace's own fields (crm_list_fields), e.g. {"niche": "printing", "site_status": ["none", "broken"]}: a list = any of, 'x*' = prefix; an unknown or non-filterable key → unknown_field. | |
| fields | No | 'custom' / 'tags' ADD that data to each row; any other names keep ONLY those keys (plus id) — e.g. ['company','status'] for a compact list. | |
| offset | No | ||
| source | No | ||
| status | No | ||
| pipeline | No | Only leads of this pipeline (crm_pipeline_get); 'inbound' = «Вхідні заявки». | |
| has_channel | No | Leads that have a contact point of each of these kinds. | |
| custom_range | No | Ranges on number / money_eur / date fields: {"setup_amount": {"gte": 300, "lte": 1000}}. | |
| created_after | No | ||
| custom_exists | No | Field keys that must have a value. | |
| channel_status | No | Contact point status per kind, e.g. {"telegram": "available"} (a list = any of): unverified (nobody checked), available, not_found, unknown, invalid, opted_out. | |
| created_before | No | ||
| pipeline_stage | No | Stage slug(s) of 'pipeline' (any of). | |
| stage_category | No | Stage category(ies): sourcing, enrichment, channel_check, proposal, approval, outreach, follow_up, reply, terminal. |