Tools
Below is the technical documentation for the tools available to MCP.
INFO
Tools are intended for the LLM only; the user doesn't interact with them.
TIP
For AI assistants: Read the CPA Pony here before invoking any tools. It describes the recommended workflow, safety considerations, and tool usage patterns. The tool descriptions below are only concise API references.
list_campaigns [campaigns:read]
Campaigns available to the key. Search and pagination are supported.
get_campaign [campaigns:read]
Returns a single campaign: statistics sources (network/tracker, with a slug and provider_name) and the number of bindings.
list_campaign_bindings [campaigns:read]
Returns the list of a campaign's bindings used in statistics requests.
get_statistics_capabilities [metadata:read]
Returns the source's capabilities from the registries: available grouping objects, metrics with their types, period depth, filters, and limits. It's recommended to call this before building complex queries.
get_statistics [statistics:read]
The main tool for retrieving statistics. Supports selecting a period, grouping by object (campaign/site/ad/…), filtering, sorting, limits, daily breakdown (daily, only for object=campaign), and choosing data freshness.
get_statistics_summary [statistics:read]
Returns a compact summary of metrics as a single object, for example: "how much was spent over the week".
list_triggers [campaigns:read]
Returns the user's triggers: object, window, interval, and condition blocks (conditions within a block are combined with AND, blocks with each other — with OR).
list_workflows [campaigns:read]
Returns the list of the user's workflows with campaign, status, and published version.
get_workflow [campaigns:read]
Returns the workflow graph: nodes (type and configuration) and edges (output port → next node).
get_automation_results [statistics:read]
Returns the automation execution log: trigger firings, workflow runs, and node execution results, indicating the object the action was performed on.
get_provider_reference [metadata:read]
Returns the provider reference from the registries (KeyMap/ObjectMap/Assignments): object types, canonical metrics, available actions per object, and allowed value ranges. Raw provider API fields are not exposed.
list_workflow_node_types [metadata:read]
Returns the catalog of workflow builder node types: categories, output ports, and the config_schema describing the required configuration parameters.
create_trigger / update_trigger [automation:write]
Creates or fully updates a trigger together with all its blocks and conditions in a single transaction. Slugs from the reference registries are used. validate_only is supported for a dry run. In update_trigger, the blocks field is a full state snapshot — missing blocks are deleted.
set_trigger_enabled [automation:write]
Enables or disables a trigger. The ability to enable it depends on the pricing plan.
create_workflow / update_workflow_graph [automation:write]
Creates a new workflow (as a disabled draft, optionally with a graph right away) or fully replaces the draft graph. The response includes the validation result.
publish_workflow [automation:write]
Publishes a new immutable version of the workflow.
set_workflow_enabled [automation:write]
Enables or disables a workflow. Enabling requires a published version.
list_notes [notes:read]
Returns the LLM's notes, used as memory between sessions and as comments on entities.
create_note / update_note / delete_note [notes:write]
Creating, modifying, and deleting notes. A note can be attached to a campaign, binding, trigger, workflow, or stored at the account level.

