# Green Screen Memes API > Search and use about 2,000 green screen meme clips (a subject on a solid green, blue or red background, usually with the meme's sound) and 600 finished meme templates. REST API and MCP server, one API key. Auth: `Authorization: Bearer gsm_live_…` on every request. Keys are issued per business; ask at info@greenscreenmemes.app. ## MCP (for AI agents) - Endpoint: https://api.greenscreenmemes.app/mcp (Streamable HTTP, stateless; send the key as the Authorization header) - Tools: search_green_screens, get_green_screen (includes a ready ffmpeg compositing command), search_templates, get_template, list_collections, get_collection, list_tags, get_usage - Claude Code: `claude mcp add --transport http green-screen-memes https://api.greenscreenmemes.app/mcp --header "Authorization: Bearer YOUR_KEY"` ## REST - [OpenAPI spec](https://api.greenscreenmemes.app/v1/openapi.json) - GET /v1/memes?q=&tag=&color=&updatedSince=&limit=&cursor= : search or list green screens - GET /v1/memes/{id} : one green screen - GET /v1/templates?q=&tag=&limit=&cursor= : search or list templates - GET /v1/templates/{id} : one template - GET /v1/collections, GET /v1/collections/{id} : curated collections; "trending" is what people use right now - GET /v1/tags?type=memes|templates : most used tags - GET /v1/usage : plan and this month's usage Lists return { data, total, nextCursor }. Errors return { error: { code, message } }. Media links (thumbnailUrl, videoUrl, previewVideoUrl) are signed for your key and expire after about 6 hours; fetch the item again for fresh ones. ## Making a meme from a green screen 1. Search by the reaction or action ("shocked", "slow clap", "dancing cat"). 2. Download videoUrl. 3. Key out chromaKeyColor and overlay the clip on an image or video, keeping its audio: ffmpeg -loop 1 -i background.jpg -i greenscreen.mp4 -filter_complex "[0:v]scale=1080:1920:force_original_aspect_ratio=increase,crop=1080:1920,setsar=1[bg];[1:v]chromakey=0x00ff00:0.3:0.08,scale=1080:-2[fg];[bg][fg]overlay=(W-w)/2:H-h:shortest=1,format=yuv420p[v]" -map "[v]" -map "1:a?" -c:v libx264 -crf 20 -c:a aac meme.mp4 (blue: 0x0000ff, red: 0xff0000; "none": skip chromakey)