fix(migration): rebranded from manusa/kubernetes-mcp-server to containers/kubernetes-mcp-server (#202)

Signed-off-by: Marc Nuri <marc@marcnuri.com>
This commit is contained in:
Marc Nuri
2025-07-25 09:53:04 +02:00
committed by GitHub
parent 9856802fe9
commit cad863ff22
34 changed files with 56 additions and 56 deletions

View File

@@ -1,10 +1,10 @@
# Kubernetes MCP Server # Kubernetes MCP Server
[![GitHub License](https://img.shields.io/github/license/manusa/kubernetes-mcp-server)](https://github.com/manusa/kubernetes-mcp-server/blob/main/LICENSE) [![GitHub License](https://img.shields.io/github/license/containers/kubernetes-mcp-server)](https://github.com/containers/kubernetes-mcp-server/blob/main/LICENSE)
[![npm](https://img.shields.io/npm/v/kubernetes-mcp-server)](https://www.npmjs.com/package/kubernetes-mcp-server) [![npm](https://img.shields.io/npm/v/kubernetes-mcp-server)](https://www.npmjs.com/package/kubernetes-mcp-server)
[![PyPI - Version](https://img.shields.io/pypi/v/kubernetes-mcp-server)](https://pypi.org/project/kubernetes-mcp-server/) [![PyPI - Version](https://img.shields.io/pypi/v/kubernetes-mcp-server)](https://pypi.org/project/kubernetes-mcp-server/)
[![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/manusa/kubernetes-mcp-server?sort=semver)](https://github.com/manusa/kubernetes-mcp-server/releases/latest) [![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/containers/kubernetes-mcp-server?sort=semver)](https://github.com/containers/kubernetes-mcp-server/releases/latest)
[![Build](https://github.com/manusa/kubernetes-mcp-server/actions/workflows/build.yaml/badge.svg)](https://github.com/manusa/kubernetes-mcp-server/actions/workflows/build.yaml) [![Build](https://github.com/containers/kubernetes-mcp-server/actions/workflows/build.yaml/badge.svg)](https://github.com/containers/kubernetes-mcp-server/actions/workflows/build.yaml)
[✨ Features](#features) | [🚀 Getting Started](#getting-started) | [🎥 Demos](#demos) | [⚙️ Configuration](#configuration) | [🛠️ Tools](#tools) | [🧑‍💻 Development](#development) [✨ Features](#features) | [🚀 Getting Started](#getting-started) | [🎥 Demos](#demos) | [⚙️ Configuration](#configuration) | [🛠️ Tools](#tools) | [🧑‍💻 Development](#development)
@@ -156,7 +156,7 @@ In this demo, I'll show you how to set up Kubernetes MCP server in VS code just
The Kubernetes MCP server can be configured using command line (CLI) arguments. The Kubernetes MCP server can be configured using command line (CLI) arguments.
You can run the CLI executable either by using `npx`, `uvx`, or by downloading the [latest release binary](https://github.com/manusa/kubernetes-mcp-server/releases/latest). You can run the CLI executable either by using `npx`, `uvx`, or by downloading the [latest release binary](https://github.com/containers/kubernetes-mcp-server/releases/latest).
```shell ```shell
# Run the Kubernetes MCP server using npx (in case you have npm and node installed) # Run the Kubernetes MCP server using npx (in case you have npm and node installed)

View File

@@ -6,7 +6,7 @@ import (
"github.com/spf13/pflag" "github.com/spf13/pflag"
"k8s.io/cli-runtime/pkg/genericiooptions" "k8s.io/cli-runtime/pkg/genericiooptions"
"github.com/manusa/kubernetes-mcp-server/pkg/kubernetes-mcp-server/cmd" "github.com/containers/kubernetes-mcp-server/pkg/kubernetes-mcp-server/cmd"
) )
func main() { func main() {

2
go.mod
View File

@@ -1,4 +1,4 @@
module github.com/manusa/kubernetes-mcp-server module github.com/containers/kubernetes-mcp-server
go 1.24.1 go 1.24.1

View File

@@ -16,7 +16,7 @@
}, },
"repository": { "repository": {
"type": "git", "type": "git",
"url": "git+https://github.com/manusa/kubernetes-mcp-server.git" "url": "git+https://github.com/containers/kubernetes-mcp-server.git"
}, },
"keywords": [ "keywords": [
"mcp", "mcp",
@@ -33,7 +33,7 @@
}, },
"license": "Apache-2.0", "license": "Apache-2.0",
"bugs": { "bugs": {
"url": "https://github.com/manusa/kubernetes-mcp-server/issues" "url": "https://github.com/containers/kubernetes-mcp-server/issues"
}, },
"homepage": "https://github.com/manusa/kubernetes-mcp-server#readme" "homepage": "https://github.com/containers/kubernetes-mcp-server#readme"
} }

View File

@@ -11,7 +11,7 @@ import (
"github.com/go-jose/go-jose/v4/jwt" "github.com/go-jose/go-jose/v4/jwt"
"k8s.io/klog/v2" "k8s.io/klog/v2"
"github.com/manusa/kubernetes-mcp-server/pkg/mcp" "github.com/containers/kubernetes-mcp-server/pkg/mcp"
) )
const ( const (

View File

@@ -13,8 +13,8 @@ import (
"k8s.io/klog/v2" "k8s.io/klog/v2"
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
"github.com/manusa/kubernetes-mcp-server/pkg/mcp" "github.com/containers/kubernetes-mcp-server/pkg/mcp"
) )
const ( const (

View File

@@ -21,8 +21,8 @@ import (
"k8s.io/klog/v2" "k8s.io/klog/v2"
"k8s.io/klog/v2/textlogger" "k8s.io/klog/v2/textlogger"
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
"github.com/manusa/kubernetes-mcp-server/pkg/mcp" "github.com/containers/kubernetes-mcp-server/pkg/mcp"
) )
type httpContext struct { type httpContext struct {

View File

@@ -22,11 +22,11 @@ import (
"k8s.io/kubectl/pkg/util/i18n" "k8s.io/kubectl/pkg/util/i18n"
"k8s.io/kubectl/pkg/util/templates" "k8s.io/kubectl/pkg/util/templates"
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
internalhttp "github.com/manusa/kubernetes-mcp-server/pkg/http" internalhttp "github.com/containers/kubernetes-mcp-server/pkg/http"
"github.com/manusa/kubernetes-mcp-server/pkg/mcp" "github.com/containers/kubernetes-mcp-server/pkg/mcp"
"github.com/manusa/kubernetes-mcp-server/pkg/output" "github.com/containers/kubernetes-mcp-server/pkg/output"
"github.com/manusa/kubernetes-mcp-server/pkg/version" "github.com/containers/kubernetes-mcp-server/pkg/version"
) )
var ( var (

View File

@@ -5,7 +5,7 @@ import (
"k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/runtime/schema"
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
) )
// isAllowed checks the resource is in denied list or not. // isAllowed checks the resource is in denied list or not.

View File

@@ -21,7 +21,7 @@ import (
metricsv1beta1api "k8s.io/metrics/pkg/apis/metrics/v1beta1" metricsv1beta1api "k8s.io/metrics/pkg/apis/metrics/v1beta1"
metricsv1beta1 "k8s.io/metrics/pkg/client/clientset/versioned/typed/metrics/v1beta1" metricsv1beta1 "k8s.io/metrics/pkg/client/clientset/versioned/typed/metrics/v1beta1"
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
) )
// AccessControlClientset is a limited clientset delegating interface to the standard kubernetes.Clientset // AccessControlClientset is a limited clientset delegating interface to the standard kubernetes.Clientset

View File

@@ -5,7 +5,7 @@ import (
"k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/client-go/restmapper" "k8s.io/client-go/restmapper"
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
) )
type AccessControlRESTMapper struct { type AccessControlRESTMapper struct {

View File

@@ -10,7 +10,7 @@ import (
"k8s.io/client-go/rest" "k8s.io/client-go/rest"
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
) )
func TestKubernetes_IsInCluster(t *testing.T) { func TestKubernetes_IsInCluster(t *testing.T) {

View File

@@ -20,8 +20,8 @@ import (
clientcmdapi "k8s.io/client-go/tools/clientcmd/api" clientcmdapi "k8s.io/client-go/tools/clientcmd/api"
"k8s.io/klog/v2" "k8s.io/klog/v2"
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
"github.com/manusa/kubernetes-mcp-server/pkg/helm" "github.com/containers/kubernetes-mcp-server/pkg/helm"
_ "k8s.io/client-go/plugin/pkg/client/auth/oidc" _ "k8s.io/client-go/plugin/pkg/client/auth/oidc"
) )

View File

@@ -6,7 +6,7 @@ import (
"path" "path"
"testing" "testing"
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
) )
func TestManager_Derived(t *testing.T) { func TestManager_Derived(t *testing.T) {

View File

@@ -18,7 +18,7 @@ import (
"k8s.io/metrics/pkg/apis/metrics" "k8s.io/metrics/pkg/apis/metrics"
metricsv1beta1api "k8s.io/metrics/pkg/apis/metrics/v1beta1" metricsv1beta1api "k8s.io/metrics/pkg/apis/metrics/v1beta1"
"github.com/manusa/kubernetes-mcp-server/pkg/version" "github.com/containers/kubernetes-mcp-server/pkg/version"
) )
type PodsTopOptions struct { type PodsTopOptions struct {

View File

@@ -7,7 +7,7 @@ import (
"regexp" "regexp"
"strings" "strings"
"github.com/manusa/kubernetes-mcp-server/pkg/version" "github.com/containers/kubernetes-mcp-server/pkg/version"
authv1 "k8s.io/api/authorization/v1" authv1 "k8s.io/api/authorization/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"

View File

@@ -16,8 +16,8 @@ import (
"testing" "testing"
"time" "time"
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
"github.com/manusa/kubernetes-mcp-server/pkg/output" "github.com/containers/kubernetes-mcp-server/pkg/output"
"github.com/mark3labs/mcp-go/client" "github.com/mark3labs/mcp-go/client"
"github.com/mark3labs/mcp-go/client/transport" "github.com/mark3labs/mcp-go/client/transport"
"github.com/mark3labs/mcp-go/mcp" "github.com/mark3labs/mcp-go/mcp"

View File

@@ -7,7 +7,7 @@ import (
"github.com/mark3labs/mcp-go/mcp" "github.com/mark3labs/mcp-go/mcp"
"github.com/mark3labs/mcp-go/server" "github.com/mark3labs/mcp-go/server"
"github.com/manusa/kubernetes-mcp-server/pkg/output" "github.com/containers/kubernetes-mcp-server/pkg/output"
) )
func (s *Server) initConfiguration() []server.ServerTool { func (s *Server) initConfiguration() []server.ServerTool {

View File

@@ -1,7 +1,7 @@
package mcp package mcp
import ( import (
"github.com/manusa/kubernetes-mcp-server/pkg/kubernetes" "github.com/containers/kubernetes-mcp-server/pkg/kubernetes"
"github.com/mark3labs/mcp-go/mcp" "github.com/mark3labs/mcp-go/mcp"
"k8s.io/client-go/rest" "k8s.io/client-go/rest"
v1 "k8s.io/client-go/tools/clientcmd/api/v1" v1 "k8s.io/client-go/tools/clientcmd/api/v1"

View File

@@ -7,7 +7,7 @@ import (
"github.com/mark3labs/mcp-go/mcp" "github.com/mark3labs/mcp-go/mcp"
"github.com/mark3labs/mcp-go/server" "github.com/mark3labs/mcp-go/server"
"github.com/manusa/kubernetes-mcp-server/pkg/output" "github.com/containers/kubernetes-mcp-server/pkg/output"
) )
func (s *Server) initEvents() []server.ServerTool { func (s *Server) initEvents() []server.ServerTool {

View File

@@ -1,7 +1,7 @@
package mcp package mcp
import ( import (
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
"github.com/mark3labs/mcp-go/mcp" "github.com/mark3labs/mcp-go/mcp"
v1 "k8s.io/api/core/v1" v1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"

View File

@@ -3,7 +3,7 @@ package mcp
import ( import (
"context" "context"
"encoding/base64" "encoding/base64"
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
"github.com/mark3labs/mcp-go/mcp" "github.com/mark3labs/mcp-go/mcp"
corev1 "k8s.io/api/core/v1" corev1 "k8s.io/api/core/v1"
"k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/api/errors"

View File

@@ -12,10 +12,10 @@ import (
authenticationapiv1 "k8s.io/api/authentication/v1" authenticationapiv1 "k8s.io/api/authentication/v1"
"k8s.io/utils/ptr" "k8s.io/utils/ptr"
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
internalk8s "github.com/manusa/kubernetes-mcp-server/pkg/kubernetes" internalk8s "github.com/containers/kubernetes-mcp-server/pkg/kubernetes"
"github.com/manusa/kubernetes-mcp-server/pkg/output" "github.com/containers/kubernetes-mcp-server/pkg/output"
"github.com/manusa/kubernetes-mcp-server/pkg/version" "github.com/containers/kubernetes-mcp-server/pkg/version"
) )
type Configuration struct { type Configuration struct {

View File

@@ -7,7 +7,7 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
) )
func TestUnrestricted(t *testing.T) { func TestUnrestricted(t *testing.T) {

View File

@@ -7,7 +7,7 @@ import (
"github.com/mark3labs/mcp-go/mcp" "github.com/mark3labs/mcp-go/mcp"
"github.com/mark3labs/mcp-go/server" "github.com/mark3labs/mcp-go/server"
"github.com/manusa/kubernetes-mcp-server/pkg/kubernetes" "github.com/containers/kubernetes-mcp-server/pkg/kubernetes"
) )
func (s *Server) initNamespaces() []server.ServerTool { func (s *Server) initNamespaces() []server.ServerTool {

View File

@@ -1,8 +1,8 @@
package mcp package mcp
import ( import (
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
"github.com/manusa/kubernetes-mcp-server/pkg/output" "github.com/containers/kubernetes-mcp-server/pkg/output"
"github.com/mark3labs/mcp-go/mcp" "github.com/mark3labs/mcp-go/mcp"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"

View File

@@ -10,8 +10,8 @@ import (
"github.com/mark3labs/mcp-go/server" "github.com/mark3labs/mcp-go/server"
"k8s.io/kubectl/pkg/metricsutil" "k8s.io/kubectl/pkg/metricsutil"
"github.com/manusa/kubernetes-mcp-server/pkg/kubernetes" "github.com/containers/kubernetes-mcp-server/pkg/kubernetes"
"github.com/manusa/kubernetes-mcp-server/pkg/output" "github.com/containers/kubernetes-mcp-server/pkg/output"
) )
func (s *Server) initPods() []server.ServerTool { func (s *Server) initPods() []server.ServerTool {

View File

@@ -2,7 +2,7 @@ package mcp
import ( import (
"bytes" "bytes"
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
"github.com/mark3labs/mcp-go/mcp" "github.com/mark3labs/mcp-go/mcp"
"io" "io"
v1 "k8s.io/api/core/v1" v1 "k8s.io/api/core/v1"

View File

@@ -1,8 +1,8 @@
package mcp package mcp
import ( import (
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
"github.com/manusa/kubernetes-mcp-server/pkg/output" "github.com/containers/kubernetes-mcp-server/pkg/output"
"regexp" "regexp"
"strings" "strings"
"testing" "testing"

View File

@@ -7,7 +7,7 @@ import (
"github.com/mark3labs/mcp-go/mcp" "github.com/mark3labs/mcp-go/mcp"
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
) )
func TestPodsTopMetricsUnavailable(t *testing.T) { func TestPodsTopMetricsUnavailable(t *testing.T) {

View File

@@ -9,8 +9,8 @@ import (
"github.com/mark3labs/mcp-go/server" "github.com/mark3labs/mcp-go/server"
"k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/runtime/schema"
"github.com/manusa/kubernetes-mcp-server/pkg/kubernetes" "github.com/containers/kubernetes-mcp-server/pkg/kubernetes"
"github.com/manusa/kubernetes-mcp-server/pkg/output" "github.com/containers/kubernetes-mcp-server/pkg/output"
) )
func (s *Server) initResources() []server.ServerTool { func (s *Server) initResources() []server.ServerTool {

View File

@@ -14,8 +14,8 @@ import (
"k8s.io/client-go/dynamic" "k8s.io/client-go/dynamic"
"sigs.k8s.io/yaml" "sigs.k8s.io/yaml"
"github.com/manusa/kubernetes-mcp-server/pkg/config" "github.com/containers/kubernetes-mcp-server/pkg/config"
"github.com/manusa/kubernetes-mcp-server/pkg/output" "github.com/containers/kubernetes-mcp-server/pkg/output"
) )
func TestResourcesList(t *testing.T) { func TestResourcesList(t *testing.T) {

View File

@@ -49,7 +49,7 @@ def download_binary(binary_version="latest", destination=None):
if binary_path.exists(): if binary_path.exists():
return binary_path return binary_path
base_url = "https://github.com/manusa/kubernetes-mcp-server/releases" base_url = "https://github.com/containers/kubernetes-mcp-server/releases"
if binary_version == "latest": if binary_version == "latest":
release_url = f"{base_url}/latest/download/{binary_name}" release_url = f"{base_url}/latest/download/{binary_name}"
else: else:

View File

@@ -18,8 +18,8 @@ classifiers = [
] ]
[project.urls] [project.urls]
Homepage = "https://github.com/manusa/kubernetes-mcp-server" Homepage = "https://github.com/containers/kubernetes-mcp-server"
Repository = "https://github.com/manusa/kubernetes-mcp-server" Repository = "https://github.com/containers/kubernetes-mcp-server"
[project.scripts] [project.scripts]
kubernetes-mcp-server = "kubernetes_mcp_server:main" kubernetes-mcp-server = "kubernetes_mcp_server:main"