MCP Tools
The Tools list in your editor is the catalog. This page groups the jobs. It does not list every parameter. Those live on the tool the editor already shows.
Old names still work so existing chats do not break: list_projects is list_workspaces, switch_project is switch_workspace, get_event_taxonomy is get_event_spec. Prefer the current names.
get_results and get_experiment_results both read results. promote_winner and promote_experiment_winner both promote. Ask for one and stay with it.
Point the session
list_workspaces
Lists shops your credential can see. Marks the active one.
switch_workspace
| Parameter | Type | Description |
|---|---|---|
workspace_keyrequired | string | Workspace key from list_workspaces or the dashboard. |
list_orgs / switch_org
Organizations you belong to. Needs a user key or device flow. A shop key cannot do this.
Before you edit
check_live_tests
Call this before you change a page, letter, Adaptive Journey, or Milestone. Pass the full file, not a diff hunk. If something live is on those files, stop. Three outs: end the test then ship; wait; or the merchant says this change is not the thing under test.
| Parameter | Type | Description |
|---|---|---|
file_paths | string[] | Repo paths you are about to edit. |
file_contents | object[] | Full file at HEAD when the editor will not read it locally. path + content. |
communication_ids | string[] | Letters you are about to change or publish. |
journey_ids | string[] | Adaptive Journeys you are about to change or publish. |
milestone_ids | string[] | Milestones you are about to change or delete. |
Experiments
plan_experiment returns related beliefs and options. It creates nothing.
create_experiment creates a record and a recipe. Always call it with preview: true first. Apex does not write your app. The agent implements the recipe with useApexVariant. First HTML is flicker-free only when the server already assigned the visitor and passed that arm (initialVariant or <ApexProvider assignments>). The hook alone is not enough. A client-only app cannot promise no flicker. If the snippet is already on the page, Apex can change what is there without an SDK.
| Parameter | Type | Description |
|---|---|---|
namerequired | string | Experiment name. |
targetUrlrequired | string | Page on the active shop. Must be a host that shop has sent events from. |
controlContentrequired | string | What the control shows today. |
variantContentrequired | string | What the variant shows. |
preview | boolean | If true, show the summary and do not create. Default true. |
Also in this group: start_reasoning, create_belief, suggest_experiment, activate_experiment, pause_experiment, archive_experiment, list_experiments, get_results, promote_winner, record_outcome, evaluate_feature, predict_impact.
Letters, journeys, and segments
list_communications, list_communication_themes, list_journeys, list_segments, list_trigger_contracts, recommend_communications.
Asking what letter looks exist creates the two starters (Editorial and Compact) if the shop has none. That is how a new shop gets a look.
list_segments is the list. There is no list_audiences.
Publish, send, and journey writes exist. Confirm before the agent runs them on a live shop.
Adoption
list_adoption_milestones, get_adoption_milestone, list_adoption_features, get_adoption_metrics, get_adoption_account_progress, get_adoption_user_progress.
Compose, attach a still, and reorder are writes. Confirm first.
Set up Apex
get_setup_state, list_workspace_environments, list_data_sources, get_wiring_status, get_event_spec, list_conversions, list_webhook_destinations, get_sender_domain, get_messaging_guardrails, get_scoring_model.
get_scoring_model returns that the vertical preset is in use when the shop has never saved weights.
create_conversion, set_primary_conversion, and the other set_* / start_* tools change the shop. Confirm first.
Partners
list_partner_programs, list_pending_payouts, get_effective_fees.
Approve, reject, and invite are money. Confirm first.
Measurement
list_events, apex_recent_events, get_schema, get_analytics_hostnames, get_growth_reality, get_channel_economics, list_metrics.
list_product_costs needs cost access on the key. Without it the agent should say this key cannot see costs, not that the key is revoked.
Accounts (B2B rollup)
list_accounts, get_account, get_account_people, list_sub_accounts, get_contact_groups. Membership itself comes from identify in your app.