MCP Reference

Drive an Apple Search Ads account from Claude Code, Codex, or claude.ai — the full asa_* tool surface.

Tap & Scale exposes the same reads and money-safe writes as the app through a Model Context Protocol server. Add it to an MCP client and your agent can audit, plan, and optimize an account under the same safe-apply policy — bounded changes auto-apply, the rest queue for your approval.

The server speaks Streamable HTTP at /api/mcp. For callers that aren't MCP clients — cron jobs, backend services, curl — the same capabilities are available over the REST API. Both transports run on one tool set, so they never drift. MCP authenticates over OAuth 2.1 with no token to mint, or — for a headless agent — with the same tsk_ key the REST API takes, verified by the same code, so revoking a key stops both surfaces.

How tools behave

  • Every tool returns { ok: true, ... } or { ok: false, error }. Read the error — it usually names the next step.
  • Reads are safe. asa_propose_* tools move real money and run through the safe-apply policy.
  • A connected session reaches the whole workspace, so call asa_list_ad_accounts first and pass the account's projectId to every account-scoped tool. Workspace-level tools take none.
  • Apple's vocabulary applies throughout: taps, installs, CPT, CPA, storefronts, EXACT|BROAD, ACTIVE|PAUSED. See vocabulary.

Tool catalog

Accounts & setup

ToolScopeType
asa_list_projectsorgread
asa_list_ad_accountsorgread
asa_get_connection_statusorgread
asa_discover_ad_accountsorgread
asa_import_ad_accountorgsetup
asa_trigger_syncaccountsetup
asa_get_sync_statusaccountread
asa_trigger_auditaccountsetup
asa_set_optimization_targetsaccountsetup
asa_update_project_briefaccountsetup

Reads & analysis

ToolScopeType
asa_get_optimization_planaccountread
asa_get_account_overviewaccountread
asa_list_campaignsaccountread
asa_list_ad_groupsaccountread
asa_list_keywordsaccountread
asa_list_negative_keywordsaccountread
asa_list_adsaccountread
asa_get_search_termsaccountread
asa_get_segment_performanceaccountread
asa_run_reportaccountread
asa_list_audit_runsaccountread
asa_get_audit_reportaccountread
asa_list_action_historyaccountread
asa_list_pending_actionsaccountread
asa_explain_policyaccountread

Growth & keyword ideation

ToolScopeType
asa_discover_search_term_silosaccountread
asa_ideate_keyword_silosaccountread
asa_suggest_keywordsaccountread
asa_score_keywordsaccountread

Writes (money-moving propose_*)

ToolScopeType
asa_propose_budget_changeaccountwrite
asa_propose_campaign_statusaccountwrite
asa_propose_campaign_geoaccountwrite
asa_propose_campaign_bid_strategyaccountwrite
asa_propose_campaign_target_cpaaccountwrite
asa_propose_cpa_goalaccountwrite
asa_propose_default_bidaccountwrite
asa_propose_ad_group_statusaccountwrite
asa_propose_ad_group_targetingaccountwrite
asa_propose_search_matchaccountwrite
asa_propose_keyword_statusaccountwrite
asa_propose_keyword_bidaccountwrite
asa_propose_add_keywordsaccountwrite
asa_propose_add_negative_keywordsaccountwrite
asa_propose_remove_negative_keywordsaccountwrite
asa_propose_change_keyword_match_typeaccountwrite
asa_propose_create_ad_groupaccountwrite
asa_propose_clone_ad_groupaccountwrite
asa_propose_create_campaignaccountwrite
asa_propose_clone_campaignaccountwrite
asa_propose_ad_statusaccountwrite

Approvals (operator-only, over MCP)

ToolScopeType
asa_approve_actionaccountwrite
asa_reject_actionaccountwrite
asa_revert_actionaccountwrite
Per-user rate limits apply: 60 reads/min and 10 writes/min.

On this page