orion-mcp

jtaleric/orion-mcp

3.2

If you are the rightful owner of orion-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

Orion MCP is a Model Context Protocol server designed for performance regression analysis using the cloud-bulldozer/orion library.

Orion MCP

Python Version
Orion MCP is a Model Context Protocol (MCP) server for performance regression analysis powered by the cloud-bulldozer/orion library.


Key Features

  • Regression Detection – Automatically detects performance regressions in OpenShift & Kubernetes clusters.
  • Interactive MCP API – Exposes a set of composable tools & resources that can be consumed via HTTP or by other MCP agents.
  • Visual Reporting – Generates publication-ready plots (PNG/JPEG) for trends, multi-version comparisons and metric correlations.
  • Container-first – Ships with a lightweight OCI image and an example OpenShift deployment manifest.

Table of Contents

  1. Getting Started
  2. Quick Start
  3. Available Tools
  4. Deployment
  5. Development
  6. Contributing
  7. License

Getting Started

Prerequisites

  • Python 3.11 or newer
  • An OpenSearch (or Elasticsearch ≥7.17) endpoint with Orion-indexed benchmark results
  • Podman or Docker (optional – for containerised execution)

Installation (virtual-env)

# Clone repository
$ git clone https://github.com/YOUR_ORG/orion-mcp.git && cd orion-mcp

# Create & activate a virtual environment
$ python3.11 -m venv .venv
$ source .venv/bin/activate

# Install Python dependencies
$ pip install -r requirements.txt

Quick Start

Set the data-source endpoint and launch the server locally:

export ES_SERVER="https://opensearch.example.com:9200"
python orion_mcp.py  # listens on 0.0.0.0:3030 by default

Available Tools

ToolDescriptionDefault Arguments
get_data_sourceReturns the configured OpenSearch URLnone
get_orion_configsLists available Orion configuration filesnone
get_orion_metricsLists metrics grouped by Orion confignone
openshift_report_onGenerates a trend line for one or more OCP versionsversions="4.19", lookback="15", metric="podReadyLatency_P99", config="small-scale-udn-l3.yaml"
has_openshift_regressedScans all configs for changepointsversion="4.19", lookback="15"
metrics_correlationCorrelates two metrics & returns a scatter plotmetric1="podReadyLatency_P99", metric2="ovnCPU_avg", config="trt-external-payload-cluster-density.yaml", version="4.19", lookback="15"

Deployment

Container Image

podman build -t quay.io/YOUR_ORG/orion-mcp:latest .
# or
docker build -t your-org/orion-mcp:latest .

OpenShift

A production-ready openshift-deployment.yml is provided:

# Update ES_SERVER env if required then apply
oc apply -f openshift-deployment.yml

# Verify
oc get pods -l app.kubernetes.io/name=orion-mcp

Expose the service using an OpenShift Route and point your MCP client to http://<host>:3030.


Development

# Run linters & tests
flake8
pytest

# Auto-format with black & isort
black . && isort .

Contributing

Pull requests are very welcome! Please ensure you have read and adhere to the Code of Conduct.

  1. Fork the repository
  2. Create a new branch for your feature or bugfix
  3. Make your changes and add tests if applicable
  4. Submit a pull request with a clear description of your changes

License

Orion-MCP is distributed under the Apache 2.0 License. See the file for full text.