Skip to content

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.