Packet-Tracer-MCP
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に何かを貼り付ける必要もありません。
要件
Pythonと依存関係を管理します | |
Cisco Packet Tracer | 9.0.0(Windows)でテスト済み |
Claude Code | MCPクライアント |
Related MCP server: packet-tracer-mcp
セットアップ(一度だけ)
1. 依存関係
uv sync2. Packet TracerにBuilderモジュールをインストール
packet_tracer/Builder.ptsは、このプロジェクトが使用する関数(addDevice、addLink、addModule、configureIosDevice、configurePcIp、getDevices、removeLink、addLabel、saveTopology)と、HTTPブリッジと通信するブリッジをPT内で定義するスクリプトモジュールです。このモジュールがないと何も動作しません。
Packet Tracerで(メニューは英語、PT 9.0.0で確認済み):
Extensions->Scripting->Configure PT Script ModulesAdd-> このリポジトリからpacket_tracer/Builder.ptsを選択リストからBuilderを選択 ->
Settings-> On Startupにチェックを入れる(PTを開くたびにモジュールが自動起動するように)実行中かどうかを確認するには:
ExtensionsメニューにBuilder Code Editorエントリが表示されるはずです。表示されない場合、モジュールは起動していません。
起動時に、モジュールはBuilder Code Editorウィンドウを自動的に開きます。そのウィンドウがポーリングループをホストするため、作業中は開いたままにしておく必要があります。タイトルに「bridge activo」と表示されていれば、ブリッジは機能しています。
3. Claude Codeでプロジェクトを開く
ターミナルで、プロジェクトのフォルダから:
claudeClaude 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 respondenmain.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サーバー:38のネットワークツール + 組み込みHTTPブリッジ |
| ブリッジのFastAPIアプリ(コマンドと結果のキュー) |
| PTのスクリプトモジュール、インポート可能 |
| ポーリングループ(モジュールのCustom Interfacesに配置) |
| 戻りチャネル付き実行器(Script Engineに配置) |
| Claude Codeが従う指示とルール |
|
|
| /pt-desde-imagen用の入力図(README参照) |
| ブリッジに直接話す単独スクリプト:Claudeなしの例とデバッグ |
packet_tracer/内の2つの.jsはすでにBuilder.ptsに含まれています。読み取り、バージョン管理、必要に応じて再インポートできるように、リポジトリに単体で置かれています。
uv run python main.pyは、MCPなしでブリッジだけを起動する場合に引き続き使用できます(これらのデバッグスクリプトに必要なものです)。
コマンドの流れ
ClaudeはMCPツールを呼び出し、PTのJS行に変換します。
mcp_server.pyはPOST /add_commandでキューに入れます。bridge.jsはBuilder Code Editorウィンドウ内でGET /next_command(2秒ごと)で取得し、$se('runCodeBridge', codigo)を呼び出します。bridge_runner.jsはスクリプトエンジンで実行し、値を返す場合はevaluateJavaScriptAsyncでページに返します。ページは
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ウィンドウは開いたままにしておく必要があります:そこがループの存在場所です。
Maintenance
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
- AlicenseNot gradedqualityCmaintenanceConnects Claude with Cisco Packet Tracer 9.x to control network topologies, configure devices with IOS commands, and run diagnostics via natural language.MIT
- AlicenseNot gradedqualityCmaintenanceEnables control of Cisco Packet Tracer 9.0 via natural language, allowing creation of network topologies, device configuration, and simulation launches through an MCP interface.998MIT
- AlicenseBqualityBmaintenanceEnables automation of Cisco Packet Tracer simulations by placing devices, connecting links, and generating IOS configurations via MCP, ideal for network coursework and demonstrations.231MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to control Cisco Packet Tracer in real time, allowing natural language-driven creation and configuration of network topologies.4MIT
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.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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