mcpField
A
Alcatel Lucent Enterprise Aos Mcp Server

Alcatel Lucent Enterprise Aos Mcp Server

ローカル
github.com/Foricher開発ツール154 週間前に更新

Alcatel Lucent Enterprise Aos Mcp Server について

このMCPサーバーは、SSH経由でAlcatel AOSスイッチの基本的なCLIコマンドをAIシステムから実行できるようにします。SSHコマンド実行をREST APIとして分離し、設定ファイルで許可するコマンドを指定できます。

主な機能

  1. 01SSH経由でスイッチCLIを実行
  2. 02SSH実行用REST API
  3. 03許可するAOSコマンドの設定
  4. 04Docker ComposeによるSSH・MCPサーバーの展開

活用シーン

  1. 01AOSスイッチで基本コマンドを実行
  2. 02実行可能なスイッチコマンドを制限
  3. 03クライアントからリモートMCPサーバーへ接続
  4. 04MCPとSSHのサーバーをまとめて展開

MCP 対応

AOSスイッチの基本コマンドを実行するツールをMCP経由で提供します。クライアントはStreamable HTTPでリモートサーバーに接続するか、stdio経由でリモートのaos_ssh RESTサービスを利用できます。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"aos": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"compose"
]
}
}
}
起動コマンドdocker run -i --rm compose

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocicompose

ツール

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

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

詳細

ALE AOS mcp サーバー

このプロジェクトは、Alcatel AOS スイッチ向けの MCP(Model Context Protocol)サーバーを提供します。詳細は https://modelcontextprotocol.io/docs/getting-started/intro を参照してください。 基本的なスイッチの CLI コマンドを SSH 接続経由で実行できます。 これにより、LLM と Alcatel AOS ネットワークスイッチとのやり取りが可能になります。 以下の 2 つのサブプロジェクトが含まれています。

  • aos_ssh:ALE AOS スイッチで SSH CLI コマンドを実行する REST API を提供します
  • aos_mcp:aos_ssh サーバーの REST API 経由で基本的な SSH コマンドを実行するための MCP ツールを LLM に提供する MCP サーバーです。

デモ

  • GitHub Copilot CLI を使ったデモ

https://github.com/user-attachments/assets/828169e4-867f-44cb-8bb6-dd90116090a2

アーキテクチャ

ALE AOS mcp サーバーのアーキテクチャ

MCP サーバーと SSH サーバーのデプロイ

aos_ssh および aos_mcp サーバー用の Docker イメージを利用できます。

  • docker.io/foricher/ale-aos-ssh:[tag]
  • docker.io/foricher/ale-aos-mcp:[tag]

deploy フォルダーには、Docker Compose による MCP サーバー側のデプロイ構成があります。

ale-aos-ssh の設定

SSH 接続に使用するスイッチのホスト、ユーザー、パスワードを data\aos-ssh-host.json ファイルに設定します。

{
  "jump_ssh_hosts": [
    {
      "name": "jump_name",
      "public_host": "public_host_or_ip_address",
      "public_port": 22,
      "private_host": "private_host_or_ip_address",
      "private_port": 22,
      "user": "jump_user",
      "password": "jupmp_password"
    }
  ],
  "hosts": [
    {
      "host": "host_or_ip_address1",
      "user": "user",
      "password": "password",
      "tags": ["sw1"]
    },
    {
      "host": "host_or_ip_address2",
      "user": "user",
      "password": "password",
      "tags": ["sw2"],
      "jump_ssh_name": "jump_name"
    }
  ]
}

許可する AOS コマンドを data\aos-ssh-conf.yaml ファイルに設定します。

allowed_aos_commands:
  - show .*
  - ping .*
  - traceroute .*

ale-aos-ssh の設定

data\mcp_tools.yaml ファイルでは、LLM が AOS コマンドを実行するために使用するツールを定義します。

Docker Compose ファイル

docker-compose.yaml ファイル:

services:
  aos-ssh:
    image: docker.io/foricher/ale-aos-ssh:0.1.2.2
    ports:
      - "8210:8110"
    volumes:
      - ./data/aos-ssh-host.json:/app/data/aos-ssh-host.json
      - ./data/aos-ssh-conf.yaml:/app/data/aos-ssh-conf.yaml
  aos-mcp:
    image: docker.io/foricher/ale-aos-mcp:0.1.2
    ports:
      - "8000:8000"
    environment:
      - ALE_AOS_MCP_SSH_URL=http://aos-ssh:8110
      - ALE_AOS_MCP_TRANSPORT=streamable-http
