approve_leads
Approve or reject one or more discovered leads. Two-phase: first call returns a confirmation token + preview; the user reviews an inline card and confirms; second call (with confirmation_token) commits the status flip. action='approve' requires campaign_id (the campaign the leads will be associated with); action='reject' does not. The tool stamps each lead's status + reviewed_at + campaign_id; downstream campaign-engine pipelines ingest approved leads through their normal path. Over MCP: call this tool once, without confirmation_token. It runs right away and returns the result.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"action": "<action>",
"lead_ids": "<lead_ids>"
},
"name": "approve_leads"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| count | No | Number of leads in the batch (used in the confirm preview; mirrors len(lead_ids)) | |
| action | Yes | Decision applied to every lead in lead_ids | |
| lead_ids | Yes | Discovered lead ids (from a prior find_leads result) | |
| campaign_id | No | Required for action=approve; omitted for action=reject (UUID format, e.g. 550e8400-e29b-41d4-a716-446655440000) | |
| campaign_name | No | Campaign name (used in the confirm preview) | |
| confirmation_token | No | Phase-2 token (omit on phase-1) |