Setting Up Agent MCP
The Rogue Arena MCP server is an authenticated proxy that gives your AI agent direct access to your Rogue Arena account. Once it’s set up, your agent can read and change canvases, manage deployments, build curriculum, and develop plugins from your terminal.
It’s a standard MCP server, so it works with any agent that supports MCP: Claude Code, OpenAI Codex, Grok, and more. The installer sets up Claude Code and Codex for you; other agents take one line of config.
Source and full details: github.com/rogue-labs-cyber/rogue-arena-mcp
Prerequisites
Section titled “Prerequisites”- Node.js 20.9+
- Git
- An AI agent that supports MCP. For automatic setup, install Claude Code or OpenAI Codex first. The installer won’t install an agent for you.
Install
Section titled “Install”macOS / Linux:
curl -fsSL https://raw.githubusercontent.com/rogue-labs-cyber/rogue-arena-mcp/main/install.sh | shWindows (PowerShell):
irm https://raw.githubusercontent.com/rogue-labs-cyber/rogue-arena-mcp/main/install.ps1 | iexThe installer builds the MCP server and installs the rogue-mcp command. Then it looks for Claude Code and Codex and sets up whichever it finds: it registers the MCP server with each one and installs the skills.
Authenticate
Section titled “Authenticate”rogue-mcp loginA browser window opens for you to sign in with your Rogue Arena account. Your token is stored in your OS keychain and refreshes automatically for 31 days. One login covers every agent on the machine.
Restart your agent after logging in. Until you log in, the server only offers a single rogue_auth_status tool.
Verify
Section titled “Verify”rogue-mcp whoamiIt prints your username, the hub, the profile, where your credentials are stored, and when your session expires.
Other Agents
Section titled “Other Agents”For any other MCP-capable agent, such as Grok, run the installer and log in as above, then add the server to your agent’s MCP settings. It runs the command rogue-mcp serve. Most agents accept a config like this; check your agent’s docs for where it goes:
{ "mcpServers": { "rogue-arena": { "command": "rogue-mcp", "args": ["serve"] } }}Your agent gets every Rogue Arena tool. The skills below are set up automatically for Claude Code and Codex; with other agents, describe what you want and the agent works from the tools directly.
What Gets Installed
Section titled “What Gets Installed”MCP Server
Section titled “MCP Server”The rogue-mcp command connects your agent to arena.roguelabs.io and passes every tool call through with your sign-in. Your agent gets tools for:
- Reading and changing canvases (machines, VLANs, plugins, forests)
- Managing deployments (start, monitor, debug)
- Uploading and downloading files to VMs
- Working with curriculum content
- Developing and testing Ansible plugins
Upload and download tools can read and write files on your computer. The server blocks sensitive folders such as ~/.ssh, ~/.aws, and ~/.gnupg.
Four Skills
Section titled “Four Skills”Skills teach your agent the Rogue Arena workflows.
| Skill | What it unlocks |
|---|---|
| rogue-build-scenario | Design and build lab scenarios: brainstorm, implement, validate, and debug |
| rogue-active-deployment | Operate on running deployments: run commands, browse files, test payloads |
| rogue-plugin-dev | Develop Ansible plugins: brainstorm, write YAML, manage vaults |
| rogue-curriculum-builder | Build course content: chapters, CTF nodes, media, quiz questions |
Running a skill. Run a skill by name. In Claude Code, type /rogue-active-deployment; that’s the form these docs show. In Codex, type $rogue-active-deployment, or /skills to browse them. You can also describe what you want and name the skill in the same message. Claude Code doesn’t start these skills on its own.
CLI Reference
Section titled “CLI Reference”rogue-mcp login # Sign in to Rogue Arena (shared by every agent)rogue-mcp logout # Sign out and revoke the tokenrogue-mcp whoami # Show sign-in, hub, profile, credential store, and session expiryrogue-mcp serve # Start the MCP server (your agent runs this for you)Environment Variables
Section titled “Environment Variables”| Variable | Default | Description |
|---|---|---|
ROGUE_HUB_URL | https://arena.roguelabs.io | Hub API URL |
ROGUE_VAULTS_URL | Same as hub | Vaults service URL |
ROGUE_CLIENT_ID | rogue-mcp | Keycloak client ID |
ROGUE_DISABLE_UPDATE_CHECK | unset | Set to 1 to silence the update notice in Claude Code |
ROGUE_PROFILE | default | Profile name for side-by-side installs, such as a dev profile. Each profile keeps its own sign-in |
ROGUE_CREDENTIALS_FILE | unset | Absolute path to a credentials file to use instead of the OS keychain, for headless machines. The file is written with 0600 permissions |
Updating
Section titled “Updating”Run the installer again. It refreshes the MCP server, the rogue-mcp command, and the skills for every agent it finds, and keeps your sign-in. Claude Code also shows a notice when an update is available.
Uninstall
Section titled “Uninstall”rogue-mcp logoutclaude mcp remove --scope user rogue-arena # Claude Codecodex mcp remove rogue-arena # Codexnpm uninstall -g rogue-arena-mcprm -rf ~/.rogue-arena-mcp ~/.claude/plugins/cache/rogue-arenarm -rf ~/.codex/skills/architect-* ~/.codex/skills/rogue-*For another agent, remove the rogue-arena entry from its MCP settings.