Arcane MCP
About
MCP Server for interacting with the Arcane API
Details
- Author
- mikecase
- Categories
- Productivity, API
Jump to
Setup
Install Arcane MCP in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/mikecase/arcane-mcp
Follow the installation instructions in the repository README, then restart your MCP client.
An MCP server that exposesArcaneDocker management capabilities to AI agents via the Model Context Protocol. Built with FastMCP.
Covers the core Docker management API: containers, images, volumes, networks, Compose projects, registries, vulnerability scanning, port mappings, webhooks, system management, updater, activities/events, and environment management.
Not on PyPI. Install directly from GitHub:
# pip pip install git+https://github.com/MikeCase/arcane-mcp.git # uv uv tool install git+https://github.com/MikeCase/arcane-mcp.git # or clone and install locally git clone https://github.com/MikeCase/arcane-mcp.git cd arcane-mcp uv sync
Set these environment variables (or put them in a.envfile in the working directory):
ARCANE_API_KEY=arc_your_api_key_here ARCANE_BASE_URL=http://localhost:3552
{ "mcp": { "arcane-docker": { "type": "local", "command": ["arcane-mcp"], "env": { "ARCANE_API_KEY": "arc_your_key_here", "ARCANE_BASE_URL": "http://localhost:3552" } } } }
Or set environment variables globally and omit them from the config.
list_containers, inspect_container, create_container, start_container, stop_container, restart_container, kill_container, pause_container, unpause_container, remove_container, redeploy_container, commit_container, update_container, set_container_auto_update, exec_in_container, get_container_logs, get_container_stats, get_container_counts
list_images, inspect_image, pull_image, remove_image, tag_image, prune_images, get_image_counts, build_image, search_images, upload_image, get_image_history, get_image_export, get_image_attestations, scan_image_vulnerabilities, get_image_vulnerabilities, get_vulnerability_summary, check_image_update, check_all_image_updates, get_image_update_summary
list_volumes, create_volume, inspect_volume, remove_volume, prune_volumes, get_volume_counts, get_volume_sizes, get_volume_usage, list_volume_backups, create_volume_backup, restore_volume_backup, delete_volume_backup, download_volume_backup, browse_volume, read_volume_file, create_volume_directory, upload_to_volume, delete_volume_file
list_projects, get_project, deploy_project, redeploy_project, remove_project, update_project, get_project_counts, project_down, restart_project, build_project, archive_project, unarchive_project, pull_project_images, get_project_compose, get_project_file, update_project_services, get_project_runtime
list_networks, create_network, inspect_network, remove_network, connect_container_to_network, disconnect_container_from_network, prune_networks, get_network_counts, get_network_topology
list_environments, get_environment, create_environment, update_environment, remove_environment
get_docker_info, get_docker_version, prune_system, get_system_health, check_system_upgrade, trigger_upgrade, start_all_containers, start_stopped_containers, stop_all_containers
list_activities, get_activity, cancel_activity, clear_activity_history, list_events, get_environment_events, delete_event
list_registries, create_registry, get_registry, update_registry, delete_registry, test_registry
get_vulnerability_summary_all, list_all_vulnerabilities, ignore_vulnerability, list_ignored_vulnerabilities, unignore_vulnerability, get_scanner_status
trigger_webhook, list_webhooks, create_webhook, update_webhook, delete_webhook
run_updater, get_updater_status, get_updater_history
All resource tools acceptenv_id: str = "0"to target a specific Arcane environment (local Docker is "0", remote agents use UUIDs). Remote agent operations can passagent_token: str | Nonefor authentication via theX-Arcane-Agent-Tokenheader.
Destructive operations use athree-layer safety system:
1. Confirmation tokens (two-step handshake)
Every tool that removes, prunes, kills, restores, or overwrites returns a short-livedconfirmation_tokeninstead of executing. The agent must callconfirm_operation(token)as a separate tool call to proceed. Tokens expire after 120 seconds.
remove_container("my-app") → {"warning": "...", "confirmation_token": "a1b2c3d4e5f6", "target": "my-app"} confirm_operation(token="a1b2c3d4e5f6") → {"success": true, ...}
This prevents an agent from blasting through a safety gate in one call — it must stop, process the warning, and make a second call.
Prune operations (prune_images,prune_volumes,prune_networks,prune_system,clear_activity_history) default todry_run=True, showing what would be affected without making changes:
prune_images() → {"dry_run": true, "warning": "Dry-run. Set dry_run=False to proceed.", "target": "all"} prune_images(dry_run=False) → {"warning": "...", "confirmation_token": "..."}
Every confirmed destructive operation is recorded to a structured JSON-lines audit log. Read it anytime:
read_audit_log(lines=10) → [{"timestamp": "2026-06-29T...", "action": "remove_container", "target": "my-app", "env_id": "0"}]
SetARCANE_MCP_AUDIT_LOGenvironment variable to change the log file path (default:~/.arcane-mcp-audit.log).
git clone https://github.com/MikeCase/arcane-mcp.git cd arcane-mcp uv sync uv run fastmcp run src/arcane_mcp/server.py
Magica is your all-in-one AI platform, offering 2500+ cutting-edge tools under a single subscription.
Turn your Make scenarios into callable tools for AI assistants.
Dynamically search and call tools using UnifAI Network
Connect your AI Agents to 8,000 apps instantly.
Interact with your Anytype data through its API, enabling AI assistants to access your information.
MCP server exposing 10 APITier utility APIs as AI agent tools
Connect AI assistants to Automatisch for workflow automation.
Access data from the Bakaláři school system, including schedules, absences, and grades, through a standardized API.
Provides secure, read-write access to Breathe HR data for AI assistants.
MCP server for Brightspace (D2L): check grades, due dates, announcements, rosters & more using Claude, ChatGPT, Cursor, or any MCP client.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



