プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。レビューとアカウント機能は今後のステップで始まります。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

Packet Tracer MCP

作者:Jcorderop02バージョン 0.1.1i★ –iパソコンで動く
レジストリ名io.github.Jcorderop02/packet-tracer-mcp

インストール

概要

作者による説明(英語の原文)

MCP server for Cisco Packet Tracer 9 — live IOS, OSPF, BGP, NAT, VLAN, VoIP, QoS, IPv6, wireless.

PopNx MCPの3つの柱

この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: パソコンで動く
  • トランスポート: stdio
  • カテゴリ: チャット・メール

インストール

使っているAIアプリを選んで、設定をコピーしてください。

インストールの前に

必要なもの

  • npmNode.jsのインストール(npxコマンドに必要)

どのアプリを使っていますか?

上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。

Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます

{
  "mcpServers": {
    "packet-tracer": {
      "command": "npx",
      "args": [
        "-y",
        "packet-tracer-mcp"
      ],
      "env": {
        "BRIDGE_PORT": "your-value"
      }
    }
  }
}

ターミナルでこれを実行します

claude mcp add packet-tracer --env BRIDGE_PORT=your-value -- npx -y packet-tracer-mcp

動かす前に、空欄の値を入力してください。

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "packet-tracer": {
      "command": "npx",
      "args": [
        "-y",
        "packet-tracer-mcp"
      ],
      "env": {
        "BRIDGE_PORT": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "packet-tracer": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "packet-tracer-mcp"
      ],
      "env": {
        "BRIDGE_PORT": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。

選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。

自分で入力する値

  • BRIDGE_PORT env
    Port for the internal HTTP bridge that talks to the Packet Tracer 9 webview (default: 54321)

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

できること

パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月8日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント Jcorderop02 で確認済みです

  • … 未チェック

    今もメンテナンスされている

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    ライセンスがある

    このリポジトリはまだGitHubから読み取っていません

  • – 対象外

    エンドポイントが応答する

    これはパソコンで動くため、インターネット上のエンドポイントはありません

  • – 対象外

    OAuthでサインイン

    パソコンで動き、代わりにローカルの設定を使います

  • … 未チェック

    ツールの説明に隠れた指示がない

    パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです

チャット・メールのほかのサーバーとの比較i

  • このカテゴリのほかの1860件のうち0%よりスターが多い
  • このカテゴリのほかの1860件のうち7%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの1860件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

Packet Tracer MCPは安全ですか?

当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。

パソコンで動きますか、それともクラウドですか?

あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は–、最新バージョン(0.1.1)がレジストリに届いたのは6 か月前です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。

代わりに使えるものは?

同じカテゴリには:Vexa, emailmd, MCP WhatsApp Cloud

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Vexa

Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.

作者:Vexa-ai広く使われている★ 29492 か月前更新

クラウドで動く✓ vexa.ai

emailmd

Render markdown into email-safe HTML, lint drafts for deliverability problems, and preview emails.

作者:anypost広く使われている↓ 5342/週★ 138533 日前更新

パソコンでもクラウドでも✓ emailmd.dev

MCP WhatsApp Cloud

MCP server for WhatsApp Cloud API (Meta) — messages, media, and templates via Graph API

作者:codespar初期↓ 63/週★ 2775 か月前更新

パソコンで動く

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

packet-tracer-mcp

Servidor Model Context Protocol para controlar Cisco Packet Tracer 9.0 desde fuera. Una extensión propia se cuelga del editor de PT, abre un bridge HTTP local y desde ahí el servidor MCP llama a la API IPC nativa de PT para crear topologías, configurar routers, lanzar simulaciones, etc. Escrito en TypeScript sobre Bun.

[!WARNING]

Proyecto experimental. Es la versión 0.1.0, hecha en mis ratos

libres como experimento personal. Funciona contra PT 9.0.0.0810 en mi

PC y pasa los smoke tests, pero no la consideres lista para

producción. Espera bugs, cambios de API y cosas que se rompen al

actualizar PT. Si te animas a probarla, abre issues con lo que veas.

Demo acelerada x15: el cliente MCP lanza una receta y el canvas de Packet Tracer 9 se va llenando solo (devices, cableado, configuración).

Autor: Juan Cordero Pascual · Licencia: MIT

Idiomas: español (este archivo) · English


Tabla de contenidos

  • Por qué otro MCP de Packet Tracer
  • Filosofía: canvas-first
  • Requisitos
  • Arranque rápido
  • Conectar un cliente MCP
  • Compilar a binario único
  • Tests
  • Recorrido end-to-end
  • Capacidades
  • Recetas incluidas
  • Configuración
  • Documentación
  • FAQ
  • Estructura del proyecto
  • Estado

Por qué otro MCP de Packet Tracer

Los proyectos para PT 6.x–8.x se apoyaban en librerías JS cargadas por una extensión firmada de terceros. PT 9.0 cerró ese camino: los App Meta Files (.pta) ahora tienen que ir firmados con ECDSA por Cisco, así que ningún proyecto open-source puede entregar uno. La alternativa que queda es hablar con la webview de PT desde fuera, y eso es lo que hace este servidor:

  • Hay una extensión `.pts` propia que se instala desde el menú Extensions de PT. Lo único que hace es arrancar un bucle de polling contra el bridge HTTP local.
  • Cuando el servidor MCP necesita escribir, llama a la API IPC nativa de PT directamente: cosas como ipc.appWindow().getActiveWorkspace().getLogicalWorkspace().addDevice(...) o getDevice(...).getCommandLine().enterCommand(...). Sin librerías intermedias, sin JS opaco copiado de otros sitios.
  • Todo el JS que termina ejecutándose en el Script Engine de PT lo genera este repo. Si quieres saber qué se está mandando, está en src/ipc/.

Filosofía: canvas-first

Otras herramientas mantienen un objeto "plan" en memoria, lo validan y al final lo vuelcan al simulador. Aquí no funciona así:

  • No hay ningún `TopologyPlan` en memoria. Lo que hay en PT es lo que hay; el plan es el canvas.
  • Cada receta vuelve a leer un snapshot del canvas antes de actuar. Si la lanzas dos veces sobre un canvas a medio construir, la segunda vez termina lo que faltaba en lugar de duplicar dispositivos. Sale idempotente sin tener que pensarlo.
  • La validación se hace contra el canvas vivo, no contra una estructura interna. Cuando algo falla (IPs duplicadas, peers en subredes distintas, un router apagado) lo ves directamente en PT, no en un grafo abstracto.
  • La persistencia guarda snapshots, no planes. Volver atrás significa comparar el canvas actual con un dump anterior y ver qué ha cambiado. No hay rehidratación mágica.

Si quieres el detalle, está en docs/ARCHITECTURE.md.


Requisitos

  • Cisco Packet Tracer 9.0 (macOS, Windows o Linux).
  • Bun >=1.2. Con Node solo no vale: el código es TypeScript y se ejecuta directamente con Bun, sin paso previo de compilación.
  • La extensión mcp-bridge.pts instalada en PT. Viene en el repo en extension/dist/.

[!TIP]

¿Por qué Bun y no Node? Bun ejecuta .ts nativamente, arranca en

milisegundos y trae fetch, HTTP y test runner de serie sin instalar

dependencias. Si solo tienes Node, puedes instalar Bun con

curl -fsSL https://bun.sh/install | bash (o brew install bun en

macOS). Convive con Node sin pisarse.


Arranque rápido

git clone https://github.com/jcorderop02/packet-tracer-mcp.git

cd packet-tracer-mcp bun install bun run start # streamable-HTTP en :39001 (default)

o bien:

bun run src/index.ts --stdio # modo stdio para clientes MCP que lo prefieran

En Packet Tracer 9:

  1. Extensions > Scripting > Configure PT Script Modules > Add y selecciona extension/dist/mcp-bridge.pts.
  2. Marca la extensión como activa.
  3. Abre la ventana desde Extensions > MCP Bridge una vez por sesión.

El polling arranca solo en cuanto la ventana se carga. Para comprobar que todo está bien, lanza pt_bridge_status: en menos de un segundo debería responder connected: true.

El proceso completo de instalación está en docs/BOOTSTRAP.md.

El endpoint MCP queda en:

http://127.0.0.1:39001/mcp

[!NOTE]

Por qué `:39001`. PT 9 ya tiene su propio IPC nativo (no

documentado, con handshake firmado por Cisco) escuchando en :39000.

Para no chocar y dejar claro que el servidor MCP es algo aparte, este

escucha en :39001. Si te molesta, cámbialo con la variable de

entorno PACKETTRACER_MCP_PORT.

Conectar un cliente MCP

Claude Code (CLI, recomendado)

Una sola línea, sin tocar JSON:

claude mcp add --transport http packet-tracer http://127.0.0.1:39001/mcp

Verifica con /mcp dentro de Claude Code: debe aparecer packet-tracer con sus 57 tools.

Claude Desktop

Edita ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) o el equivalente en tu SO y reinicia Claude Desktop:

{

"mcpServers": { "packet-tracer": { "url": "http://127.0.0.1:39001/mcp" } } }

</details>

Cursor

Settings → MCP → Add new MCP server → pega la URL http://127.0.0.1:39001/mcp con transporte http.

VS Code (Continue / Cline)

En el config.json del cliente:

{

"mcpServers": { "packet-tracer": { "url": "http://127.0.0.1:39001/mcp" } } }

</details>

Gemini CLI

Edita ~/.gemini/settings.json:

{

"mcpServers": { "packet-tracer": { "httpUrl": "http://127.0.0.1:39001/mcp" } } }

Verifica con /mcp list.

Codex CLI

Edita ~/.codex/config.toml:

[mcp_servers.packet-tracer]

url = "http://127.0.0.1:39001/mcp"

</details>

Smoke con curl (sin cliente)

Para confirmar que el server responde antes de configurar nada:

curl -sS -X POST http://127.0.0.1:39001/mcp \

-H "Content-Type: application/json" \ -H "Accept: application/json, text/event-stream" \ -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"smoke","version":"1.0"}}}'

Debe devolver un result con serverInfo.name = "packet-tracer-mcp". Un segundo POST con "method":"tools/list" devuelve las 57 tools con su inputSchema.

Compilar a binario único
bun run build

./dist/packet-tracer-mcp

Tests
bun test

La suite unitaria cubre la aritmética de subnetting, la inspección del canvas, el parser de snapshots, los diffs, la validación de blueprints y los builders CLI de cada receta. No hace falta PT corriendo para ejecutarla.

Recorrido end-to-end

Con el bridge conectado (pt_bridge_status → connected: true), una sesión completa más o menos se ve así:

1. pt_list_recipes                          # confirmar lo disponible
  1. pt_forecast recipe='chain' params={routers:3, pcsPerLan:2}

estimación dry-run, ningún cambio

  1. pt_cook_topology recipe='chain' params={routers:3, pcsPerLan:2, routing:'ospf'}

construye el lab; idempotente

  1. pt_inspect_canvas # findings: IPs duplicadas, etc.
  2. pt_explain_canvas # narración legible
  3. pt_save_snapshot name='chain-baseline' # captura T-0
  4. pt_run_cli device='R1' command='show ip route'

comprobación rápida desde el CLI

  1. pt_diff_snapshots before='chain-baseline'

qué ha cambiado desde T-0

  1. pt_save_pkt path='/abs/path/lab.pkt' # guardar como .pkt nativo

Si algo se ha torcido por el camino, pt_mend_canvas aplica reparaciones conservadoras (encender dispositivos que ya están cableados pero apagados, ese tipo de cosas) y avisa de lo que no se atreve a tocar.


Capacidades

packet-tracer-mcp expone 57 herramientas MCP agrupadas por dominio.

Bridge y diagnóstico

pt_bridge_status, pt_ping, pt_clear_canvas.

Catálogo y descubrimiento

pt_list_devices, pt_list_modules, pt_list_recipes, pt_list_snapshots, pt_get_device_details.

Inspección del workspace en vivo (read-only)

pt_query_topology, pt_inspect_canvas, pt_explain_canvas, pt_forecast (dry-run de receta), pt_generate_configs (genera el IOS CLI offline de una receta sin tocar PT — útil para documentación, aulas o reproducir el lab en hardware real), pt_inspect_ports (estado per-puerto: link/up/proto, MAC, IP/máscara, wireless), pt_read_vlans (base VLAN viva por switch), pt_read_acl (ACLs configuradas leídas vía AclProcess), pt_show_bgp_routes (parsea show ip bgp en filas estructuradas), pt_read_project_metadata (descripción/versión/filename del .pkt actual).

Edición primitiva del canvas

pt_add_device, pt_add_module, pt_create_link, pt_delete_device, pt_delete_link, pt_move_device, pt_auto_layout (recoloca todo el canvas en una rejilla por capas, detecta routers de tránsito y los baja a un segundo piso), pt_rename_device, pt_set_pc, pt_set_device_power (toggle Device.setPower idempotente), pt_add_canvas_annotation (notas/líneas/círculos), pt_manage_clusters (lista/elimina/disuelve clusters lógicos), pt_send_raw (vía de escape: ejecuta JS arbitrario en el Script Engine).

Edición a nivel de receta (orquestación)

`

冒頭だけを表示しています。続きはリポジトリで読めます

PopNxに聞く