Skip to main content
Glama

Build a free digital media plan

build_media_plan

Builds a starting digital advertising plan for a small or local business: which channels to use (from the 22 Deep Thought runs, such as Google search ads, Local Services Ads, Facebook and Instagram, Nextdoor, YouTube, streaming TV), how to split the monthly ad budget in dollars, estimated reach where it can be forecast, first-month steps and numbers to watch. Enforces each channel's minimum budget. Free for signed-in users; the plan is also emailed to them. Takes about 10 to 20 seconds.

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": {
      "business_type": "<business_type>",
      "location": "<location>",
      "monthly_budget": "<monthly_budget>",
      "goal": "<goal>"
    },
    "name": "build_media_plan"
  }
}

Input Schema

NameRequiredDescriptionDefault
goalYesThe main result they want.
notesNoOptional extra context: seasonality, ideal customers, services to push, what hasn't worked.
locationYesTown, city or ZIP code the business serves, e.g. 'Lawrenceville, GA' or '30043'.
service_areaNoHow far they serve customers. Defaults to 'About 25 miles'.
business_nameNoOptional business name. Defaults to the one on their Deep Thought account.
business_typeYesWhat the business does, e.g. 'HVAC', 'dental practice', 'Italian restaurant', 'online store selling candles'.
monthly_budgetYesMonthly ad budget in US dollars, e.g. 1500.
currently_runningNoMarketing they run today, if known.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare a non-read-only, non-idempotent, open-world operation, so the description only needs to add context, and it does: it enforces each channel's minimum budget (a validation behavior that can change the result), emails the plan to the signed-in user (a side effect beyond the return value), and gives a 10-20 second latency expectation. It does not say what happens when the budget is below all channel minimums or whether the plan is persisted.

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

Conciseness4/5

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

Front-loaded with the verb and outcome, followed by a compact parenthetical of channels and a short list of deliverables; nearly every clause carries information an agent needs. The channel enumeration is dense but earns its place by showing scope, though it could be trimmed slightly.

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

Completeness5/5

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

With 8 parameters, no output schema, and full schema coverage, the description supplies exactly what the schema cannot: what the response contains (channel picks, budget allocation, reach, first-month steps, metrics to watch), the latency, and the email side effect. Nothing essential for correct invocation is missing.

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

Parameters4/5

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

Schema coverage is 100% with rich per-field descriptions including defaults for service_area and business_name, so the schema already carries the load. The description still adds meaning the schema doesn't: the plan is drawn from 'the 22 Deep Thought runs,' reach is only estimated 'where it can be forecast,' and monthly_budget must clear per-channel minimums.

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?

Opens with a specific verb and resource ('Builds a starting digital advertising plan') and then enumerates the deliverables: channel selection, dollar budget split, estimated reach, first-month steps. The channel examples and the 'small or local business' scope make it easy to distinguish from siblings like submit_campaign or campaign_results.

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?

Establishes clear context for use — small/local business, stated monthly budget, signed-in user, 10-20 second runtime — which tells an agent when the tool is appropriate. It stops short of explicit routing against siblings (e.g., 'use before submit_campaign' or 'not for auditing existing campaigns'), so no exclusions are stated.

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