MCP Server / Tools Reference

Campaigns

Create, train, rename, and archive campaigns.

list_campaigns

List all your campaigns with status and profile counts.

Always returns a non-empty string. An empty result means the tool did not execute — do not infer or fabricate campaign data.

get_campaign

Get details about a specific campaign including status, training, and filter configuration.

Always returns a non-empty string. An empty result means the tool did not execute — do not infer or fabricate campaign details. Args: campaign_id: The campaign ID.

NameTypeRequiredDescription
campaign_idstringyes

create_campaign

Create a new campaign. It starts in Training status — submit product and customer info next.

Always returns a non-empty string containing the new campaign ID on success. An empty result means the campaign was not created — do not proceed as if it was. Args: name: A descriptive name for the campaign.

NameTypeRequiredDescription
namestringyes

train_campaign

Set up a campaign with product and customer information.

Provide a comprehensive description and the server handles everything: assesses quality, derives search filters, validates prospect count, and saves the campaign. If anything needs improvement, specific feedback is returned — address it and resubmit. Always returns a non-empty confirmation or feedback string. An empty result means the tool did not execute — the campaign was not saved, do not assume success or proceed to run_campaign. Args: campaign_id: The campaign to set up. description: Comprehensive product and customer description.

NameTypeRequiredDescription
campaign_idstringyes
descriptionstringyes

preview_campaign_filters

Derive campaign search filters without saving them, so the user can review and approve.

Use this instead of train_campaign when you want to show the user what filters will be applied before committing. After the user approves, call apply_campaign_filters to save. The preview expires in 10 minutes. If the user wants different filters, ask them to refine their description and call preview_campaign_filters again with the updated description — do not attempt to modify filters directly. Filters can only be changed by re-deriving them from an updated description. Always returns a non-empty string. An empty result means the tool did not execute — no filters were derived and nothing was saved. Args: campaign_id: The campaign to preview filters for. description: Comprehensive product and customer description.

NameTypeRequiredDescription
campaign_idstringyes
descriptionstringyes

apply_campaign_filters

Save the filters from a recent preview_campaign_filters call.

This is the confirmation step — it commits the exact filters the user already reviewed. No LLM calls are made; the filters are read from the server-side preview store and saved as-is. Must be called within 10 minutes of preview_campaign_filters. If the preview has expired, call preview_campaign_filters again. Always returns a non-empty confirmation string. An empty result means the tool did not execute — the campaign was not saved. Args: campaign_id: The campaign to apply the previewed filters to.

NameTypeRequiredDescription
campaign_idstringyes

rename_campaign

Rename a campaign.

Always returns a non-empty confirmation string. An empty result means the tool did not execute — the campaign was not renamed. Args: campaign_id: The campaign to rename. name: The new name.

NameTypeRequiredDescription
campaign_idstringyes
namestringyes

archive_campaign

Archive a campaign. Archived campaigns are hidden from the default list.

Always returns a non-empty confirmation string. An empty result means the tool did not execute — the campaign was not archived. Args: campaign_id: The campaign to archive.

NameTypeRequiredDescription
campaign_idstringyes

unarchive_campaign

Restore an archived campaign.

Always returns a non-empty confirmation string. An empty result means the tool did not execute — the campaign was not restored. Args: campaign_id: The campaign to unarchive.

NameTypeRequiredDescription
campaign_idstringyes