#      - ALE_AOS_MCP_TRANSPORT=sse
      - ALE_AOS_MCP_TOOLS_FILE=/app/data/mcp_tools.yaml
    volumes:
      - ./data:/app/data
    depends_on:
      - aos-ssh

Docker Compose を起動します。

 cd deploy
 docker compose up 

デフォルトでは、MCP サーバーは streamable-http トランスポートでデプロイされます。

MCP Inspector でテストする

MCP Inspector ツールを使用して AOS MCP サーバーをテストできます。詳細は https://modelcontextprotocol.io/legacy/tools/inspector を参照してください。

npx @modelcontextprotocol/inspector
  • Transport Type に「Streamable HTTP」を選択します
  • URL を入力します:http://mcp-host:8000/mcp
  • プロキシセッションのトークンを入力します

MCP Inspector

クライアント

  • Streamable HTTP トランスポートでリモート MCP サーバーに接続します。

    ale_aos_mcp と ale_aos_ssh の両サーバーがリモートで実行されます。

{
 "mcpServers": {
   "aos": {
     "type": "http",
     "url": "http://<aos-mcp-host>:8000/mcp"
   }
 }
}

  • stdio トランスポートでローカル MCP サーバーに接続します。

    ローカルの ale_aos_mcp サーバーは、指定された引数 --aos-ssh-url url を使ってリモートの ale_aos_ssh サーバーに接続します。

{
   "mcpServers": {
       "aos": {
           "command": "uv run ale_aos_mcp",
           "args": [
               "--aos-ssh-url",
               "http://<aos-ssh-host>:8210"
           ],
           "env": {
           }
       }
   }
}
Visual Studio Code で GitHub Copilot を使用する

ワークスペース内の .vscode フォルダーに、以下のように mcp.json ファイルを配置します。

  • Streamable HTTP トランスポートの場合
{
 "servers": {
   "aos": {
     "type": "http",
     "url": "http://<aos-mcp-host>:8000/mcp"
   }
 }
}

  • stdio トランスポートの場合
{
   "servers": {
       "aos": {
           "command": "uv run ale_aos_mcp",
           "args": [
               "--aos-ssh-url",
               "http://<aos-ssh-host>:8210"
           ],
           "env": {
           }
       }
   }
}

チャットの agent モードを設定します。

GitHub Copilot の例

Visual Studio Code で Cursor を使用する

ワークスペース内の .cursor フォルダーに、以下のように mcp.json ファイルを配置します。

チャットの agent モードを設定します。

{
   "mcpServers": {
       "aos": {
           "url": "http://<aos-mcp-host>:8000/mcp"
       }
   }
}

Cursor の例

Gemini CLI を使用する

.gemini フォルダーに、以下のように 'settings.json' ファイルを配置します。

{
"mcpServers": {
  "aos": {
    "name": "AOS MCP Server",
    "description": "AOS MCP Server for managing AOS switches",
    "httpUrl": "http://<aos-mcp-host>:8000/mcp",
    "timeout" : 60000
  }
}
}

Zscaler の問題

set NODE_EXTRA_CA_CERTS=C:\\Data\\zscaler\\zscaler.pem
set NODE_TLS_REJECT_UNAUTHORIZED=0

Gemini API キーを設定します

set GEMINI_KEY_API=<gemini-api-key>

Gemini CLI をインストールします

npm install -g @google/gemini-cli@latest
gemini -m gemini-2.5-flash

または

npx https://github.com/google-gemini/gemini-cli -m gemini-2.5-flash

Gemini CLI

Claude Code CLI を使用する

詳細については、(https://docs.anthropic.com/en/docs/claude-code/mcp)を参照してください。

Zscaler の問題が発生した場合

set NODE_EXTRA_CA_CERTS=C:\\Data\\zscaler\\zscaler.pem
set NODE_TLS_REJECT_UNAUTHORIZED=0

Claude Code をインストールします

npm install -g @anthropic-ai/claude-code

プロジェクト内で

cd <project>

プロジェクトに AOS MCP サーバーを追加します。

claude mcp add --transport http --scope project aos http://<mcp-server-host>:8000/mcp

Claude を実行します。

claude

Claude Code

Opencode CLI を使用する(Linux のみ)

詳細については、(https://opencode.ai)を参照してください。

Zscaler の問題が発生した場合

export NODE_TLS_REJECT_UNAUTHORIZED=0

Claude Code をインストールします

npm i -g opencode-ai

プロジェクト内で

cd <project>

プロジェクトに opencode.json ファイルを追加します。

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "aos": {
      "type": "remote",
      "url": "http://<mcp-host>:8000/mcp",
      "enabled": true
    }
  }
}

Opencode を実行します。

opencode

Opencode

コメント

MCP は初めてですか?

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

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