Containerlab MCP Server について
Containerlab MCP Server は AI クライアントを稼働中の containerlab API に接続し、ネットワークラボを管理します。ラボの一覧表示、トポロジーのデプロイ、詳細確認、ノードコマンドの実行、後片付けに対応します。
主な機能
- 01利用可能なラボの一覧表示
- 02ネットワークトポロジーのデプロイ
- 03ラボ詳細の確認
- 04ラボノードでのコマンド実行
- 05ラボの破棄と後片付け
活用シーン
- 01Claude からラボを一覧表示
- 02ネットワークトポロジーのデプロイ
- 03ラボの確認やノードコマンドの実行
- 04テスト後のラボ削除
MCP 対応
containerlab のラボ管理操作を MCP ツールとして公開し、Claude Desktop などのクライアントが設定済みの containerlab API サーバーと連携できるようにします。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Containerlab MCP サーバー
これは、AI を使用して containerlab とやり取りするための、手早く作成した MCP(Model Context Protocol)の試験的な実装です。この例は Claude デスクトップ向けに調整されています。
- containerlab API server を実行します
- main ブランチから containerlab の最新ビルドを使用します
- 自分でビルドします:
make build - バイナリをコピーします:
cp bin/containerlab $(which containerlab)
- 自分でビルドします:
MCP サーバーのビルド
Windows の場合
export GOOS=windows
export GOARCH=amd64
go build -o clab-mcp-server.exe main.go
Mac の場合
# For Intel Macs
export GOOS=darwin
export GOARCH=amd64
go build -o clab-mcp-server main.go
# For Apple Silicon (M1/M2/M3)
export GOOS=darwin
export GOARCH=arm64
go build -o clab-mcp-server main.go
Linux の場合
export GOOS=linux
export GOARCH=amd64
go build -o clab-mcp-server main.go
Claude Desktop のセットアップ
- MCP サーバーの実行ファイルをアクセス可能な場所に配置します
- Windows の場合:
clab-mcp-server.exe - Mac/Linux の場合:
clab-mcp-server
- Windows の場合:
- 次の内容で
claude_desktop_config.jsonという名前の設定ファイルを作成します。
# For Windows:
{
"mcpServers": {
"clab-api": {
"command": "C:\\clab-mcp-server.exe",
"args": [],
"env": {
"API_SERVER_URL": "http://localhost:8080"
}
}
}
}
# For Mac/Linux:
{
"mcpServers": {
"clab-api": {
"command": "/path/to/clab-mcp-server",
"args": [],
"env": {
"API_SERVER_URL": "http://localhost:8080"
}
}
}
}
- containerlab API server が http://localhost:8080 で実行されていることを確認するか、必要に応じて URL を更新します
使用方法
設定が完了すると、Claude は次の操作を実行できるようになります。
- 利用可能なラボの一覧表示
- 新しいネットワークトポロジのデプロイ
- ラボの詳細の確認
- ラボノードでのコマンドの実行
- ラボの破棄とクリーンアップ
自然言語でこれらの操作を Claude に依頼すると、適切な MCP ツールを使用して containerlab 環境とやり取りします。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。