You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Following details are added to the README.md file:
- Table of contents
- `How to connect to the MCP Server` section is updated to use go run github.com/ovn-kubernetes/ovn-kubernetes-mcp/cmd/ovnk-mcp-server@latest instead of local binary
- `Tools available in MCP Server` is added providing details about the tools available
The generation of the `Tools available in MCP Server` section is automated and a make target is added to update the section.
The package naming of the different layers are also made consistent so that the automation can pick the correct names.
A github workflow is added to check if the section needs update or not.
Additionaly, `both` mode is now renamed to a more intuitive `dual` mode.
Assisted-by: Cursor
Signed-off-by: arkadeepsen <arsen@redhat.com>
Repo hosting the Model Context Protocol Server for troubleshooting OVN-Kubernetes
3
2
4
-
## How to connect to the MCP Server
3
+
Repo hosting the Model Context Protocol Server for troubleshooting OVN-Kubernetes.
5
4
6
-
For connecting to the MCP server, the following steps are required:
5
+
## Table of Contents
7
6
8
-
```shell
9
-
make build
10
-
```
7
+
-[Operating Modes](#operating-modes)
8
+
-[How to connect to the MCP Server](#how-to-connect-to-the-mcp-server)
9
+
-[Command-line options](#command-line-options)
10
+
-[Live Cluster Mode](#live-cluster-mode)
11
+
-[Offline Mode](#offline-mode)
12
+
-[Dual Mode](#dual-mode)
13
+
-[Local development](#local-development)
14
+
-[Tools available in MCP Server](#tools-available-in-mcp-server)
15
+
-[Live Cluster Mode](#live-cluster-mode-1)
16
+
-[Offline Mode](#offline-mode-1)
17
+
18
+
---
11
19
12
-
The server supports 3 operating modes:
13
-
-`live-cluster` (default): Connect to a live Kubernetes cluster for real-time debugging
14
-
-`offline`: Offline troubleshooting without requiring cluster access
15
-
-`both`: In this mode, tools from both `live-cluster` and `offline` modes will be available.
20
+
## Operating Modes
21
+
22
+
| Mode | Description |
23
+
|--------------------------|-------------|
24
+
|`live-cluster` (default) | Connect to a live Kubernetes cluster for real-time debugging (requires kubeconfig). |
25
+
|`offline`| Analyze sosreports and must-gathers without cluster access. |
26
+
|`dual`| Exposes tools from dual live-cluster and offline modes (requires kubeconfig for live-cluster tools). |
27
+
28
+
---
29
+
30
+
## How to connect to the MCP Server
31
+
32
+
To use the MCP server, ensure you have [Go](https://go.dev/) installed with a version greater than or equal to the version specified in the `go.mod` file.
16
33
17
34
The server currently supports 2 transport modes: `stdio` and `http`.
18
35
36
+
### Command-line options
37
+
38
+
| Option | Default | Description |
39
+
|--------|---------|-------------|
40
+
|`--mode`|`live-cluster`| Server mode: `live-cluster`, `offline`, or `dual`. |
41
+
|`--transport`|`stdio`| Transport: `stdio` or `http`. |
42
+
|`--port`|`8080`| Port for HTTP transport. |
43
+
|`--kubeconfig`| (none) | Path to kubeconfig file. Required for `live-cluster` and `dual`. |
44
+
|`--pwru-image`|`docker.io/cilium/pwru:v1.0.10`| Container image for the **pwru** network tool (kernel packet tracing). |
45
+
|`--tcpdump-image`|`nicolaka/netshoot:v0.13`| Container image for the **tcpdump** network tool (packet capture). |
46
+
19
47
### Live Cluster Mode
20
48
21
49
For `stdio` mode, the server can be run and connected to by using the following configuration in an MCP host (Cursor, Claude, etc.):
@@ -24,8 +52,10 @@ For `stdio` mode, the server can be run and connected to by using the following
go run github.com/ovn-kubernetes/ovn-kubernetes-mcp/cmd/ovnk-mcp-server@latest --transport http --mode offline
76
111
```
77
112
78
-
> NOTE: For must-gather tools to be added, availability of [`omc`](https://github.com/gmeghnag/omc) binary is mandatory. Otherwise, the must-gather tools will not be added to the MCP server. Additionally, if [`ovsdb-tool`](https://www.openvswitch.org/support/dist-docs/ovsdb-tool.1.txt) binaryis not available, then some of the must-gather tools, which use `ovsdb-tool` binary, will not be added to the MCP server.
113
+
> **Note:** Must-gather tools require the [`omc`](https://github.com/gmeghnag/omc) binary. Some must-gather tools also require the [`ovsdb-tool`](https://www.openvswitch.org/support/dist-docs/ovsdb-tool.1.txt) binary; if it is not available, those tools are not registered.
79
114
80
-
### Both Mode
115
+
### Dual Mode
81
116
82
-
For using both[live-cluster](#live-cluster-mode) (needs kubeconfig) and [offline](#offline-mode) tools, use `--mode both`:
117
+
For using dual[live-cluster](#live-cluster-mode) (needs kubeconfig) and [offline](#offline-mode) tools, use `--mode dual`:
0 commit comments