Skip to main content

🎬 gifboom

The ultimate open-source GIF engine for Humans & AI Agents

PyPI Version Python Version License: MIT CI Status


gifboom hero

"Why spend 20 minutes finding and converting a GIF when gifboom can do it in 2 seconds?"


📦 Installation

pip install gifboom        # pip
uv add gifboom             # uv (recommended)
pipx install gifboom       # pipx — isolated global CLI

FFmpeg is required for video/GIF conversion:

brew install ffmpeg        # macOS
sudo apt install ffmpeg    # Ubuntu / Debian

Optional extras:

pip install 'gifboom[mcp]'   # MCP server for Claude Desktop / LobeChat
pip install 'gifboom[tui]'   # Interactive terminal UI
pip install 'gifboom[dev]'   # Dev tools (pytest, ruff, mypy)

🌟 Why gifboom?

We loved tools like gifgrep for searching GIFs right from the terminal. But we kept asking:

"Where is the MP4 conversion? Where is video-to-GIF? What about trimming? And why can't my Claude / Cursor AI agent search and send GIFs for me??" 🤔

So we built gifboom — an open-source, lightning-fast Python CLI + MCP Server that does it all:

  • 🔍 Multi-Provider Search — GIPHY, Tenor, KLIPY, and local folders in one command
  • 🎬 GIF ↔ Video Conversion — Turn heavy 30MB GIFs into silky 2MB MP4s (or vice versa)
  • 🖼️ Stills & Contact Sheets — Grab single PNG frames or full 3×3 video grids
  • ✂️ Trim & Shrink — Slice out the funny 2 seconds and optimize color palettes
  • 🤖 AI-Native — Give your AI assistant GIF superpowers via CLI Skill or MCP Server

🍿 Feature Tour

1. 🔍 Instant GIF Search

Find the perfect reaction without leaving your terminal (or let your script get JSON results).

Cat Searching

# Pretty table format
gifboom search "excited reaction" --format table

# Pure JSON for scripts & AI
gifboom search "mind blown" --format json --limit 5

# Specific provider
gifboom search "fireworks" --provider tenor

2. 🎬 GIF ↔ Video Alchemy

Convert giant animated GIFs into lightweight MP4/WebM videos for Twitter, Discord, or web apps. Or turn video clips into crisp GIFs!

Transformation Magic

# Shrink 40MB GIF → 2MB MP4 (huge bandwidth saver!)
gifboom convert gif2video cat.gif -o cat.mp4

# Convert video clip to high-quality GIF
gifboom convert video2gif movie.mp4 -o clip.gif --start 00:01:20 --end 00:01:25

# Batch convert a whole folder of GIFs
gifboom convert batch ./my_gifs/ --format mp4 --out-dir ./my_videos/

3. 🖼️ Frame Extractor & Contact Sheets

Need a quick PNG snapshot or a grid breakdown of every keyframe?

Freeze Frame

# Extract single frame at 1.5 seconds
gifboom still dance.gif --at 1.5 -o frame.png

# Generate a 3×3 grid breakdown of 9 frames
gifboom sheet dance.gif --frames 9 --cols 3 -o grid.png

4. 🤖 AI Superpowers — Two Flows

Teach your AI agents (Claude Desktop, Cursor, Antigravity, LobeHub) how to handle GIFs autonomously!

Robot AI

Flow A — CLI + Agent Skill (shell-based)

Best for: Antigravity, Cursor, Windsurf, Claude Code — any agent with terminal access.

AI Agent
   ├─ reads skills/gifboom/SKILL.md   ← knows every command & flag
   └─ runs gifboom CLI via shell      ← gifboom search / convert / download …
pip install gifboom

# Copy the skill to your agent's skills folder:
cp -r skills/gifboom ~/.agents/skills/gifboom
# or for Antigravity:
cp -r skills/gifboom ~/.gemini/config/skills/gifboom

Flow B — MCP Server (native tool calls)

Best for: Claude Desktop, LobeChat, LibreChat — clients without shell access.

