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
- 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/higebu/cml2-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server