Adapters
adapters/mcp/ MCP protocol layer — tool and resource registrations that map MCP calls to use cases.
Features
36 tools, 5 resources, and a clean architecture — all verified against Packet Tracer 8.2+.
MCP Tools
pt_list_devices List all 74 device models with their exact ports and ~100 aliases pt_get_device_details Ports and details for one model (accepts a name or alias) pt_list_templates List the 9 topology templates and their defaults pt_list_modules List expansion modules (filter by router_model or category) pt_list_projects List saved projects under the exports directory pt_plan_topology Generate a full TopologyPlan (devices, links, IPs, routing, DHCP) pt_estimate_plan Fast dry-run: device/link/subnet counts and complexity pt_validate_plan Validate a plan; returns typed errors and warnings pt_fix_plan Auto-fix a plan (cables, port reassignment, model upgrades) pt_explain_plan Explain the plan’s design choices in natural language pt_generate_script Emit the topology build script (PTBuilder-style JavaScript) pt_generate_configs Emit IOS CLI configs for every router and switch + host settings pt_export Write script, per-device configs and plan JSON to projects/<name>/ pt_load_project Load a previously saved project’s plan pt_full_build One-shot pipeline: plan → validate → generate → explain → (deploy) pt_deploy Copy the build script to the clipboard + export files pt_bridge_status Check the HTTP bridge and whether PT is connected pt_live_deploy Stream a plan into a running PT (devices, links, configs) pt_query_topology List devices currently in PT with ports and per-port IPs pt_export_topology Full snapshot: positions, per-interface IPs, links, cable info pt_send_raw Run arbitrary JavaScript in PT’s Script Engine pt_add_device Add one device (validates name, model, no duplicates) pt_add_link Link two devices; validates free ports; infers cable if omitted pt_delete_link Remove the link on a given interface pt_delete_device Delete a device from the topology pt_rename_device Rename an existing device pt_move_device Move a device to new canvas coordinates pt_set_port Low-level port attributes (bandwidth, duplex, description, MAC, power) pt_add_module Install one expansion module (auto power-cycle) pt_install_modules_batch Install several modules in one power-cycle pt_apply_nat Apply NAT/PAT (static / dynamic / pat) on a live router pt_remove_nat Remove a NAT/PAT configuration pt_apply_acl Build, validate and apply a standard/extended/named ACL via CLI pt_apply_acl_object Apply an ACL via PT’s ACL object API (faster, fewer popups) pt_remove_acl Remove an ACL (and unbind it) via CLI pt_remove_acl_object Remove an ACL via the object API MCP Resources
pt://catalog/devices Complete device catalog with models, types, and verified port definitions
pt://catalog/cables Cable types and rules for correct cabling between device categories
pt://catalog/aliases Model aliases to simplify device references
pt://catalog/templates Topology templates with predefined configurations
pt://capabilities Full server capabilities manifest
Architecture
Each layer has a single job, a visible boundary, and a clean handoff to the next one.
adapters/mcp/ MCP protocol layer — tool and resource registrations that map MCP calls to use cases.
application/ Use cases (plan, validate, generate, export, deploy) with DTOs for clean request/response boundaries.
domain/ Core business logic — orchestrator, IP planner, validator, auto-fixer, explainer, estimator, and validation rules.
infrastructure/ External concerns — device catalog, build-script & CLI generators, HTTP bridge, live executor, and project persistence.
shared/ Enums, constants, and utility functions used across all layers.
Tech Stack
Browse the full tool reference on the docs site, or start building topologies with AI.