Skip to main content
Glama
README.md
# mcp-gif

MCP server for GIF animation analysis. Provides metadata extraction, individual frame export, and per-frame timing information.

## Setup

### Claude Code

```bash
claude mcp add -s user gif npx mcp-gif
```

### Claude Desktop

Add to your `claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "gif": {
      "command": "npx",
      "args": ["mcp-gif"]
    }
  }
}
```

## Tools

### `gif_info`

Get GIF metadata: dimensions, frame count, delays, loop count, and average FPS.

**Input**: `path` — path to a GIF file

**Output**:
```json
{
  "width": 320,
  "height": 240,
  "frames": 12,
  "delays": [100, 100, 100],
  "loop": 0,
  "avgFps": 10
}
```

### `gif_frame`

Extract a single frame as a PNG image.

**Input**: `path` — path to a GIF file, `frame` — 0-based frame index

**Output**: PNG image (base64)

### `gif_frames_list`

List all frames with their index, delay (ms), and FPS.

**Input**: `path` — path to a GIF file

**Output**:
```json
[
  { "index": 0, "delay": 100, "fps": 10 },
  { "index": 1, "delay": 200, "fps": 5 }
]
```

## License

BSD-2-Clause

TDQS

A3.9/5.0

Scored across 3 tools

Disambiguation4/5

gif_info and gif_frames_list both provide delay and FPS information, which could cause confusion, though gif_info is summary metadata while gif_frames_list is per-frame. gif_frame is clearly distinct.

Naming Consistency4/5

All tools use a consistent gif_ prefix and snake_case, but the second part mixes singular/plural nouns (frame vs frames_list) and uses no explicit verbs, which is a minor deviation from standard verb_noun patterns.

Tool Count4/5

Three tools is a compact set for a focused GIF inspection/extraction server; it's not overly thin and each tool serves a clear purpose, though less comprehensive than larger utilities.

Completeness4/5

The server covers the core workflow of inspecting a GIF (metadata, frame listing, frame extraction), but lacks batch or creation/editing tools, which are minor gaps for a GIF utility.

Maintenance

ActivityInactive
ResponsivenessNo issues