AI / MCP¶
The VSIX exposes eve-iac tools to Copilot Agent, Cursor Agent, Claude Code, and Codex. You talk in natural language. The model calls tools. You should not type /eve_iac_status as a user command.
One owner window¶
Copilot and Cursor attach over stdio in the owner window. Do not create .vscode/mcp.json or .cursor/mcp.json.
Claude Code: the owner window rewrites project .mcp.json at startup when the workspace has IaC/ or the file already lists eve_iac. EVE IaC: Configure Claude Code does the same write on demand. Codex: EVE IaC: Configure Codex. Those files do not store the EVE password. The sidebar shows Configured when eve_iac is already in the project file or the user config, and hides Configure until it is not.
The stdio process has no EVE credentials. Tools run in the owner VSIX, which already has Configure Connection.
If tools are missing¶
This IDE agent is not attached to the eve-iac MCP bridge. Use GitHub Copilot Agent or Cursor Agent with the eve-iac extension, or Configure Connection in the sidebar.
If a tool returns eve_iac_initializing, wait and retry. That is startup, not a missing password.
If it returns authentication_required, use Configure Connection.
If it returns tls_untrusted or tls_pin_mismatch, Trust the fingerprint in Configure Connection. Do not treat that as a missing password.
Safety the model must not skip¶
- Destroy and prune need
confirm=trueand an explicit user request. - Wipe needs
confirm=trueunless Live config apply is on for that lab. Live config apply is not stop consent. eve_iac_export_configneedsconfirm=trueeven when Live config apply is on. It copies the running NOS configuration into an existing startup-config set and does not writetopology.ymlorconfigs/**. An unknown set is not created. Pull from EVE is a later, separate call.- Reconcile
requires_stopneedsconfirm=trueand an explicit user request. The VSIX forwards last same-directionplan_identity; the model must not invent it. - Never mutate
source_lab. - Never invent interface names; the model must call the interfaces tool first.
- AI MUST NOT filesystem-read or filesystem-write
topology.yml,eve-presentation.yml, orconfigs/**. Useeve_iac_public/eve_iac_editandeve_iac_config/eve_iac_config_edit. Humans may still edit those files in the VS Code editor.
Selecting a lab in the tree does not start or stop nodes.
Console tools¶
MCP exposes bounded console operations: exec, exec many, history, wait, run, and session listing. There is no MCP interactive terminal — Open Console in the sidebar is the human path. eve_iac_console_exec is the default for one normal command, including show, ping, and traceroute. A slow command stays on exec; raise timeout_ms (default 10 s, max 60 s). The agent joins or reopens the Hub and completes when the prompt returns. eve_iac_console_sessions is optional. Pass an explicit session_id when a human terminal and the model must share that same lease. eve_iac_console_run is a genuine intermediate dialogue, not the ping path and not the recovery path after an exec timeout.
Details: Console MCP. Shared session model: Console sessions.
What to ask¶
Ask for status, validate, plan, deploy, consoles, live link delay/suspend, or “why is BGP down” after the lab is running. A new lab still needs you to Create or Import first.