RHOAI Observability MCP
OfficialProvides tools for listing Grafana dashboards and retrieving their panel queries to visualize observability data.
Provides tools for querying Kubernetes cluster state, including pods, events, nodes, and KServe InferenceServices.
Enables executing PromQL queries against a Prometheus-compatible metrics store to retrieve time-series metrics data.
Provides access to Thanos Querier for executing PromQL queries across scalable, long-term metrics storage.
Click on "Install 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., "@RHOAI Observability MCPcheck vLLM metrics for model llm-vllm"
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.
Red Hat OpenShift AI (RHOAI) Observability MCP
An MCP (Model Context Protocol) server that gives AI assistants direct access to Red Hat OpenShift AI observability data. Query Prometheus metrics, Alertmanager alerts, Loki logs, Grafana dashboards, and Kubernetes cluster state to troubleshoot vLLM inference workloads.
Features
21 tools across 7 categories for comprehensive observability
vLLM-aware metrics (TTFT, TPOT, E2E latency, KV cache, queue depth)
Composite investigation tools that correlate metrics, logs, and alerts automatically
Auto-detection of in-cluster vs external access to OpenShift services
Built on FastMCP with async backends via
httpx
Architecture
graph TD
A[Claude / AI Assistant] -->|MCP Protocol| B[rhoai-observability-mcp]
B --> C[Thanos / Prometheus]
B --> D[Alertmanager]
B --> E[Loki]
B --> F[Tempo]
B --> G[Grafana]
B --> H[Kubernetes / OpenShift]Backends:
Backend | Purpose | Source |
Prometheus (Thanos) | Metrics queries (PromQL) |
|
Alertmanager | Active alerts and alert groups |
|
Loki | Log queries (LogQL) |
|
Tempo | Distributed trace queries (TraceQL) |
|
Grafana | Dashboard discovery and panel queries |
|
Kubernetes (OpenShift) | Pods, events, nodes, InferenceServices |
|
Quick Start
# Clone and install
git clone https://github.com/opendatahub-io/rhoai-observability-mcp.git
cd rhoai-observability-mcp
uv pip install -e ".[dev]"
# Configure (see INSTALL.md for all options)
export THANOS_URL=https://thanos-querier.openshift-monitoring.svc:9091
export ALERTMANAGER_URL=https://alertmanager-main.openshift-monitoring.svc:9093
export OPENSHIFT_TOKEN=$(oc whoami -t)
# Run
python -m rhoai_obs_mcp.serverSee INSTALL.md for detailed setup, configuration, and Claude Desktop integration.
Build & Deploy
Build the container image
make buildOverride the image name or tag:
make build IMAGE_NAME=quay.io/myorg/rhoai-observability-mcp IMAGE_TAG=v1.0.0Push to registry
make pushDeploy to OpenShift
Prerequisites: oc login to your cluster, kustomize installed, and create the target project:
oc new-project rhoai-obs-mcpThen deploy:
make deployThis uses Kustomize to build the OpenShift overlay (deploy/overlays/openshift/) on top of the base manifests (deploy/base/) and applies them to the rhoai-obs-mcp namespace. To deploy to a different namespace:
make deploy NAMESPACE=my-namespaceUndeploy
make undeployIf you deployed to a custom namespace, pass the same value:
make undeploy NAMESPACE=my-namespaceCI-built images
Container images are automatically built from main and published to GHCR:
ghcr.io/opendatahub-io/rhoai-observability-mcp:latestLocal Development with Kind
Set up a local Kubernetes cluster with mock observability backends for development and testing:
# Prerequisites: kind, kubectl, helm, kustomize
make kind-upThis creates a Kind cluster, installs Prometheus + Alertmanager + Grafana via Helm, deploys a fake vLLM metrics exporter, and deploys the MCP server. Access the MCP server at http://localhost:30080.
To point at real external backends instead of the mocks:
make kind-deploy THANOS_URL=https://real-cluster:9091 ALERTMANAGER_URL=https://real-cluster:9093 GRAFANA_URL=https://real-cluster:3000 TEMPO_URL=https://real-cluster:8080Tear down:
make kind-downTool Reference
Metrics
Tool | Description |
| Execute a raw PromQL query against ThanosQuerier |
| Execute a PromQL range query to get time-series data (trends, spikes, correlations) |
| Get a summary of key vLLM metrics (TTFT, TPOT, E2E, cache, queue) for a model |
| List available Prometheus metric names, optionally filtered by regex |
Alerts
Tool | Description |
| Get active alerts from Alertmanager, filterable by severity and labels |
| Get alerts grouped by their routing labels |
Logs
Tool | Description |
| Execute a LogQL query against OpenShift LokiStack |
| Get logs for a specific pod by namespace and name |
Traces
Tool | Description |
| Fetch a distributed trace by its trace ID |
| Search for traces using TraceQL expressions |
| List available trace tag names for building TraceQL queries |
Cluster
Tool | Description |
| List pods in a namespace with status, restarts, and creation time |
| List Kubernetes events, filterable by resource and reason |
| Get node status, capacity, and GPU allocation info |
| Get detailed description of a Kubernetes resource |
| List KServe InferenceService resources |
Dashboards
Tool | Description |
| List available Grafana dashboards, filterable by tag or title |
| Get panels and their queries from a Grafana dashboard |
Investigation
Tool | Description |
| Correlate latency metrics, error logs, and alerts for a vLLM model |
| Correlate GPU utilization, KV cache, queue depth, and pod status |
| Correlate error logs, alerts, and Kubernetes events in a namespace |
Documentation
INSTALL.md -- Installation, configuration, and integration
TESTING.md -- Running tests and writing new ones
CONTRIBUTING.md -- Development setup and contribution guidelines
License
This server cannot be installed
Maintenance
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/opendatahub-io/rhoai-observability-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server