cml2-mcp
Provides tools to interact with Cisco CML2 (Cisco Modeling Labs) API, enabling network simulation management via generic REST calls.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@cml2-mcpRead the OpenAPI spec and list all labs."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
cml2-mcp
Thin MCP server for Cisco CML2.
It deliberately avoids mirroring the CML API as typed (Pydantic) tools — every prior generation that did so broke when the controller shipped a schema change. Instead this server exposes only:
cml_openapi(refresh=False)— fetch CML's liveopenapi.json(cached 24 h).cml_api(method, path, body=None)— generic authenticated REST call after/api/v0. Re-authenticates and retries once on HTTP 401.Resource
cml://openapi.json— same content ascml_openapi().
The model is expected to read the OpenAPI spec first and then craft calls.
Configuration
Required environment:
Var | Example |
|
|
|
|
|
|
Optional:
CML_VERIFY_SSL=true— verify TLS (default: off; CML often uses self-signed certs).CML_CACHE_DIR— token / openapi cache directory (default:~/.cache/cml/).
The token is written to $CML_CACHE_DIR/token with mode 0600.
Related MCP server: OpenAPI MCP Server
Running
With uv directly from the source tree:
uv run cml2-mcpAfter publishing to PyPI (or via uv tool install .):
uvx cml2-mcpClaude Desktop / Claude Code registration
Wrap the command so the password is fetched from a secure store rather than appearing in plain text. Example with macOS Keychain:
{
"mcpServers": {
"cml2": {
"command": "sh",
"args": [
"-c",
"CML_PASSWORD=$(security find-generic-password -a <account> -s <service> -w) exec uvx cml2-mcp"
],
"env": {
"CML_URL": "https://cml.example.net/",
"CML_USERNAME": "admin"
}
}
}
}For Claude Code:
claude mcp add cml2 -- sh -c 'CML_PASSWORD=$(security find-generic-password -a <account> -s <service> -w) exec uvx cml2-mcp'(Set CML_URL / CML_USERNAME in the same env or via claude mcp add ... -e KEY=VAL.)
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Tools
Latest Blog Posts
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/higebu/cml2-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server