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.2.tar.gz (128.5 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.2-py3-none-any.whl (24.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for gifboom-0.1.2.tar.gz
Algorithm Hash digest
SHA256 a8ac1afb977d24da009423c9a509eee242c82ba114fa159f31e57adf005e3050
MD5 dc9435183fde750aa8ae6585a629046a
BLAKE2b-256 674da7c2da2a2dc546462e6a1062811f62f09852dd49d8348af1becd47a94ed0

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for gifboom-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7082d3b0cd2dc769768b45303584142ad3c8a60aa7bb105b50904dacd49a5caf
MD5 533cfabf948feaa44cfc0f1c6372fe26
BLAKE2b-256 336e60bc16e554a33f2c9b406b0b459da0e53b45b3a11d523378ca7fb30197d8

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