Skip to main content
Glama

ai_meme_generator_create_image

Generate custom memes with AI by selecting a template and topic. Starts async job, charges 10 credits, and returns download URLs.

Instructions

Create an AI generated meme. Each meme costs 10 credits.

MCP guidance:

  • This starts an async image generation job and returns id plus credits_charged immediately. If the user wants the finished result, call the wait_for_image_project helper with the returned id, or poll the matching GET /v1/image-projects/{id} endpoint until status is complete, error, or canceled. Completed projects include downloads with direct URLs. The custom wait helper also returns exact_download_urls separately from expiration metadata.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNoThe name of the meme.
styleYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesUnique ID of the image. Use it with the [Get image Project API](https://docs.magichour.ai/api-reference/image-projects/get-image-details) to fetch status and downloads.
credits_chargedYesThe amount of credits deducted from your account to generate the image. We charge credits right when the request is made. If an error occurred while generating the image(s), credits will be refunded and this field will be updated to include the refund.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.9/5.0
Behavior4/5

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

With no annotations provided, the description carries the full behavioral burden, and it delivers: it discloses the 10-credit cost, the async job start returning id and credits_charged immediately, the polling mechanism with terminal statuses (complete, error, canceled), the downloads field with direct URLs, and the exact_download_urls distinction in the wait helper. It does not cover auth requirements or insufficient-credit failure behavior, but the disclosed workflow traits substantially exceed the minimum.

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?

The one-line purpose and cost are front-loaded, followed by a labeled 'MCP guidance' section that organizes the async workflow without fluff. The guidance is dense but each sentence earns its place (return contract, wait helper, polling statuses, download URLs). Slightly long, but the structure makes it scannable.

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 complex async, credit-charging tool with a nested style object and an output schema, the description covers the essential workflow: immediate return contract, how to obtain the final result, status values, and download URL handling. The output schema covers return values, so that omission is fine. Gaps are minor: no error/refund behavior on failure and no auth note, but the core call-and-retrieve lifecycle is fully explained.

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?

The description adds no parameter-level meaning; all param semantics live in the schema, which describes name, topic, template (with full enum), and searchWeb. Schema description coverage is exactly 50% at the top level because the style object itself lacks a description, but its nested properties are well documented. The description neither compensates for the gap nor is it needed to, leaving this at an adequate midpoint.

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?

"Create an AI generated meme" states a specific verb (create) and resource (meme), clearly distinguishing it from the many sibling create_image tools such as ai_gif_generator_create_image, ai_image_generator_create_image, and head_swap_create_image. The added cost note (10 credits) reinforces what this specific operation entails. An agent can select this tool correctly based on the first sentence alone.

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?

The description gives solid procedural guidance for the async workflow (call wait_for_image_project with the returned id or poll the endpoint), but it never says when to prefer this tool over sibling meme/image creators, nor does it name any alternative or exclusion. Usage context for the request orchestration is clear, but sibling-selection guidance is absent.

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