OpenShift MCP Server

io.github.sanjaypsachdevPublished by GitHub account sanjaypsachdevv1.2.0Updated Oct 24, 2026

OpenShift/Kubernetes cluster management via the oc CLI for MCP clients

VerifiedSTDIODesktop onlyCloud & InfrastructureDeveloper Tools

Overview

AI-generated overview

Lets an AI assistant manage OpenShift/Kubernetes clusters through the oc CLI: inspect, create, patch, delete resources, deploy apps, scale and read logs.

What you can do
  • Log in to clusters and discover API resources, schemas and field documentation
  • Read, describe, create, apply, patch and delete OpenShift/Kubernetes resources
  • Deploy applications from Git repositories with S2I builds and scale workloads
  • Retrieve pod and build logs, with sampling and error-pattern analysis
  • Install operators via OLM, Helm or direct manifests
  • Read cluster info, project lists and app templates as MCP resources, plus troubleshooting prompts
When to use it
Useful when an assistant should operate or troubleshoot an OpenShift or Kubernetes cluster directly, for example deploying an app from Git, scaling a deployment, checking pod logs or diagnosing failing resources, instead of the user running oc commands by hand.
Requirements
Runs locally over stdio (npm package via npx, or an OCI image via podman). Needs Node.js 20+, the oc CLI installed and configured, and network access to an OpenShift cluster. Optional OPENSHIFT_CONTEXT and OPENSHIFT_NAMESPACE environment variables set the default context and namespace. Cluster credentials are supplied through the oc_login tool.
Before you install
The server can create, apply, patch, scale and delete cluster resources and install operators, so changes are real and run with the authenticated user's RBAC permissions. Cluster tokens or usernames and passwords are passed to the oc_login tool; use least-privilege service account tokens, rotate them, and log out when done. An HTTP/SSE mode is available and should be secured if exposed.

Installation

In SourceWeft

  1. Open OpenShift MCP Server in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

OpenShift MCP Server

[CI Pipeline] [CodeQL] [License: MIT] [Node.js Version] [TypeScript] [OpenShift] [Kubernetes] [MCP] [Test Coverage] [Tests] [npm version] [npm downloads] [Docker] [PRs Welcome] [Maintenance]

A Model Context Protocol (MCP) server that provides AI assistants with comprehensive OpenShift/Kubernetes cluster management capabilities through the oc command-line interface.

Demo Video

Watch the oc-new-app tool deploy a complete Spring Boot application from GitHub to OpenShift:

https://github.com/user-attachments/assets/f4bace3f-755b-462f-8a8a-680e4dc02129

Features

  • Cluster Information: Access comprehensive cluster status, nodes and configuration via MCP resources
  • Resource Description: Describe any resource with multiple output formats including human-readable summaries
  • Complete Resource Management: Create, read, update, delete, and patch all OpenShift/Kubernetes resources
  • Application Deployment: Deploy applications from Git repositories with S2I builds and automatic route creation
  • Operator Management: Install operators via OLM, Helm, or direct manifests
  • Cluster Operations: Scaling, monitoring, troubleshooting and management
  • Build Operations: Start and monitor OpenShift builds
  • Scaling Operations: Scale deployments, replicasets and statefulsets
  • Logging: Retrieve logs from pods and builds
  • Multi-Transport Support: STDIO and HTTP/SSE transports for different integration scenarios
  • Comprehensive Testing: 99 unit tests ensuring production reliability
  • Rich Error Handling: Detailed troubleshooting guidance and actionable error messages
  • Troubleshooting Prompts: Interactive troubleshooting guides for common OpenShift scenarios
  • Log Sampling: Sample and analyze pod logs with intelligent pattern detection and context

Prerequisites

  • Node.js 20+
  • OpenShift CLI (oc) installed and configured
  • Access to an OpenShift cluster

Installation

bash
git clone https://github.com/sanjaypsachdev/mcp-server-openshift.gitcd mcp-server-openshiftnpm installnpm run build

Configuration

Add to your MCP client configuration:

Claude Desktop / Cursor

json
{  "mcpServers": {    "openshift": {      "command": "node",      "args": ["/path/to/mcp-server-openshift/dist/index.js"],      "env": {        "OPENSHIFT_CONTEXT": "your-context-name",        "OPENSHIFT_NAMESPACE": "your-default-namespace"      }    }  }}

HTTP/SSE Transport (Remote Access)

bash
# Start HTTP servernpm run start:http
# Connect via MCP remotenpx -y mcp-remote http://localhost:3000/sse --transport sse-only

Tools

Authentication & Access

  • oc_login - Securely log into OpenShift clusters using token or username/password authentication

API Discovery & Documentation

  • oc_api_resources - List all available API resources in the cluster with categorization
  • oc_explain - Explain resource schemas, fields, and API documentation

