Skip to main content
Glama

Apogee: Bulk Ad Launcher for Meta, TikTok & Snapchat

Start a bulk ad launch (Meta, TikTok, Snapchat)

get_launch_questions
Read-onlyIdempotent

Start here to launch new ads in bulk on Meta, TikTok or Snapchat: the questions Apogee asks before a launch, with the account's own choices. The launch interview, Apogee's way: every question the Apogee app asks before a launch, in order, each with the choices read from the user's own account (ad sets and ads with their spend, saved templates, campaigns, pages, pixels and events, catalogs, naming conventions) and the recommended answer. Call it first, then ask the questions whose status is to_ask ONE TOPIC AT A TIME, in the user's language, showing the choices. Never answer for the user. Call it again with files once the creatives are known (nomenclature read + proposed ads grouped by format), and with the answers so far to get the choices that depend on them (a pixel's events, a page's forms, a catalog's product sets, what a copied ad set / ad holds).

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "ad_account_id": "<ad_account_id>"
    },
    "name": "get_launch_questions"
  }
}

Input Schema

NameRequiredDescriptionDefault
filesNo
answersNoThe answers so far, with prepare_launch's argument names
platformNoDefault meta. tiktok / snapchat: the same interview and arguments where they mean the same, their own settings under `tiktok` / `snapchat`, groups made by hand under `adgroups` / `adsquads`
ad_account_idYesThe ad account (list_ad_accounts): Meta act_…, a TikTok advertiser id, a Snapchat ad account id

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive and open-world, and nothing in the description conflicts. Beyond that, the description discloses genuinely useful behavior the annotations cannot: questions are ordered, carry a 'to_ask' status, are answered one topic at a time, and later calls return choices whose options depend on previously supplied answers. It stops short of describing the response envelope or error cases.

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 front-loaded correctly with 'Start here', but the second sentence is a dense nested-parenthetical inventory, and the interview is described twice ('the questions Apogee asks before a launch' and 'every question the Apogee app asks before a launch, in order'). The workflow instructions that follow are worth their space, but the opening could be trimmed.

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 multi-turn interview tool with no output schema, the description carries its weight: it explains the iteration loop, the status field to act on, the per-topic presentation rule, and the reasons a repeat call with files/answers changes the result. Only minor gaps remain, such as what the container returns if the account is missing a pixel or page.

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?

With schema description coverage at 75%, the schema already explains most fields (files.ref, format, durationS, platform, ad_account_id). The description adds meaning about *when and why* to supply `files` (creatives known, nomenclature read) and `answers` (choices that depend on them, like a pixel's events or a copied ad set's contents) rather than adding field-format detail. That raises it slightly above the schema baseline but not to elaboration of parameter shapes.

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

Purpose4/5

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

The description states specifically that this returns Apogee's pre-launch interview questions in order, each with choices read from the user's own account (ad sets, templates, pages, pixels, catalogs, naming conventions) plus a recommended answer. That is a concrete verb+resource, and the title's 'bulk ad launch' framing is reconciled by presenting the tool as the interview step. It does not name a sibling tool it must not be confused with (e.g. launch_status, list_launches), which keeps it just under a 5.

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

Usage Guidelines5/5

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

Explicit call sequencing is given: 'Call it first, then ask the questions whose status is to_ask ONE TOPIC AT A TIME, in the user's language, showing the choices. Never answer for the user.' It also specifies a second invocation pattern, passing files once creatives are known and answers so far to fetch dependent choices. This is when-to-use, how-to-use, and a clear behavioral prohibition all in one.

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.