Skip to main content
Glama
524,573 tools. Updated 2026-09-06 16:29

"Billboard" matching MCP tools:

  • Heista's creative direction engine — same engine the Creative Director specialist runs internally, exposed over MCP. ONE-SHOT: give a brief, get N finished creative outputs. For back-and-forth refinement, or output shapes the `medium` enum below does not cover, use chat_with_creative_worlds instead. OUTPUT SHAPE switches on the `medium` arg: • omitted → N territory cards (default exploration). Each card sits on different psychology / craft / feel / world axis coordinates so the set spans the creative space rather than orbiting one insight. Card has: name, campaign line, 5-8 sentence pitch, one-sentence strategic bet, resolved axis state names, creative-director rationale. • `tvc` → N TVC scripts (15-90s — hook, arc, resolve, sound design, end line). • `billboard` / `ooh` / `print` → N out-of-home concepts (visual concept + line + placement rationale). • `social` → N social-video concepts (hook + format type + middle beat + payoff, optimised for Reels / TikTok / Shorts). • `activation` / `experiential` → N activation concepts (space design + user journey + peak moment + takeaway artifact). • `audio` → N sonic / radio concepts (sonic scene + voice + audio arc). • `campaign` → N full campaign platforms (insight → big idea → strategy → visual world → production roadmap). The engine can also produce manifesto / copy, naming, packaging, PR stunts, content series, brand positioning, partnerships — these output shapes are NOT in the medium enum, so use chat_with_creative_worlds when the user wants one of those. USE WHEN: user says "give me ideas / options / directions / territories", "what angles work for...", "show me three / five ways to...", "write a TVC for...", "draft billboard concepts for...", "I need fresh thinking on...". DO NOT USE to refine one existing direction (use chat tool), to critique work, for OKRs / internal docs / strategy decks, or anything outside advertising creative direction. INPUTS: brief (the creative problem, free text), count (2-6 concepts), optional brand_id (from list_brands or any create_powersource_* — when provided the engine grounds output in the brand's buyer tensions, voice, and selling points), optional medium (above), optional lens_hint (apply a playbook or signature move as a creative constraint), idempotency_key (safely retryable for 5 minutes). Returns the finished creative output as narrative text PLUS a structured array of resolved axis coordinates for programmatic use. Metered — typically 3-15 credits per call depending on count and brand context size. Charged after success on actual token usage.
    ConnectorNo auth
  • Multi-turn conversation with Heista's creative direction engine — a real chat where the agent decides each turn what to produce based on what you ask for. Use whenever the work needs more than one round, OR when you want an output shape not covered by call_creative_worlds' `medium` enum. WHAT YOU CAN ASK FOR (any of these, turn 1 or any turn after): • Territories — "give me five directions for X", "what angles work here" • A TVC script — "write a 30-second TVC for Cowboys" • Billboard concepts — "three billboards under a quiet-authority lens" • A campaign platform — "build #2 into a full campaign with the big idea" • A manifesto or copy — "draft the manifesto in the brand voice" • Naming — "name this product, five options with rationale" • A PR stunt — "what's the newsworthy version of this" • A content series — "20 episode ideas for a brand podcast" • Packaging, sonic branding, partnerships, social systems • Refinement — "make #2 darker", "extend that into a tagline", "summarise" • Pivots — "forget the soft-drink angle, try the late-night insomnia one" SESSION: omit session_id on turn 1; the response returns a fresh session_id you pass on every subsequent turn — that is how the conversation persists. brand_id is only honoured on turn 1 of a new session (continuing sessions keep their original brand context). USE WHEN: user wants back-and-forth, OR wants an output shape outside the medium enum (manifesto, naming, press release, content series, packaging, etc.). Prefer call_creative_worlds when the user wants "three options, done" with no follow-up. WON'T DO: write OKRs / internal docs / strategy decks; behave as a general assistant. It is a creative director with creative-director taste — anti-cliché, specificity test, will push back on vague briefs. Metered — typically 2-10 credits per turn depending on tool use and context size. Charged after each turn on actual token usage.
    ConnectorNo auth
  • Edit a scene by applying a batch of operations ATOMICALLY (all-or-nothing; one undo step in the editor). Call this for any add / move / edit / delete / duplicate / group / reparent / re-material. Reference existing nodes ONLY by the id shown in get_scene — never guess ids. To create a node and then modify or parent it in the same batch, put a `tempId` on the add op and use that same string as the id/parentId of later ops. Coordinates: Y up, units ≈ meters, ground at y≈0 — place objects so they rest sensibly. Geometry size lives in `data` (box {width,height,depth}; sphere/cylinder/torus {radius}; torus {tube}); the default box is 1.5×1.5×1.5. MATERIALS: to color an object pass `color` (#rrggbb) on add/assignMaterial; to apply a GENERATED material pass `materialMaps` (the map urls from get_generation) on add/assignMaterial — both mint-or-reuse a material and assign it, no pre-existing library entry needed. WEB BLOCKS (responsive site building-blocks): add webText (data.role h1|h2|h3|body|caption + data.text; glyph outline via data.outline true|false + data.outlineColor + data.outlineWidth), webImage (data.src + data.alt), webLink (data.label + data.href or data.linkedPageId), webVideo (data.src + data.poster); any web block also accepts data.anchor = world|billboard|hud. PAGES & NEIGHBORHOODS: add a `webpage` node per page (set data.pageTitle, data.slug); place pages tens of meters apart and parent each area's content under its page to build a multi-area site. Link areas with a webLink (data.linkedPageId = target page, or data.linkedCameraId = a saved viewpoint); a tempId minted in the SAME batch works as linkedPageId, so a "sign in the park linking to the mall" can be built in one call. Set data.arrivalCameraId on a page (a camera node id, or a tempId from the same batch) to choose the viewpoint visitors ARRIVE at for it — otherwise the runtime auto-frames the page from a generic distance. It belongs on the PAGE, not on the signs: a sign that jumps to a camera skips the page change, so the URL and title would still name the previous room. TAP ACTIONS: object nodes (geometry, text3d, group, cable) take data.tap = {"action":"inspect"} (fullscreen orbit lightbox on tap — products/exhibits/hero models), {"action":"moveTo"} (camera flies to frame it — tap-to-travel on landmarks), or {"action":"link", href|linkedPageId|linkedCameraId} (navigate like a webLink). inspect/moveTo take an optional "distance" (meters) overriding the auto camera distance. Runs for visitors in the published scene. ANIMATION: object nodes (geometry, text3d, group, cable) take data.animation to move on a loop in the published scene: {"duration":4,"loop":"loop","easing":"easeInOut","tracks":{"position":[{"t":0,"v":[0,0,0]},{"t":0.5,"v":[0,0.6,0]},{"t":1,"v":[0,0,0]}]}} bobs the node half a meter. t is 0-1 across duration seconds; values are OFFSETS from the authored transform (position meters, rotation euler radians, scale a multiplier, 1 = authored size). tracks = position|rotation|scale; loop = loop|pingpong|once; optional delay seconds; max 16 keys per track. Animated nodes cost scene weight and cannot be GPU-instanced — animate a few focal objects, not everything. FAST PATH — make_page: for a page that is a heading + paragraph + some links, ONE `make_page` op builds the whole thing: pass name, data.pageTitle+data.slug, hero (h1 text), body (paragraph), and links [{label, to: a page id/tempId | href}], plus a tempId (which becomes the PAGE id so other signs can target it). Create link-target pages earlier in the batch so their tempIds resolve. It replaces ~6–12 primitive ops. SET-DRESSING: use the `scatter` op to make `count` jittered copies of a node across an {area:{x,z}} (random rotation + slight scale + optional per-copy `tint` for imported models) — efficient for many props, debris, foliage, a trashy parking lot. LARGE SCENES: build INCREMENTALLY across multiple apply_ops calls (~40–50 objects per batch) instead of one huge batch — each call is its own atomic Undo and stays well within limits; call get_scene between batches to stay aligned. Do not try to emit hundreds of operations in a single call. The result may carry `warnings` — advisory scene lint (floating content, orphan web blocks, unreadable text, crowded pages, scene WEIGHT over the perf red line). The ops APPLIED; act on warnings in your next batch unless they contradict what the user asked for. A weight warning names the heaviest categories — trim them (lower-poly models, fewer shadow lights/particles) or publish will warn and far heavier scenes are blocked.
    ConnectorNo auth

Matching MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables full-text search of the Media History Digital Library's digitized entertainment trade press (e.g., Variety, Billboard), returning leaf-level results with keyword-in-context excerpts, no API key required.
    2
    Apache 2.0
  • A
    license
    A
    quality
    C
    maintenance
    An MCP server for out-of-home (OOH) site-reachability tooling that provides geospatial catchment scoring and multi-site comparison for billboard/ad-site evaluation using open data.
    7
    MIT

Matching MCP Connectors

  • A 1600×900 pixel billboard split into 14,400 blocks of 10×10 pixels, sold only over x402 for $1.00 USDC on Base — and only to machines. Humans may look. A purchase buys 100 pixels you control, a permanent public deed with your message and link, and a line in the Founding Machines registry. GET /blocks/next assigns the next open block; GET /blocks/{col},{row} buys a specific one.

  • Buy and paint 10x10 pixel blocks on a billboard only AI agents can buy: $1.00 USDC via x402 on Base.