mcpField
A
Apstra Mcp Server

Apstra Mcp Server

ローカル
github.com/vignitinクラウド・インフラ258 週間前に更新

Apstra Mcp Server について

Apstra MCP Serverは、データセンターネットワークを管理するチーム向けに、Juniper Apstra Fabric Managerの操作をMCPクライアントへ提供します。ブループリントやネットワーク設定の管理に加え、インフラの照会と監視に対応します。

主な機能

  1. 01データセンターブループリントの管理
  2. 02ラック、ネットワーク、プロトコルの照会
  3. 03仮想ネットワークとゲートウェイの作成
  4. 04接続テンプレートポリシーの適用
  5. 05設定のデプロイと異常の確認
  6. 06HTTP経由の更新ストリーミング

活用シーン

  1. 01ブループリントとデバイス情報の確認
  2. 02仮想ネットワークとゲートウェイの構成
  3. 03エンドポイントポリシーの適用と変更のデプロイ
  4. 04プロトコルセッションと異常の確認

MCP 対応

MCPクライアント向けに、Juniper Apstraを照会・管理するツールを提供します。stdioとstreamable HTTPに対応し、SSEで更新を配信できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Apstra MCP Server

Juniper Apstra Fabric Manager API と連携するためのツールを提供する Model Context Protocol(MCP)サーバーです。Claude やその他の MCP クライアントが、自然言語コマンドを使ってデータセンターネットワークインフラを管理できるようにします。

Features

  • ブループリント管理:ブループリント設定の作成、取得、削除
  • インフラストラクチャの照会:ラック、ルーティングゾーン、システム情報の取得
  • ネットワークのプロビジョニング:高度な設定オプションとリモートゲートウェイを指定した仮想ネットワークの作成
  • 接続テンプレート:接続テンプレートとアプリケーションエンドポイントの割り当てを管理
  • ポリシー管理:アプリケーションエンドポイントに対する接続テンプレートポリシーの適用と削除
  • 設定管理:デプロイステータスの確認と設定のデプロイ
  • プロトコルの監視:BGP などのプロトコルセッションを監視
  • 異常検知:ブループリントの異常を取得して分析
  • ネイティブストリーミングのサポート:Server-Sent Events によるリアルタイム更新

Quick Start

ローカルでの使用(stdio)
# Create config file
cp apstra_config_sample.json apstra_config.json
# Edit with your Apstra server details

# Run with stdio transport
python3 apstra_mcp.py -t stdio -f apstra_config.json
ネットワークへのデプロイ(Streamable HTTP)
Docker(推奨)
# Clone and configure
git clone <this-repo>
cd apstra-mcp-server
cp apstra_config_sample.json apstra_config.json
# Edit config with your Apstra details

# Start HTTP streaming server
docker-compose up -d
Python を直接使用
# Install dependencies
pip install -r requirements.txt

# Start streamable HTTP server
python3 apstra_mcp.py -t streamable-http -H 0.0.0.0 -p 8080 -f apstra_config.json

Installation

前提条件
  • Python 3.7+
  • Juniper Apstra サーバーへのアクセス
  • 有効な Apstra 認証情報
依存関係
pip install -r requirements.txt

利用可能なツール(合計 21 個)

ヘルスチェックとステータスのツール(2 個)
  • health() - サーバーのヘルスチェックと Apstra 接続ステータス
  • formatting_guidelines() - ネットワークデータの表示形式に関するガイドラインを取得
クエリツール(12 個)
  • get_bp() - ブループリント情報を取得
  • get_racks(blueprint_id) - ラック情報を取得
  • get_rz(blueprint_id) - ルーティングゾーンを取得
  • get_vn(blueprint_id) - 仮想ネットワークを取得
  • get_ct(blueprint_id) - 接続テンプレートを取得
  • get_app_ep(blueprint_id) - 接続テンプレートのアプリケーションエンドポイントを取得
  • get_system_info(blueprint_id) - システム/デバイス情報を取得
  • get_protocol_sessions(blueprint_id) - プロトコルセッションを取得
  • get_anomalies(blueprint_id) - ブループリントの異常を取得
  • get_remote_gw(blueprint_id) - リモートゲートウェイを取得
  • get_diff_status(blueprint_id) - デプロイの差分ステータスを取得
  • get_templates() - 利用可能なテンプレートを取得
