cml-admin
SKILL.md
CML Administration
Manage CML server administration — users, groups, system information, licensing status, and resource monitoring. This skill covers the operational management of the CML platform itself.
MCP Server
- Command:
cml-mcp(pip-installed, stdio transport) - Requires:
CML_URL,CML_USERNAME,CML_PASSWORDenvironment variables
Available Tools
User Management
| Tool | Parameters | What It Does |
|---|---|---|
get_users |
none | List all CML users |
create_user |
username, password, fullname?, email?, admin? |
Create a new CML user |
get_user |
user_id/username |
Get user details (labs, resource usage) |
update_user |
user_id/username, fields to update |
Update user properties |
delete_user |
user_id/username |
Delete a CML user |
Group Management
| Tool | Parameters | What It Does |
|---|---|---|
get_groups |
none | List all CML groups |
create_group |
name, description?, members? |
Create a new group |
update_group |
group_id/name, fields to update |
Update group properties |
delete_group |
group_id/name |
Delete a group |
System Information
| Tool | Parameters | What It Does |
|---|---|---|
get_system_info |
none | CML version, uptime, resource usage (CPU, RAM, disk) |
get_node_defs |
none | List all available node definitions and their resource requirements |
get_licensing |
none | License status, node count, expiration |
get_resource_usage |
none | Current resource utilization across all labs |
Workflow: Onboard a New Lab User
When an admin wants to add a new team member:
- Check existing users:
get_usersto see current user list - Create the user:
create_userwith their credentials - Add to group (optional):
update_groupto add user to a team group - Verify:
get_userto confirm creation - Share credentials: Report the username and CML URL to the admin (never share the password in Slack)
Workflow: Resource Capacity Check
Before building a large lab:
- Check system resources:
get_system_infofor CPU, RAM, disk - Check licensing:
get_licensingfor available node count - Check node definitions:
get_node_defsfor per-node resource requirements - Calculate: Does the planned lab fit within available resources?
- Report: "You have X GB RAM free, Y CPU cores available, Z node licenses remaining. Your planned lab needs A GB RAM and B nodes."
Workflow: System Health Report
For CML server health monitoring:
- System info:
get_system_info— version, uptime, resource usage - Licensing:
get_licensing— license status and node count - Resource usage:
get_resource_usage— breakdown by lab/user - Active labs:
get_labs(from cml-lab-lifecycle) — list running labs - Generate report: Summary of CML platform health
Resource Planning Guide
Typical per-node resource requirements:
| Node Type | vCPUs | RAM | Disk |
|---|---|---|---|
| IOSv | 1 | 512 MB | 2 GB |
| IOSv L2 | 1 | 768 MB | 2 GB |
| CSR1000v / Cat8000v | 1 | 3 GB | 8 GB |
| NX-OS 9000v | 2 | 6 GB | 8 GB |
| IOS-XR 9000v | 2 | 8 GB | 16 GB |
| ASAv | 1 | 2 GB | 8 GB |
| Ubuntu Server | 1 | 512 MB | 8 GB |
| Unmanaged Switch | 0 | 0 | 0 |
| External Connector | 0 | 0 | 0 |
Rule of thumb: Plan for the CML host to have at least 2x the total RAM needed by all concurrent labs, plus 8 GB for the CML OS itself.
User Roles
| Role | Capabilities |
|---|---|
| Admin | Full access: create/delete users, manage all labs, system settings |
| User | Create/manage own labs, view shared labs |
Workflow: Audit CML Usage
For tracking who's using what:
- List all users:
get_users - For each user:
get_userto see their labs and resource usage - List all labs:
get_labswith ownership info - Check resource usage:
get_resource_usagefor allocation breakdown - Report: Table of users, their labs, running state, and resource consumption
- Identify stale labs: Labs that have been stopped for days — candidates for cleanup
Important Rules
- Admin operations require admin credentials — user management needs admin-level CML access
- Never share passwords in Slack — report usernames only, instruct admin to share credentials securely
- Check resources before big labs — don't let users build labs that exceed server capacity
- Monitor licensing — CML has node count limits; stay within license boundaries
- Record in GAIT — log all admin operations for audit trail
Environment Variables
CML_URL— CML server URLCML_USERNAME— CML username (admin for full access)CML_PASSWORD— CML passwordCML_VERIFY_SSL— Verify SSL certificate (true/false)
Weekly Installs
2
Repository
automateyournet…/netclawGitHub Stars
286
First Seen
12 days ago
Security Audits
Installed on
mcpjam2
claude-code2
replit2
junie2
windsurf2
zencoder2