Cisco ACI MCP Server について
Cisco ACI MCP Serverは、ネットワーク運用者向けにAPIC REST API経由でCisco ACIファブリックを管理します。テナントやネットワークオブジェクト、ノード、ヘルス監視を扱うツールを提供します。
主な機能
- 01テナントとアプリケーションプロファイルの管理
- 02エンドポイントグループとブリッジドメインの設定
- 03VRFとセキュリティコントラクトの管理
- 04ファブリックの健全性と障害の確認
- 05ノードとインターフェースの管理
活用シーン
- 01テナントやネットワークオブジェクトの作成・更新
- 02ファブリックの健全性と障害の確認
- 03ノード、インターフェース、統計情報の照会
MCP 対応
MCP サーバーとして、クライアントにCisco ACIファブリックの管理・監視ツールを公開し、APIC REST API経由でコントローラーを操作します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
ACI Model Context Protocol(MCP)サーバー
APIC REST API を通じて Cisco ACI(Application Centric Infrastructure)ファブリックを設定および管理するための、包括的な MCP サーバーです。
概要
この MCP サーバーには、ACI ファブリックを完全に管理するための 35 種類以上のツールが用意されています。内容は次のとおりです。
- テナント管理:テナントの作成、一覧表示、取得、更新、削除
- アプリケーションプロファイル:テナント内のアプリケーションプロファイルの管理
- エンドポイントグループ(EPG):エンドポイントグループの設定と管理
- ブリッジドメイン:レイヤー 2 ドメインの作成と管理
- VRF:仮想ルーティングおよび転送インスタンスの管理
- コントラクト:セキュリティポリシーの定義と管理
- ヘルスモニタリング:ファブリックのヘルス状態と障害の監視
- ノード管理:ファブリックのノードとインターフェイスの管理
インストール
前提条件
- Node.js 18+ と npm
- Cisco APIC コントローラーへのアクセス
- 有効な APIC 認証情報(ユーザー名/パスワードまたは証明書)
セットアップ
-
クローンとインストール:
cd aci-mcp-server npm install -
認証の設定:
オプション A:環境変数
cp .env.example .env # Edit .env with your APIC details export ACI_APIC_URL="https://your-apic.domain.com" export ACI_USERNAME="admin" export ACI_PASSWORD="your_password"オプション B:設定ファイル
cp aci-config.json.example aci-config.json # Edit aci-config.json with your settingsオプション C:証明書認証
export ACI_APIC_URL="https://your-apic.domain.com" export ACI_USERNAME="admin" export ACI_CERT_NAME="your-cert-name" export ACI_PRIVATE_KEY_PATH="/path/to/private.key" -
サーバーをビルド:
npm run build -
接続をテスト:
npm start # Should connect to APIC and display available tools
設定
認証方式
このサーバーでは、次の 2 つの認証方式をサポートしています。
- ユーザー名/パスワード:標準の APIC ログイン
- 証明書:X.509 証明書ベースの認証(本番環境に推奨)
ツールの設定
aci-mcp-config.json を使用して、利用可能なツールを設定します。
{
"serverConfig": {
"name": "aci",
"toolSelectionMode": "whitelist",
"enableAllTools": false,
"tenantFocus": "production"
},
"toolConfiguration": {
"enabledTools": ["list_tenants", "get_fabric_health", ...],
"disabledTools": []
}
}
ツールモード:
core:必須ツール(35 種類)— デフォルトall:利用可能なすべてのツール(50 種類以上)
環境変数による設定:
export ACI_TOOL_MODE=core # or 'all'
export ACI_TENANT_FOCUS=production # Focus on specific tenant
利用可能なツール
テナント管理(5 種類)
list_tenants- すべてのテナントを一覧表示get_tenant- 指定したテナントの詳細を取得create_tenant- 新しいテナントを作成update_tenant- テナントの設定を更新delete_tenant- テナントを削除
アプリケーションプロファイル管理(5 種類)
list_application_profiles- アプリケーションプロファイルを一覧表示get_application_profile- 指定したアプリケーションプロファイルを取得create_application_profile- 新しいアプリケーションプロファイルを作成update_application_profile- アプリケーションプロファイルを更新delete_application_profile- アプリケーションプロファイルを削除
エンドポイントグループ管理(6 種類)
list_endpoint_groups- エンドポイントグループを一覧表示get_endpoint_group- 指定した EPG の詳細を取得create_endpoint_group- 新しい EPG を作成update_endpoint_group- EPG の設定を更新delete_endpoint_group- EPG を削除get_endpoint_group_stats- EPG の統計情報を取得
ブリッジドメイン管理(5 種類)
list_bridge_domains- ブリッジドメインを一覧表示get_bridge_domain- 指定したブリッジドメインを取得create_bridge_domain- 新しいブリッジドメインを作成update_bridge_domain- ブリッジドメインを更新delete_bridge_domain- ブリッジドメインを削除
VRF 管理(5 種類)
list_vrfs- VRF を一覧表示get_vrf- 指定した VRF の詳細を取得create_vrf- 新しい VRF を作成update_vrf- VRF の設定を更新delete_vrf- VRF を削除
コントラクト管理(8 種類)
list_contracts- コントラクトを一覧表示get_contract- コントラクトの詳細を取得create_contract- 新しいコントラクトを作成update_contract- コントラクトを更新delete_contract- コントラクトを削除list_filters- フィルターを一覧表示create_filter- 新しいフィルターを作成delete_filter- フィルターを削除
ヘルスとモニタリング(8 種類)
get_fabric_health- ファブリック全体のヘルス状態を取得list_faults- ファブリックの障害を一覧表示get_fault_summary- 重大度別に障害の概要を取得list_nodes- ファブリックのノードを一覧表示get_node_health- ノードのヘルス状態を取得list_interfaces- ファブリックのインターフェイスを一覧表示get_interface_stats- インターフェイスの統計情報を取得get_system_info- APIC システム情報を取得
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。