Skip to main content

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

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_server_glassflow-0.1.0.tar.gz (21.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_server_glassflow-0.1.0-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

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

Hashes for mcp_server_glassflow-0.1.0.tar.gz
Algorithm Hash digest
SHA256 f255a7775a3835f475fd28edfa30d17bb104abf0fa73ee734bef4fa06362a64f
MD5 8d56d9946d003cc43390679b3fdc2284
BLAKE2b-256 fdc0f38d7fe1e04449e21ca5b57ff317a5d53d550a870aaa9e8c4b622c3eab6a

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcp_server_glassflow-0.1.0.tar.gz:

Publisher: release.yaml on glassflow/glassflow-mcp-server

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mcp_server_glassflow-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for mcp_server_glassflow-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f41e352413880e2c6b0e8f42982782eb81409d3bae096933fc3efce10a99d04b
MD5 a2c317b6b5376b6d09bde187f4808c51
BLAKE2b-256 723135b3441f292f9a56002ff7a64ab56875e6108dcd303149787eb3d5581f21

See more details on using hashes here.

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

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page