管理ツール(3 個)
  • deploy(blueprint_id, description, staging_version) - 設定をデプロイ
  • delete_blueprint(blueprint_id) - ブループリントを削除
  • apply_ct_policies(blueprint_id, application_points) - アプリケーションエンドポイントに対する接続テンプレートポリシーを適用/削除
作成ツール(4 個)
  • create_vn(blueprint_id, security_zone_id, vn_name, virtual_gateway_ipv4, ipv4_subnet, ...) - 高度な設定オプションを指定して仮想ネットワークを作成
  • create_remote_gw(blueprint_id, gw_ip, gw_asn, gw_name, local_gw_nodes, ...) - リモートゲートウェイを作成
  • create_datacenter_blueprint(blueprint_name, template_id) - データセンターのブループリントを作成
  • create_freeform_blueprint(blueprint_name) - フリーフォームのブループリントを作成

Security Model

stdio トランスポート(デフォルト)
  • ネットワークに公開されないため、デフォルトで安全です
  • 設定ファイルの認証情報を使用します
  • Claude Desktop との連携に最適です
streamable-http トランスポート
  • ネイティブの FastMCP ストリーミング機能を備え、ネットワーク経由でアクセスできます
  • リアルタイム更新のために SSE へ自動的にアップグレードします
  • 単一のコンテナーでデプロイできます

Claude Desktop Configuration

claude_desktop_config.json に追加します:

{
  "mcpServers": {
    "apstra": {
      "command": "uv",
      "args": [
        "run",
        "--with",
        "fastmcp,httpx",
        "python3",
        "/path/to/apstra_mcp.py",
        "-f",
        "/path/to/apstra_config.json"
      ]
    }
  }
}

パスをインストールディレクトリに合わせて更新してください。

Usage Examples

Claude Desktop での使用例
  • 「システム内のすべてのブループリントを表示して」
  • 「ゲートウェイ 192.168.1.1、サブネット 192.168.1.0/24 で『web-tier』という仮想ネットワークを作成して」
  • 「ブループリント X のすべての接続テンプレートを取得して」
  • 「インターフェース Z に接続テンプレートポリシー Y を適用して」
  • 「接続テンプレートのアプリケーションエンドポイントを表示して」
  • 「ステージング設定をデプロイして」
  • 「ブループリント X に異常がないか確認して」
ストリーミング HTTP クライアント

サーバーは /mcp/* でネイティブな FastMCP エンドポイントを公開し、ストリーミングレスポンスに対して SSE へのアップグレードを自動的に行います。

アーキテクチャ

  • FastMCP フレームワーク:SSE ストリーミングを自動で行うネイティブなトランスポートシステムです
  • 設定ベースの認証:Apstra API 認証を直接使用する、シンプルなステートレス運用です
  • 単一コンテナ:ストリーム可能な HTTP トランスポートを使用する、ポート 8080 の HTTP サーバーです

ドキュメント

  • DEPLOYMENT.md - 例を含む完全なデプロイガイドです
  • CLAUDE.md - 技術的な実装の詳細と開発ガイドです

トラブルシューティング

  • 認証に失敗する:認証情報とサーバーの接続状況を確認してください
  • ツールが表示されない:Claude Desktop のログでサーバーの起動を確認してください
  • トランスポートエラー:FastMCP のバージョンに互換性があることを確認してください
  • Docker の問題:docker-compose logs を確認してください

ライセンス

このプロジェクトは、教育およびデモンストレーションを目的として現状のまま提供されます。


ブログ記事:データセンターネットワーク向け MCP

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。