k8s-mcp-server

Kubernetes MCPサーバーは、Kubernetesクラスターと標準化されたインターフェースを通じて相互作用するためのツールを提供します。APIリソースの発見、リソースのリスト表示、詳細情報の取得、ポッドのログ取得、メトリクスの取得など、多くの機能を備えています。これにより、Kubernetesの管理が効率的になります。

GitHubスター

75

ユーザー評価

未評価

お気に入り

0

閲覧数

34

フォーク

14

イシュー

2

インストール方法
難易度
中級
推定所要時間
10-20
必要な環境
Go 1.23 or later
Access to a Kubernetes cluster
+1 more

インストール方法

インストール方法

前提条件

Go: 1.23以上
Kubernetesクラスターへのアクセス
kubectlが適切に設定されていること

インストール手順

1. リポジトリのクローン

bash
git clone https://github.com/reza-gholizade/k8s-mcp-server.git
cd k8s-mcp-server

2. 依存関係のインストール

bash
go mod download

3. サーバーのビルド

bash
go build -o k8s-mcp-server main.go

トラブルシューティング

よくある問題

問題: サーバーが起動しない 解決策: Goのバージョンを確認し、依存関係を再インストールしてください。

設定方法

設定方法

基本設定

サーバーの起動

サーバーはコマンドラインフラグまたは環境変数を使用して2つのモードで実行できます。 #### Stdioモード(CLI統合用) このモードは標準入出力を使用します。
bash
./k8s-mcp-server --mode stdio
#### SSEモード(Webアプリケーション用) このモードはHTTPサーバーを起動し、Server-Sent Eventsをサポートします。 デフォルト(ポート8080):
bash
./k8s-mcp-server --mode sse
ポートを指定する:
bash
./k8s-mcp-server --mode sse --port 9090

Dockerイメージの使用

あらかじめビルドされたDockerイメージを使用してサーバーを実行することもできます。
1イメージをプルする:
bash
docker pull ginnux/k8s-mcp-server:latest
2コンテナを実行する:
bash
docker run -p 8080:8080 -v ~/.kube/config:/home/appuser/.kube/config:ro ginnux/k8s-mcp-server

使用例

使用例

サーバーの起動

サーバーを起動するには、以下のコマンドを実行します。

Stdioモードでの起動

bash
./k8s-mcp-server --mode stdio

SSEモードでの起動

bash
./k8s-mcp-server --mode sse

プログラムでの使用

javascript
// JavaScript例(Node.js)
const { MCPClient } = require('@modelcontextprotocol/client');

const client = new MCPClient();
await client.connect();

// ツールの実行
const result = await client.callTool('toolName', {
  parameter1: 'value1',
  parameter2: 'value2'
});

console.log(result);

使用ケース

Kubernetesクラスター内のリソースをフィルタリングしてリスト表示し、特定のアプリケーションの状態を確認する。
特定のポッドのログを取得して、アプリケーションのデバッグを行う。
新しいKubernetesリソースをYAMLファイルから作成し、デプロイメントを自動化する。
Kubernetesクラスターのノードメトリクスを取得して、リソース使用状況を監視する。

追加リソース