Skip to main content
Glama
MCP Apple Ads

MCP Apple Ads

by mgcrea

Apple Ads: List Creatives

apple_ads_list_creatives
Read-only

Fetches creatives available for ads, showing what each ad displays (custom product page or App Store listing) to help select assets for campaigns.

Instructions

List the creatives available to use in ads. A creative is what the ad actually shows — usually a custom product page or the default App Store listing. Authoring creatives and uploading assets is not wrapped here; reach those through apple_ads_request.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "apple_ads_list_creatives"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoHow many records to return (1-1000). Apple's own maximum page size is 5000.
offsetNoRows to skip, for paging. The response's `pagination` block says how many exist.
savePathNoAbsolute path to also write this result to, as pretty-printed JSON. Use it rather than copying values out of the response into a file by hand. Parent directories are created.
adAccountIdNoThe ad account to act on. Omit it when you have exactly one or APPLE_ADS_AD_ACCOUNT_ID is set — it is resolved automatically. List them with apple_ads_list_accounts.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

readOnlyHint=true already tells the agent this is a safe read. The description adds the useful scope boundary that mutation/upload paths live in apple_ads_request, but says nothing about result volume, paging behavior, or ordering beyond what the schema already documents.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the action and the object definition, then the routing note. No filler and nothing repeated from the schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only list tool with no output schema, the description covers what the resource is and where the adjacent write operations live. Only the shape of returned records is left implicit, which is a minor gap given the tool's simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so limit, offset, savePath, and adAccountId are all fully documented in the schema. The description adds no parameter-level meaning, which is the expected baseline when the schema does the work.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('List the creatives') and then defines the domain object ('a creative is what the ad actually shows — usually a custom product page or the default App Store listing'), which lets an agent distinguish it from apple_ads_list_product_pages and apple_ads_list_ads.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly carves out the negative case: authoring creatives and uploading assets are not handled here and should go through apple_ads_request. It does not state a positive trigger condition (e.g. when to list creatives vs. list ads), so it stops short of full when/when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.