AI Agent
   └─ calls MCP tools directly   ← search_gifs() / gif_to_video() / …
         └─ gifboom MCP server   ← no shell needed, structured JSON
pip install 'gifboom[mcp]'

claude_desktop_config.json:

{
  "mcpServers": {
    "gifboom": {
      "command": "gifboom",
      "args": ["mcp"]
    }
  }
}
Flow A — CLI + Skill Flow B — MCP
Requires shell
Claude Desktop
Cursor / Antigravity
Extra install none gifboom[mcp]

💡 Both flows can be used simultaneously — install once, integrate both ways.


🚀 Quick Start

Step 1: Install

pip install gifboom
brew install ffmpeg   # Required for video magic ✨

Step 2: Get Free API Keys in 1-Click 🔑

Don't have API keys yet? No problem! gifboom will launch the developer portals for you:

# Open developer portals directly in your web browser:
gifboom keys giphy    # Opens GIPHY Developer Dashboard
gifboom keys tenor    # Opens Tenor / Google Cloud Console

# Save your key locally:
gifboom config set GIPHY_API_KEY=your_secret_key_here

Step 3: Boom! 💥

# Download the top "happy cat" GIF directly
gifboom download "q:happy cat" -o ~/Downloads/happy_cat.gif

# Convert to MP4
gifboom convert gif2video ~/Downloads/happy_cat.gif -o ~/Downloads/happy_cat.mp4

# Batch convert a whole folder of GIFs
gifboom convert batch ./my_gifs/ --format mp4 --out-dir ./my_videos/

⚡ Cheat Sheet & Recipes

Task Command
Quick search & copy URL gifboom search "party parrot"
Download specific URL gifboom download https://media.giphy.com/... -o meme.gif
Discord Emoji Optimizer gifboom convert optimize emote.gif --colors 64 -o emote_small.gif
Trim awkward start/end gifboom convert trim laugh.gif --start 0.5 --end 2.5 -o clean_laugh.gif
WebM for websites gifboom convert gif2video hero.gif -o hero.webm --crf 28
Check cache size gifboom cache stats

🌐 Provider Support

Provider Free Tier Setup Command Env Variable
GIPHY 100 req/hr (dev key) gifboom keys giphy GIPHY_API_KEY
Tenor Generous (Google Cloud) gifboom keys tenor TENOR_API_KEY
KLIPY Free beta gifboom keys klipy KLIPY_API_KEY
Local Unlimited 💾 No key needed

🤝 Contributing

We love pull requests! Whether it's adding new GIF providers, improving conversion speed, or writing documentation:

git clone https://github.com/MIt9/gifboom.git
cd gifboom
pip install -e ".[dev]"
pytest tests/ -v

Check out our CONTRIBUTING.md for details.


Made with ❤️ and lots of 🍿 by the Open Source Community.

License: MITReport IssueStar on GitHub ⭐

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gifboom-0.1.3.tar.gz (129.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gifboom-0.1.3-py3-none-any.whl (25.9 kB view details)

Uploaded Python 3

File details

Details for the file gifboom-0.1.3.tar.gz.

File metadata

  • Download URL: gifboom-0.1.3.tar.gz
  • Upload date:
  • Size: 129.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.9

File hashes

Hashes for gifboom-0.1.3.tar.gz
Algorithm Hash digest
SHA256 19fc26857a589c646aeddf19cfb029720deb57ee84c82d1f357eacc9cf8dd0da
MD5 fa533febbaa5677eb99b2ab4662bc3f1
BLAKE2b-256 0d7c79526bef81f09a1ce1817740f22fa62a7f940052358c4b0adc68f64d753b

See more details on using hashes here.

File details

Details for the file gifboom-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: gifboom-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 25.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.9

File hashes

Hashes for gifboom-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 744871ce07114d8d703abb9f21d4b536d6c95c6f568335d08a165464dcb89373
MD5 61f62fe28704e00f40814ba9048232d4
BLAKE2b-256 171bcc5435bb9db309925c9f4df9f130d1e5b6555cebc23bc729c4385499158c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page