Skip to main content

Kiali MCP Server (Model Context Protocol) with special support for OpenShift

Project description

Kiali MCP Server

GitHub License npm PyPI - Version GitHub release (latest SemVer) Build

https://github.com/user-attachments/assets/d88a3b72-980c-43db-a69a-a19ad564cf49

Kiali MCP Server is a thin extension of the upstream Kubernetes MCP Server. It adds Kiali-specific tooling while keeping the same core behavior and configuration.

  • Based on kubernetes-mcp-server (native Go MCP server for Kubernetes/OpenShift)
  • For the full set of tools and behavior adopted from upstream, see the upstream README: openshift/openshift-mcp-server README

✨ Features | 🚀 Getting Started | 🎥 Demos | ⚙️ Configuration | 🛠️ Tools | 🧑‍💻 Development

✨ Features

  • ✅ Istio Objects:
    • validations_list: Lists Istio object validations aggregated by namespace and cluster from a Kiali instance.

🚀 Getting Started

Requirements

  • Access to a Kubernetes or OpenShift cluster (kubeconfig or in-cluster service account)
  • A reachable Kiali server URL

Cursor

Install the Kubernetes MCP server extension in Cursor by pressing the following link:

Install MCP Server

Alternatively, you can install the extension manually by editing the mcp.json file:

{
  "mcpServers": {
    "kiali-mcp-server": {
      "command": "npx",
      "args": ["-y", "kiali-mcp-server@latest"]
    }
  }
}

Note: You must specify the Kiali endpoint if the MCP cannot detect it.You must also specify whether it should skip TLS.

{
  "mcpServers": {
    "kiali-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "kiali-mcp-server@latest",
        "--kiali-server-url",
        "https://kiali-istio-system.apps-crc.testing/",
        "--kiali-insecure"
      ]
    }
  }
}

Configuration

Kiali MCP Server reuses the same configuration and flags as the upstream Kubernetes MCP Server. In addition, it adds the following Kiali-specific flags:

By default, Kubernetes and Kiali tools are exposed. If you want to only Kiali use this configuration

  • --toolsets: kiali

You can run the server via npx, uvx, or the compiled binary. Example using npx:

npx -y kiali-mcp-server@latest \
  --kiali-server-url "https://kiali-istio-system.apps-crc.testing/" \
  --kiali-insecure

Or using the binary after building:

./kiali-mcp-server \
  --kiali-server-url "https://kiali-istio-system.apps-crc.testing/" \
  --kiali-insecure

Refer to the upstream README for the rest of the flags and features (ports, auth, read-only, list output, etc.): openshift/openshift-mcp-server README

🛠️ Tools and Functionalities

The Kiali MCP server supports enabling or disabling specific groups of tools and functionalities (tools, resources, prompts, and so on) via the --toolsets command-line flag or toolsets configuration option. This allows you to control which Kubernetes functionalities are available to your AI tools. Enabling only the toolsets you need can help reduce the context size and improve the LLM's tool selection accuracy.

Available Toolsets

The following sets of tools are available (only Kiali by default):

Toolset Description
config View and manage the current local Kubernetes configuration (kubeconfig)
core Most common tools for Kubernetes management (Pods, Generic Resources, Events, etc.)
helm Tools for managing Helm charts and releases
kiali View and manage resources in your Mesh

Tools

kiali
  • valdiation_list - List all the validations in the current cluster from all namespaces
    • namespace (string) - Optional Namespace to retrieve the namespaced resources from (ignored in case of cluster scoped resources). If not provided, will list resources from all namespaces

🎥 Demos

In this video, we explore how the Mesh Control Plane (MCP) in Kubernetes/OpenShift works together with Kiali to validate Istio configuration objects directly in your editor (Cursor).

Cursor: Kiali-mcp-server running

🧑‍💻 Development

Running with mcp-inspector

Compile the project and run the Kiali MCP server with mcp-inspector to inspect the MCP server.

# Compile the project
make build
# Run the Kubernetes MCP server with mcp-inspector
npx @modelcontextprotocol/inspector@latest $(pwd)/kiali-mcp-server --kiali-server-url "https://kiali-istio-system.apps-crc.testing/" --kiali-insecure

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

kiali_mcp_server-0.1.1.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

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

kiali_mcp_server-0.1.1-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

Details for the file kiali_mcp_server-0.1.1.tar.gz.

File metadata

  • Download URL: kiali_mcp_server-0.1.1.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.22

File hashes

Hashes for kiali_mcp_server-0.1.1.tar.gz
Algorithm Hash digest
SHA256 234b15fd7da0c5f333dfabc4f24d751b9848cbb5d43c8f1d77efc6af7d2d1c09
MD5 885723ea1871b35a9983e8b08019f342
BLAKE2b-256 0b72e23cb090f0107e36e3ad369f747b77f22620a6d9a49448585e0e9e8099ea

See more details on using hashes here.

File details

Details for the file kiali_mcp_server-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for kiali_mcp_server-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a1ea8e3841e72be1a8fc6084c232c2c7e5f831e0b29d4360d4e5557b2fbb5893
MD5 dff48141c77381f63be7ec7b7132717b
BLAKE2b-256 59b4a743a112e9e43b6878dc86cf09ce6eac2cb112ca0cb70bc7bbb55311e8be

See more details on using hashes here.

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