Skip to main content
Glama

gst-mcp

PyPI version License: MIT

MCP server for GStreamer introspection and pipeline development. Helps LLMs understand GStreamer elements, caps, and pipeline construction.

Installation

# Using uvx (no install needed)
uvx gst-mcp

# Or install globally
uv tool install gst-mcp

# Or with pip
pip install gst-mcp

From source

git clone https://github.com/wizenink/gst-mcp
cd gst-mcp
uv sync

System Requirements

  • Python 3.13+

  • GStreamer 1.0 with development files

  • PyGObject (GStreamer Python bindings)

On Arch Linux:

sudo pacman -S gstreamer gst-plugins-base gst-plugins-good python-gobject

On Ubuntu/Debian:

sudo apt install gstreamer1.0-tools gstreamer1.0-plugins-base gstreamer1.0-plugins-good python3-gi

Usage with Claude Code

Add to ~/.claude/settings.json:

{
  "mcpServers": {
    "gstreamer": {
      "command": "uvx",
      "args": ["gst-mcp"]
    }
  }
}

Or if installed from source:

{
  "mcpServers": {
    "gstreamer": {
      "command": "uv",
      "args": ["--directory", "/path/to/gst-mcp", "run", "gst-mcp"]
    }
  }
}

Available Tools

Registry Introspection

  • list_elements - List elements by category (source, sink, decoder, encoder, muxer, demuxer, filter, parser)

  • get_element_info - Get detailed element info (properties, pads, caps templates, signals)

  • list_plugins - List all installed GStreamer plugins

  • get_plugin_info - Get plugin details and its elements

  • search_elements - Search elements by name, description, or caps

Caps & Negotiation

  • parse_caps - Parse caps string to structured info

  • check_caps_compatible - Check if two caps can intersect

  • check_elements_can_link - Check if elements can link based on pad caps

  • suggest_converter - Suggest converter elements for incompatible elements

Pipeline Tools

  • validate_pipeline - Validate pipeline syntax with error suggestions

  • run_pipeline - Execute pipeline (sync with timeout or async)

  • get_pipeline_status - Get status of running pipeline

  • stop_pipeline - Stop a running pipeline

  • list_running_pipelines - List all running pipelines

  • get_pipeline_graph - Generate DOT graph of pipeline

Documentation & Examples

  • get_examples - Pipeline examples by category (playback, transcoding, streaming, capture, effects, testing, analysis)

  • fetch_online_docs - Fetch element documentation from GStreamer website

Example Queries

Ask Claude:

  • "What elements can decode H.264 video?"

  • "Can I link videotestsrc directly to x264enc?"

  • "How do I create a pipeline to transcode MP4 to WebM?"

  • "What properties does the compositor element have?"

  • "Show me examples of RTMP streaming pipelines"

License

MIT

A
license - permissive license
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
2Releases (12mo)

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/wizenink/gst-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server