GNS3 Network Simulator MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GNS3_PASSWORD | No | Password for GNS3 server authentication | |
| GNS3_USERNAME | No | Username for GNS3 server authentication | |
| GNS3_MCP_DEBUG | No | Enable debug logging mode | |
| GNS3_SERVER_URL | No | The URL of the GNS3 server | http://localhost:3080 |
| GNS3_VERIFY_SSL | No | Whether to verify SSL certificates for GNS3 server connections | false |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| gns3_get_server_infoB | Get GNS3 server version and information. Returns server version, supported features, and system information. |
| gns3_list_computesC | List all available compute servers (local, VMs, remote). Shows compute ID, name, protocol, host, port, and status. |
| gns3_list_projectsC | List all projects on the GNS3 server with detailed status. Shows project name, ID, node/link counts, and status. |
| gns3_create_projectB | Create a new GNS3 project. Args: name: Project name auto_close: Automatically close when server stops auto_open: Automatically open when server starts auto_start: Automatically start all nodes when opened path: Custom path for project files |
| gns3_get_projectC | Get detailed information about a specific project. Returns complete project configuration and statistics. |
| gns3_update_projectC | Update project settings. Only specified parameters will be updated. |
| gns3_open_projectC | Open an existing GNS3 project for editing. |
| gns3_close_projectC | Close an open project. All nodes will be stopped. |
| gns3_delete_projectA | Permanently delete a project and all its files. WARNING: This action cannot be undone! |
| gns3_duplicate_projectB | Duplicate an existing project with a new name. Creates an exact copy of the project including all nodes and configurations. |
| gns3_list_nodesB | List all nodes (devices) in a project. Shows node name, type, status, console port, and position. |
| gns3_add_nodeB | Add a network device/node to a project using a template. Args: project_id: ID of the project node_name: Name for the new node template_id: Template ID (use gns3_list_templates to get available templates) x, y: Position coordinates on the canvas compute_id: Compute server ID (default: "local") |
| gns3_get_nodeC | Get detailed information about a specific node. Returns complete node configuration including ports and properties. |
| gns3_update_nodeB | Update node settings and properties. Args: name: New node name x, y: New position coordinates properties: Device-specific properties (RAM, CPU, interfaces, etc.) |
| gns3_delete_nodeC | Delete a node from the project. All links connected to this node will also be deleted. |
| gns3_start_nodeC | Start a specific node. |
| gns3_stop_nodeC | Stop a specific node. |
| gns3_suspend_nodeB | Suspend a node (pause execution, save state). |
| gns3_reload_nodeC | Reload a node (restart without stopping). |
| gns3_duplicate_nodeC | Duplicate a node with the same configuration. The duplicate will be placed at the specified offset from the original. |
| gns3_start_all_nodesC | Start all nodes in a project. |
| gns3_stop_all_nodesC | Stop all nodes in a project. |
| gns3_list_linksC | List all links (connections) in a project. Shows link endpoints, ports, and status. |
| gns3_add_linkC | Create a link between two nodes. Args: node_a_id, node_b_id: Node IDs to connect adapter_a, port_a: Adapter and port number on node A adapter_b, port_b: Adapter and port number on node B |
| gns3_delete_linkC | Delete a link between nodes. |
| gns3_get_topologyC | Get complete network topology for a project. Returns all nodes, links, and project information in one call. |
| gns3_send_console_commandsB | Send commands to a node's console via Telnet. Args: commands: List of commands to execute wait_for_boot: Wait for device to boot before sending commands boot_timeout: Maximum time to wait for boot (seconds) enter_config_mode: Automatically enter config mode (Cisco) save_config: Save configuration after commands (Cisco) enable_password: Enable password if required |
| gns3_get_node_configB | Get device configuration via console. Args: config_type: "running" or "startup" (Cisco-style devices) |
| gns3_apply_config_templateA | Apply a pre-built configuration template to a device. Supported templates:
Args: template_name: Name of configuration template template_params: Parameters for the template (varies by template) save_config: Save configuration after applying |
| gns3_list_templatesC | List all available device templates. Templates are used to create new nodes quickly. |
| gns3_list_appliancesC | List all available appliances. Appliances are pre-configured device definitions that can be installed. |
| gns3_list_snapshotsC | List all snapshots for a project. |
| gns3_create_snapshotC | Create a snapshot (backup) of a project. Captures current state of all nodes and configuration. |
| gns3_restore_snapshotA | Restore a project from a snapshot. WARNING: Current project state will be lost! |
| gns3_delete_snapshotC | Delete a snapshot permanently. |
| gns3_start_captureC | Start packet capture on a link. Captured packets can be analyzed with Wireshark. Args: capture_file_name: Name for the capture file (without .pcap extension) data_link_type: Data link layer type (default: Ethernet) |
| gns3_stop_captureC | Stop packet capture on a link. |
| gns3_add_text_annotationC | Add text annotation to the topology. Useful for documenting networks and adding labels. |
| gns3_add_shapeC | Add a shape (rectangle or ellipse) to the topology. Args: shape_type: "rectangle" or "ellipse" color: Border color (hex format) fill_color: Fill color (hex format, optional) |
| gns3_get_idle_pc_valuesB | Get idle-pc values for Dynamips routers to reduce CPU usage. Only works with Dynamips/IOS routers. Args: auto_compute: Automatically compute best idle-pc value |
| gns3_bulk_configure_nodesC | Configure multiple nodes in one operation. Args: configurations: List of dicts with keys: - node_id: Node to configure - commands: List of commands to send - save_config: Whether to save (optional, default False) |
| gns3_validate_topologyC | Validate network topology for common issues. Checks for disconnected nodes, missing links, and configuration problems. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
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/Wael-Rd/gns3-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server