MagicMemeCreate

Get started

Set up MagicMeme in your agent

You can start from either path. Most people try a still first because catalog search needs no login.

Before you begin

You need:

  • An AI client that can call MCP over HTTP (Cursor, Claude, and similar)
  • A situation or a named format (Drake, This Is Fine, two buttons)
  • Credits or MPP only if you will face-swap in production

The public catalog tools do not require login. Face swap on the hosted server does: credits for humans, MPP for agents. Local stdio in this repo can generate with the process OPENROUTER_API_KEY (dev only).

1. Connect hosted MCP

In Cursor, Claude, or another MCP client, add a server with only this URL:

{
  "mcpServers": {
    "magicmeme": {
      "type": "http",
      "url": "https://magicmeme.com/api/mcp"
    }
  }
}
  • Cursor: Settings → MCP → New MCP server
  • Claude: Custom connector → URL

Use HTTPS in production. The client should speak Streamable HTTP (POST). Running this repo locally? Point at http://localhost:3000/api/mcp instead, or bun run scripts/mcp-server.ts for stdio.

2. Make a still

Paste this into the agent after MCP is connected:

Fetch https://magicmeme.com/llms.txt and follow it. Situation: this PR review is 47 comments of nitpicks. Pick a template, write captions, call render_meme_still, show the image.

You should see pixels, not a markdown box drawing. If the agent invents a cdn.magicmeme.com URL for the finished file, point it back at render_meme_still. Blank templates live on the CDN. Finished stills come back as imageBase64.

More detail: render_meme_still.

3. Send a human to the studio

When they will edit or download PNG:

Call get_create_url with prompt "9am standup on two hours of sleep". Give me the link only.

That opens /create with the situation in the query string. Guests get one AI caption batch per UTC day. Signed-in users continue.

4. Face swap (optional)

Humans: Login (email OTP) → Pricing/tools/face-swap-meme.

Agents: face_swap_meme with settlement=agentic, then the MPP handshake. Don't put your own OpenRouter key in a customer agent.

Next steps

  • Connect MCP if you want the tool catalog before a skill.
  • Tools for arguments and empty-result behavior.
  • Troubleshooting if the still is empty or face swap returns 402 and stops.

Command Palette

Search for a command to run...