Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Cisco CML lab lifecycle management — create, start, stop, wipe, delete, clone, import/export labs. Use when building a network lab, starting or stopping a CML lab, cloning a topology, or importing lab YAML files.
.claude/skills/automateyournetwork-cml-lab-lifecycle/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-05 | ✗→✓ | ▲ Improved | 74% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 58% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 73% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 2% | 0% |
| case-12 | ✗→✓ | ▲ Improved | 37% | 0% |
cml-mcp (pip-installed, stdio transport)CML_URL, CML_USERNAME, CML_PASSWORD environment variablesCML_VERIFY_SSL (default: true)| Tool | Parameters | What It Does | |------|-----------|-------------| | create_lab | title | Create a new empty lab with a title | | get_lab | lab_id or lab_title | Get lab details (state, node count, link count) | | get_labs | none | List all labs on the CML server | | start_lab | lab_id or lab_title | Start all nodes in a lab (boot the topology) | | stop_lab | lab_id or lab_title | Stop all nodes in a lab (graceful shutdown) | | wipe_lab | lab_id or lab_title | Wipe lab node configurations (reset to factory) | | delete_lab | lab_id or lab_title | Delete a lab permanently |
| Tool | Parameters | What It Does | |------|-----------|-------------| | import_lab | topology (YAML string) | Import a lab from CML topology YAML | | export_lab | lab_id or lab_title | Export a lab as CML topology YAML | | clone_lab | lab_id or lab_title | Clone an existing lab (deep copy) | | download_lab_configs | lab_id or lab_title | Download all node configs from a running lab |
When a user says something like "build me a 3-router OSPF lab" in Slack:
create_lab with a descriptive titlestart_lab to boot everything"Build me a 3-router OSPF lab" → create_lab "OSPF Lab - 3 Routers" → create_node x3 (IOSv: R1, R2, R3) → create_interface + create_link (R1-R2, R2-R3, R1-R3 full mesh) → set_node_config for each (OSPF area 0, loopbacks, point-to-point links) → start_lab → execute_command: "show ip ospf neighbor" on each router → Report: "Lab ready! R1, R2, R3 all have FULL OSPF adjacencies."
"Add a 4th router to the OSPF lab" → stop_lab (topology changes require stopped state) → create_node R4 (IOSv) → create_interface + create_link (R4 to R2 and R3) → set_node_config for R4 (OSPF area 0) → Update R2 and R3 configs if needed → start_lab → Verify all 4 routers have adjacencies
"Create a lab from this YAML topology" → import_lab with the provided YAML → start_lab → Report node count, link count, state
"Clone the OSPF lab and add BGP peering" → clone_lab "OSPF Lab - 3 Routers" → "OSPF+BGP Lab" → Modify configs to add BGP router stanzas → start_lab → Verify both OSPF and BGP adjacencies
When a user is done with a lab:
stop_lab — graceful shutdown of all nodesexport_lab)wipe_lab to reset node configs (if reusing later)delete_lab to free CML resourcesWhen a user wants to experiment with a variant of an existing lab:
clone_lab creates a deep copystart_lab on the new copyWhen a user wants to share a lab topology:
export_lab returns CML YAML topologyLabs go through these states:
| State | Meaning | |-------|---------| | DEFINED_ON_CORE | Lab exists but no nodes are running | | STARTED | All (or some) nodes are booting/running | | STOPPED | All nodes have been shut down | | BOOTED | All nodes have finished booting |
"Create a CCIE routing lab with:
- 4 x IOSv routers (R1-R4)
- 2 x IOSv L2 switches (SW1-SW2)
- Full mesh between R1-R4
- SW1 connecting R1 and R2, SW2 connecting R3 and R4""Build a DC lab:
- 2 x NX-OS spines
- 4 x NX-OS leaves
- 1 x external router (IOSv)
- Spine-leaf full mesh, external router to both spines""Create an SP lab:
- 4 x IOS-XR routers (PE1, PE2, P1, P2)
- 2 x IOSv CE routers
- PE-P full mesh, CE1 to PE1, CE2 to PE2"get_labs first to see what already exists — avoid duplicate lab namesCML_URL — CML server URL (e.g., https://cml.example.com)CML_USERNAME — CML usernameCML_PASSWORD — CML passwordCML_VERIFY_SSL — Verify SSL certificate (true/false)Other measured skills in the registry, with their headline benchmark lift.