Core Resource Management

  • oc_get - Get OpenShift resources (pods, deployments, services, routes, etc.)
  • oc_create - Create OpenShift resources from manifests or templates
  • oc_apply - Apply YAML manifests with validation and conflict resolution
  • oc_delete - Delete resources with safety checks and confirmation options
  • oc_patch - Patch resources using strategic merge, JSON merge, or JSON patch operations
  • oc_describe - Describe resources with multiple output formats

Application Lifecycle

  • oc_new_app - Deploy applications from Git repositories with S2I builds
  • oc_scale - Scale deployments, deploymentconfigs, replicasets, and statefulsets
  • oc_logs - Get logs from pods, deployments, builds with filtering options

Advanced Operations

  • oc_install_operator - Install operators via OLM, Helm, or direct manifests

Resources

MCP Resources provide read-only access to cluster information:

  • openshift://cluster-info - Comprehensive cluster status, nodes, namespaces, and events
  • openshift://project-list - Detailed project information with quotas and usage statistics
  • openshift://app-templates - Application deployment templates and patterns

Prompts

Interactive troubleshooting and operational guidance:

  • troubleshoot-openshift-prompt - Comprehensive OpenShift troubleshooting guide for all resource types and cluster issues
  • monitoring-prompts - Monitoring and observability guidance for different scenarios

Sampling

Intelligent log analysis and pattern detection:

  • Pod Logs Sampling - Automatic log sampling with error pattern detection and context analysis

Usage Examples

Login to Cluster

bash
# Login with token (recommended)oc_login with server: "https://api.cluster.example.com:6443",         authMethod: "token",         token: "sha256~your-token-here"
# Login with username/passwordoc_login with server: "https://api.cluster.example.com:6443",         authMethod: "password",         username: "developer",         password: "your-password"

Discover API Resources

bash
# List all available API resourcesoc_api_resources
# List resources for specific API groupoc_api_resources with apiGroup: "apps"
# List only namespaced resourcesoc_api_resources with namespaced: true
# Explain a resource schemaoc_explain with resource: "deployment"
# Explain specific fieldoc_explain with resource: "pod", field: "spec.containers"

Deploy Application

bash
# Deploy Node.js app from GitHuboc_new_app with gitRepo: "https://github.com/sclorg/nodejs-ex.git"

Scale Application

bash
# Scale deployment to 3 replicasoc_scale with name: "my-app", replicas: 3

Patch Resource

bash
# Update deployment labelsoc_patch with resourceType: "deployment", name: "my-app",         patch: '{"metadata":{"labels":{"environment":"production"}}}'

Troubleshoot Issues

bash
# Get pod troubleshooting guidanceUse prompt: troubleshoot-openshift-promptArguments: issueType: "pod", resourceName: "my-app-12345", namespace: "my-project"
# Get deployment troubleshooting guidanceUse prompt: troubleshoot-openshift-promptArguments: issueType: "deployment", resourceName: "my-app", namespace: "my-project"
# Get general cluster troubleshooting guidanceUse prompt: troubleshoot-openshift-promptArguments: issueType: "cluster", symptoms: "nodes not ready"

Development

bash
# Setupnpm install
# Buildnpm run build
# Testnpm test
# Start (STDIO)npm start
# Start (HTTP)npm run start:http
# Development modenpm run dev

Transport Modes

STDIO (Default)

  • Direct MCP client integration
  • Lower latency
  • Recommended for local development

HTTP/SSE

  • Remote access capability
  • Web integration friendly
  • Container deployment ready

Architecture

src/├── index.ts              # Main server entry point├── tools/                # Tool implementations├── resources/            # MCP resources├── prompts/              # Interactive prompts├── sampling/             # Log sampling and analysis├── models/               # Zod validation schemas└── utils/                # OpenShift CLI wrapper

Security

Authentication Security

  • Token Authentication: Preferred method for automation and production use
  • Password Authentication: Available but token authentication is recommended
  • HTTPS Enforcement: All cluster connections must use HTTPS
  • URL Validation: Server URLs validated to prevent SSRF attacks
  • Private IP Blocking: Prevents connections to internal/metadata services

Operational Security

  • RBAC Compliance: Respects OpenShift RBAC permissions
  • No Credential Storage: Credentials are not stored or transmitted by the server
  • User Permissions: Executes with the same permissions as the authenticated user
  • Input Validation: Comprehensive validation of all inputs and parameters
  • Secure Defaults: Conservative security settings by default

Best Practices

  • Use Service Account Tokens: For automation and CI/CD pipelines
  • Regular Token Rotation: Rotate authentication tokens regularly
  • TLS Certificate Validation: Always validate TLS certificates in production
  • Least Privilege: Use accounts with minimal required permissions
  • Session Management: Use oc logout to clear credentials when done

License

MIT License - see LICENSE file for details.

Source: README.md at commit 0abad71

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v1.2.0LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts