gst-mcp
Provides tools for GStreamer introspection and pipeline development, allowing LLMs to understand GStreamer elements, caps, and pipeline construction.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@gst-mcpCan I link videotestsrc directly to x264enc?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
gst-mcp
MCP server for GStreamer introspection and pipeline development. Helps LLMs understand GStreamer elements, caps, and pipeline construction.
Installation
From PyPI (recommended)
# Using uvx (no install needed)
uvx gst-mcp
# Or install globally
uv tool install gst-mcp
# Or with pip
pip install gst-mcpFrom source
git clone https://github.com/wizenink/gst-mcp
cd gst-mcp
uv syncSystem 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-gobjectOn Ubuntu/Debian:
sudo apt install gstreamer1.0-tools gstreamer1.0-plugins-base gstreamer1.0-plugins-good python3-giRelated MCP server: mcp-openapi-schema
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 pluginsget_plugin_info- Get plugin details and its elementssearch_elements- Search elements by name, description, or caps
Caps & Negotiation
parse_caps- Parse caps string to structured infocheck_caps_compatible- Check if two caps can intersectcheck_elements_can_link- Check if elements can link based on pad capssuggest_converter- Suggest converter elements for incompatible elements
Pipeline Tools
validate_pipeline- Validate pipeline syntax with error suggestionsrun_pipeline- Execute pipeline (sync with timeout or async)get_pipeline_status- Get status of running pipelinestop_pipeline- Stop a running pipelinelist_running_pipelines- List all running pipelinesget_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
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for progressive tool usage at any scale (see https://klavis.ai)
An MCP server that provides an API to LLMs to manage their JumpCloud resources.
MCP server for Clipkit — gives AI agents a video toolbox via the Clipkit schema.
Related MCP Servers
- AlicenseBqualityCmaintenanceAn MCP server that provides LLMs access to other LLMs416 npm79MIT
- AlicenseNot gradedqualityFmaintenanceA MCP server that exposes OpenAPI schema information to LLMs like Claude. This server allows an LLM to explore and understand large OpenAPI schemas through a set of specialized tools, without needing to load the whole schema into the context101 npm49MIT
- AlicenseNot gradedqualityFmaintenanceMCP server that bridges GIMP 3.0 with natural language commands, enabling conversational image editing through Claude Desktop and other MCP clients. Exposes GIMP's full PyGObject API for AI-powered image manipulation.225GPL 3.0
- AlicenseNot gradedqualityDmaintenanceAn MCP server that publishes CLI tools on your machine for discoverability by LLMs10 npm1MIT