Skip to main content
Glama
cvz-dev

Packet-Tracer-MCP

by cvz-dev

Packet Tracer MCP

Claude Codeが自然言語でCisco Packet Tracerのトポロジを構築・設定できるようにするMCPサーバー:デバイスの作成、配線、IOSコマンド、VLAN、OSPF、NAT、ACL、VoIPの適用、または図の画像からネットワーク全体を再現することができます。

Tu -> Claude Code --stdio--> mcp_server.py --HTTP--> bridge :54321
                                                         |
                              Packet Tracer  <-----------+
                              modulo Builder:
                                bridge.js         (pagina: hace el polling)
                                bridge_runner.js  (motor: ejecuta y devuelve)

HTTPブリッジはMCPサーバーで動作するため、別途ターミナルを起動する必要はありません。また、ポーリングループはBuilderモジュール内に存在するため、Packet Tracerに何かを貼り付ける必要もありません。

要件

uv

Pythonと依存関係を管理します

Cisco Packet Tracer

9.0.0(Windows)でテスト済み

Claude Code

MCPクライアント

Related MCP server: packet-tracer-mcp

セットアップ(一度だけ)

1. 依存関係

uv sync

2. Packet TracerにBuilderモジュールをインストール

packet_tracer/Builder.ptsは、このプロジェクトが使用する関数(addDeviceaddLinkaddModuleconfigureIosDeviceconfigurePcIpgetDevicesremoveLinkaddLabelsaveTopology)と、HTTPブリッジと通信するブリッジをPT内で定義するスクリプトモジュールです。このモジュールがないと何も動作しません。

Packet Tracerで(メニューは英語、PT 9.0.0で確認済み):

  1. Extensions -> Scripting -> Configure PT Script Modules

  2. Add -> このリポジトリからpacket_tracer/Builder.ptsを選択

  3. リストからBuilderを選択 -> Settings -> On Startupにチェックを入れる(PTを開くたびにモジュールが自動起動するように)

  4. 実行中かどうかを確認するには:ExtensionsメニューにBuilder Code Editorエントリが表示されるはずです。表示されない場合、モジュールは起動していません。

起動時に、モジュールはBuilder Code Editorウィンドウを自動的に開きます。そのウィンドウがポーリングループをホストするため、作業中は開いたままにしておく必要があります。タイトルに「bridge activo」と表示されていれば、ブリッジは機能しています。

3. Claude Codeでプロジェクトを開く

ターミナルで、プロジェクトのフォルダから:

claude

Claude Codeは.mcp.jsonを読み取り、MCPサーバー(およびそれに伴うHTTPブリッジ)を自動的に起動します。初回はフォルダを信頼するかどうかの確認を求められる場合があります。

サーバーが接続されているか確認するには、Claude Code内で/mcpと入力します:packet-tracerとそのツールが表示されるはずです。

日常的な使い方

1. Abre Packet Tracer
   -> la ventana "Builder Code Editor" se abre sola y debe quedarse abierta

2. En una terminal, en la carpeta del proyecto:
      cd ruta/al/pt_MCP
      claude

3. Dentro de Claude Code:
      /pt-iniciar     -> confirma que las 3 piezas responden

main.pyを起動したり、Packet Tracerにスクリプトを貼り付けたり、追加のターミナルを開いたりする必要はありません。

そしてそこから、自然言語で:

  • 「2911ルーター2台をシリアルで接続し、10.0.0.0/30で各LANにPCを1台配置」

  • /pt-desde-imagen diagramas/ejemplo-red1.jpeg — 図のトポロジを再現します

  • 「SW1にVLAN 10 VENTASを設定し、ポート1-4をアクセスに設定」

キャンバスに何も表示されない場合は、Claudeにverificar_entorno()を呼び出すよう依頼してください:3つの要素のうちどれがダウンしているか、どう復旧するかが表示されます。

構造

ファイル

役割

mcp_server.py

MCPサーバー:38のネットワークツール + 組み込みHTTPブリッジ

main.py

ブリッジのFastAPIアプリ(コマンドと結果のキュー)

packet_tracer/Builder.pts

PTのスクリプトモジュール、インポート可能

packet_tracer/bridge.js

ポーリングループ(モジュールのCustom Interfacesに配置)

packet_tracer/bridge_runner.js

戻りチャネル付き実行器(Script Engineに配置)

CLAUDE.md

Claude Codeが従う指示とルール

.claude/commands/

/pt-iniciar/pt-desde-imagen

diagramas/

/pt-desde-imagen用の入力図(README参照)

build_red1.py

ブリッジに直接話す単独スクリプト:Claudeなしの例とデバッグ

packet_tracer/内の2つの.jsはすでにBuilder.ptsに含まれています。読み取り、バージョン管理、必要に応じて再インポートできるように、リポジトリに単体で置かれています。

uv run python main.pyは、MCPなしでブリッジだけを起動する場合に引き続き使用できます(これらのデバッグスクリプトに必要なものです)。

コマンドの流れ

  1. ClaudeはMCPツールを呼び出し、PTのJS行に変換します。

  2. mcp_server.pyPOST /add_commandでキューに入れます。

  3. bridge.jsはBuilder Code Editorウィンドウ内でGET /next_command(2秒ごと)で取得し、$se('runCodeBridge', codigo)を呼び出します。

  4. bridge_runner.jsはスクリプトエンジンで実行し、値を返す場合はevaluateJavaScriptAsyncでページに返します。

  5. ページはPOST /command_resultで公開し、mcp_server.pyが受け取ります。

ステップ4が必要なのは、$se()が呼び出しをディスパッチしたこと(trueに解決)を確認するだけで、実行されたコードの値を返すことはないためです。

各クエリは一意のマーカー(a1b2c3d4|...)でラップされ、それを返す結果のみが受け入れられます。これがないと、遅れて到着した応答がキューに残り、次のクエリが誤った応答を受け取ることになります。

既知の制限

  • Packet TracerはIOSコマンドの出力を公開しませんhacer_ping()obtener_tabla_routing()はコマンドを送信しますが、その出力はPT内のデバイスコンソールでのみ確認できます。APIによるクエリ(getDevices()、ポート状態)はデータを返します。

  • crear_dispositivo()conectar_dispositivos()agregar_modulo_router()eliminar_conexion()は実際の結果([OK] / [ERROR])を確認します。その他の書き込みコマンド(IOS設定)は確認なしでキューに入れられます:Exito: Comando enviadoはキューに入れられたことを意味し、実行されたわけではありません。

  • 特定のデバイスを作成すると、PTは自動的にPower Distribution Device0をキャンバスに追加します。これはインベントリに表示されますが、エラーではありません。

  • obtener_puertos_dispositivo()は、インストールされているカードのポートを含むPT内のデバイスの実際のポートを読み取り、空きポートを示します。

  • diagnosticar_red()は802.1Qサブインターフェース、VLAN、ルーティングテーブルを認識しません:障害を報告しないからといって、接続性が保証されるわけではありません。

  • Builder Code Editorウィンドウは開いたままにしておく必要があります:そこがループの存在場所です。

Install Server
F
license - not found
B
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Generate cloud architecture diagrams, flowcharts, and sequence diagrams.

  • Turns vague automation requests into tool stacks, prompts, QA checks, and human boundaries.

  • Designs, prices, and deploys AWS/GCP cloud infrastructure from plain-English requirements.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/cvz-dev/Packet-Tracer-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server