Skip to main content
Glama

AdsAgent — Meta Ads MCP

creatives_list

Read-only

Uploads plus bound Drive. library_source=all (default) or cloud. Materials/videos/months include cloud. Dates need a timezone offset; cloud uses Drive modified_time. Follow next_cursor, same filters; uploads page first. names<=50 exact filenames. Upload: Creative library. No list call is needed just for instructions

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": "creatives_list"
  }
}

Input Schema

NameRequiredDescriptionDefault
qNo
sortNonewest
limitNo
namesNo
scopeNolibrary
cursorNo
created_toNo
folder_nameNo
created_fromNo
library_sourceNoall
ranking_metricNo

Output Schema

NameRequiredDescriptionDefault
messageNo
retryableNo
support_refNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • removedInput schema / properties / connection_context
      Removed value: -{
      -  "pattern": "^mctx_v1_[0-9a-f]{64}$",
      -  "type": "string"
      -}
  2. Changed1 schema field changed
    • addedInput schema / properties / names
      Added value: +{
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
  3. Changed7 schema fields changed
    • addedInput schema / properties / library_source
      Added value: +{
      +  "default": "all",
      +  "enum": [
      +    "all",
      +    "upload",
      +    "cloud"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / ranking_metric
      Added value: +{
      +  "enum": [
      +    "roas",
      +    "cpa",
      +    "ctr",
      +    "spend"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / else / properties / cloud_count
      Added value: +{
      +  "type": "integer"
      +}
    • addedOutput schema / else / properties / items / items / properties / folder_path
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / else / properties / items / items / properties / library_source
      Added value: +{
      +  "enum": [
      +    "upload",
      +    "cloud"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / else / properties / items / items / properties / read_only
      Added value: +{
      +  "type": "boolean"
      +}
    • addedOutput schema / else / properties / library_source
      Added value: +{
      +  "enum": [
      +    "all",
      +    "upload",
      +    "cloud"
      +  ],
      +  "type": "string"
      +}
  4. Changed6 schema fields changed
    • addedOutput schema / then / properties / category
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / then / properties / expected
      Added value: +{
      +  "type": "boolean"
      +}
    • addedOutput schema / then / properties / failure_kind
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / then / properties / responsibility_hint
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / then / properties / route
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / then / properties / user_visible
      Added value: +{
      +  "type": "boolean"
      +}
  5. Changed1 schema field changed
    • addedInput schema / properties / connection_context
      Added value: +{
      +  "pattern": "^mctx_v1_[0-9a-f]{64}$",
      +  "type": "string"
      +}
  6. Changed1 schema field changed
    • addedInput schema / properties / sort
      Added value: +{
      +  "default": "newest",
      +  "enum": [
      +    "newest",
      +    "oldest"
      +  ],
      +  "type": "string"
      +}
  7. First observed

TDQS

B3.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint/destructiveHint=false, so safety is covered. The description adds real behavioral context beyond that: pagination via next_cursor with 'uploads page first' ordering, that dates require a timezone offset, and that cloud results are filtered by Drive modified_time. These are non-obvious operational traits an agent needs.

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

Conciseness3/5

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

It is short and every fragment carries some information, but the telegraphic style and unclear opening line harm front-loading — the most important point (that this lists creatives from uploads and cloud) is buried in fragments rather than stated first.

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

Completeness2/5

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

An output schema exists so return values needn't be explained, and read-only annotations cover safety. But with 11 parameters at 0% schema description coverage and six parameters given no meaning anywhere, the description is not complete enough for an agent to confidently invoke with filters, sorting, or scope options.

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 coverage is 0%, so the description must compensate. It does explain library_source (defaults and cloud semantics) and names (<=50 exact filenames) and hints at cursor/date behavior, but leaves q, sort, limit, scope, folder_name, and ranking_metric entirely undocumented, so roughly half the parameters remain opaque.

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

Purpose3/5

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

The description opens with a fragment ('Uploads plus bound Drive.') rather than a clear verb+resource statement; the agent must infer from the name that this lists creatives. It does distinguish content sources (uploads + bound cloud Drive) but never plainly says 'list creatives', and offers no explicit contrast with siblings like creatives_list_cloud or creatives_top.

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

Usage Guidelines3/5

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

Some usage signal is present: 'library_source=all (default) or cloud' implies when cloud content is included, and 'No list call is needed just for instructions' is an explicit when-not-to-use hint. However, it gives no guidance on choosing between this tool and creatives_list_cloud, creatives_top, or creatives_pick, leaving the main routing decision to inference.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources