MCP server for managing and diagnosing GlassFlow streaming pipelines
Project description
GlassFlow MCP Server
Model Context Protocol server for managing and diagnosing GlassFlow streaming pipelines. Exposes pipeline CRUD, metrics queries, log search, and a composite diagnostic tool as MCP tools that AI agents (Claude Code, etc.) can call over SSE transport.
Features
- Pipeline management — create, list, get, edit, stop, resume, delete pipelines
- Diagnostics — query throughput, latency, DLQ state, and error logs
diagnose_pipeline— single-call diagnostic snapshot combining health, metrics, DLQ, and recent errors- V3 config reference — MCP resource with the complete pipeline configuration format
- Uses the official GlassFlow Python SDK
Quick start
Local development
pip install -e .
export GLASSFLOW_API_URL="http://localhost:8081" # or port-forward to your cluster
python -m glassflow_mcp.server
Connect Claude Code
claude mcp add --transport sse glassflow http://localhost:8080/sse
Start a new Claude Code session — the GlassFlow tools will appear automatically.
Available tools
Pipeline management
| Tool | Description |
|---|---|
list_pipelines |
List all pipelines with status |
get_pipeline |
Get full V3 pipeline configuration |
get_pipeline_health |
Get pipeline health and status |
create_pipeline |
Create a new pipeline (V3 JSON config) |
edit_pipeline |
Edit a stopped pipeline |
stop_pipeline |
Stop a running pipeline |
resume_pipeline |
Resume a stopped pipeline |
delete_pipeline |
Delete a pipeline |
Diagnostics
| Tool | Description |
|---|---|
diagnose_pipeline |
Complete diagnostic snapshot (health + metrics + DLQ + errors) |
query_pipeline_metrics |
Query specific metrics (throughput, latency, DLQ rate, bytes) |
query_custom_metric |
Custom PromQL query (restricted to glassflow_gfm_* metrics) |
query_pipeline_logs |
Search logs by pipeline, severity, and component |
get_pipeline_errors |
Recent ERROR/WARN logs for a pipeline |
get_dlq_state |
Dead-letter queue message count |
Resources
| URI | Description |
|---|---|
glassflow://docs/pipeline-v3-format |
Complete V3 pipeline configuration reference with examples |
Configuration
All configuration is via environment variables:
| Variable | Default | Description |
|---|---|---|
GLASSFLOW_API_URL |
http://glassflow-api....:8081 |
GlassFlow REST API URL |
VICTORIAMETRICS_URL |
http://victoria-metrics....:8428 |
VictoriaMetrics URL for metrics queries |
VICTORIALOGS_URL |
http://victoria-logs....:9428 |
VictoriaLogs URL for log queries |
MCP_PORT |
8080 |
Port the SSE server listens on |
Deployment
Docker
docker build -t glassflow-mcp-server .
docker run -p 8080:8080 \
-e GLASSFLOW_API_URL=http://your-glassflow-api:8081 \
glassflow-mcp-server
Kubernetes
Example manifests are provided in k8s/examples/. Copy them, edit the CHANGEME values, and apply:
kubectl apply -f k8s/examples/deployment.yaml -f k8s/examples/service.yaml
Then connect via port-forward:
kubectl port-forward -n <namespace> svc/glassflow-mcp 8080:8080
claude mcp add --transport sse glassflow http://localhost:8080/sse
See k8s/README.md for full details including optional Ingress setup.
Development
# Install with dev dependencies
pip install -e ".[dev]"
# Run tests
pytest -v
# Lint
ruff check src/ tests/
ruff format --check src/ tests/
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mcp_server_glassflow-0.1.0.tar.gz.
File metadata
- Download URL: mcp_server_glassflow-0.1.0.tar.gz
- Upload date:
- Size: 21.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f255a7775a3835f475fd28edfa30d17bb104abf0fa73ee734bef4fa06362a64f
|
|
| MD5 |
8d56d9946d003cc43390679b3fdc2284
|
|
| BLAKE2b-256 |
fdc0f38d7fe1e04449e21ca5b57ff317a5d53d550a870aaa9e8c4b622c3eab6a
|
Provenance
The following attestation bundles were made for mcp_server_glassflow-0.1.0.tar.gz:
Publisher:
release.yaml on glassflow/glassflow-mcp-server
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mcp_server_glassflow-0.1.0.tar.gz -
Subject digest:
f255a7775a3835f475fd28edfa30d17bb104abf0fa73ee734bef4fa06362a64f - Sigstore transparency entry: 1508055029
- Sigstore integration time:
-
Permalink:
glassflow/glassflow-mcp-server@8649b70190a5da719c423c929abd81f705806b0c -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/glassflow
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yaml@8649b70190a5da719c423c929abd81f705806b0c -
Trigger Event:
push
-
Statement type:
File details
Details for the file mcp_server_glassflow-0.1.0-py3-none-any.whl.
File metadata
- Download URL: mcp_server_glassflow-0.1.0-py3-none-any.whl
- Upload date:
- Size: 17.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f41e352413880e2c6b0e8f42982782eb81409d3bae096933fc3efce10a99d04b
|
|
| MD5 |
a2c317b6b5376b6d09bde187f4808c51
|
|
| BLAKE2b-256 |
723135b3441f292f9a56002ff7a64ab56875e6108dcd303149787eb3d5581f21
|
Provenance
The following attestation bundles were made for mcp_server_glassflow-0.1.0-py3-none-any.whl:
Publisher:
release.yaml on glassflow/glassflow-mcp-server
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mcp_server_glassflow-0.1.0-py3-none-any.whl -
Subject digest:
f41e352413880e2c6b0e8f42982782eb81409d3bae096933fc3efce10a99d04b - Sigstore transparency entry: 1508055801
- Sigstore integration time:
-
Permalink:
glassflow/glassflow-mcp-server@8649b70190a5da719c423c929abd81f705806b0c -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/glassflow
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yaml@8649b70190a5da719c423c929abd81f705806b0c -
Trigger Event:
push
-
Statement type: