Vexa
Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.
제작자가 쓴 설명(영어 원문)
MCP server for Cisco Packet Tracer 9 — live IOS, OSPF, BGP, NAT, VLAN, VoIP, QoS, IPv6, wireless.
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
BRIDGE_PORT필요한 것
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
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/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"packet-tracer": {
"command": "npx",
"args": [
"-y",
"packet-tracer-mcp"
],
"env": {
"BRIDGE_PORT": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"packet-tracer": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"packet-tracer-mcp"
],
"env": {
"BRIDGE_PORT": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
BRIDGE_PORT env이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 8일 점검
레지스트리 이름이 GitHub 계정 Jcorderop02 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 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 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.
Render markdown into email-safe HTML, lint drafts for deliverability problems, and preview emails.
MCP server for WhatsApp Cloud API (Meta) — messages, media, and templates via Graph API
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
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
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:
ipc.appWindow().getActiveWorkspace().getLogicalWorkspace().addDevice(...) o getDevice(...).getCommandLine().enterCommand(...). Sin librerías intermedias, sin JS opaco copiado de otros sitios.src/ipc/.Otras herramientas mantienen un objeto "plan" en memoria, lo validan y al final lo vuelcan al simulador. Aquí no funciona así:
Si quieres el detalle, está en docs/ARCHITECTURE.md.
>=1.2. Con Node solo no vale: el código es TypeScript y se ejecuta directamente con Bun, sin paso previo de compilación.mcp-bridge.pts instalada en PT. Viene en el repo en extension/dist/.[!TIP]
¿Por qué Bun y no Node? Bun ejecuta
.tsnativamente, 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(obrew install bunen
macOS). Convive con Node sin pisarse.
git clone https://github.com/jcorderop02/packet-tracer-mcp.git
cd packet-tracer-mcp bun install bun run start # streamable-HTTP en :39001 (default)
bun run src/index.ts --stdio # modo stdio para clientes MCP que lo prefieran
En Packet Tracer 9:
Extensions > Scripting > Configure PT Script Modules > Add y selecciona extension/dist/mcp-bridge.pts.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.
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.
bun run build
./dist/packet-tracer-mcp
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.
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
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.
packet-tracer-mcp expone 57 herramientas MCP agrupadas por dominio.
pt_bridge_status, pt_ping, pt_clear_canvas.
pt_list_devices, pt_list_modules, pt_list_recipes, pt_list_snapshots, pt_get_device_details.
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).
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).
`
앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요