Skip to main content
Glama

Show an image the way a Meta placement shows it

mockup_placement
Read-only

Takes the URL of any image (an ad, a banner, a product photo, a render URL from the served feed) and returns a mockup of it in a Meta placement: "fb-feed" (the post around it: header, caption, link bar with the CTA, action row; Feed shows 1.91:1 up to 4:5 and crops anything taller to 4:5), or a 9:16 placement ("ig-reels", "ig-stories", "fb-reels", "fb-stories") with the app's UI on top. A 9:16 image fills the screen; any other ratio sits in the middle with bars, as Meta shows a square catalog image without a 9:16 one. zones:true also tints what the UI covers and outlines the safe area (Meta Ads Guide: top 14 %, bottom 35 %, 6 % per side). For a template that is not live yet, use preview_render with overlay. JPEG, PNG, GIF or WebP up to 15 MB; 30 mockups an hour per account (300 on a paid plan).

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": {
      "imageUrl": "<imageUrl>",
      "placement": "<placement>"
    },
    "name": "mockup_placement"
  }
}

Input Schema

NameRequiredDescriptionDefault
zonesNo9:16 placements: tint what the UI covers and outline the safe area.
imageUrlYesPublic http(s) URL of a JPEG, PNG, WebP or GIF image (up to 15 MB).
placementYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations only cover readOnlyHint and openWorldHint, but the description adds real behavior: Feed shows 1.91:1 up to 4:5 and crops taller images, non-9:16 images are letterboxed, zones tints the UI area and outlines the safe area with concrete percentages. It also discloses accepted formats, the 15 MB cap, and rate limits (30/hour, 300 on a paid plan) – things annotations cannot express.

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 the two placement families, and almost every clause carries new information. It is a dense near-single-paragraph wall of text with ratio figures and limits packed into parentheticals, which costs a little readability against a tighter bulleted structure.

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 three-parameter rendering tool with no output schema, this covers the critical unknowns: ratio handling, letterboxing, overlay zones, size/format constraints, and rate limits. The main remaining gap is that the description says it "returns a mockup" without indicating whether the result is an image URL, binary data, or a job reference, which matters for a tool with no output schema.

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 67% and the placement enum carries no per-value descriptions, so the description does the work: it explains what fb-feed renders around the image and what the four 9:16 values do, plus how ratios behave in each. The zones parameter is given concrete safe-area numbers (14% top, 35% bottom, 6% sides), though the returned artifact's format is still unspecified.

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 concrete verb+resource: takes an image URL and returns a mockup of it in a named Meta placement. It enumerates the actual placement values and distinguishes the two rendering families (fb-feed vs. 9:16 placements), so an agent knows exactly what it produces.

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?

Explicitly routes a whole class of cases elsewhere: "For a template that is not live yet, use preview_render with overlay." That names the sibling and the selecting condition, and the input accepts a render URL from the served feed, which tells the agent this is the post-serve preview path.

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