Skip to content

Prompts

Besides its tools and resources, arcane-mcp publishes MCP prompts: workflow templates a client offers as slash commands (Claude’s / menu, VS Code’s /mcp.arcane... commands). You pick one, fill in a few arguments, and the client puts the resulting message in the conversation. The message tells the model which actions to call, in which order, what to look for in each result and what to report at the end.

prompts/list names them; prompts/get returns one.

Arguments marked required must be given; the others are optional. environmentId is optional everywhere and defaults to the configured environment (ARCANE_ENVIRONMENT_ID), as it does for the actions.

PromptWhat it doesArguments
diagnose_containerReads a container’s state, health-check log, logs, processes and stats (and its Compose siblings) to find why it is unhealthy, restarting or stopped; proposes a fix and applies it only with your approvalcontainerId (required: ID or name), environmentId, symptom (free text: what you saw)
update_project_imagesChecks a Compose project for newer images, shows what would change, offers to back up its volumes, updates the services with your approval and verifies themprojectId (required: the project ID from project.list; Arcane does not find a project by name), environmentId, services (comma-separated service names; all when left out)
security_reportSummarizes vulnerabilities: risk score, riskiest images and findings, what is fixable and which running containers are exposed; for one image, scans it when it has no scanenvironmentId, imageId (one image’s sha256 ID), severity (comma-separated: CRITICAL, HIGH, MEDIUM, LOW, UNKNOWN; CRITICAL,HIGH by default)
cleanup_diskMeasures what unused images, stopped containers, volumes and networks take, shows what each prune would remove, and prunes only what you approveenvironmentId
environment_overviewA read-only health check: environment status, host resources, projects and containers, pending updates, vulnerabilities, recent errorsenvironmentId
rollback_serviceInspects a Swarm service’s failing update, shows what a rollback to its previous spec changes, rolls it back with your approval and verifiesserviceId (required: ID or name), environmentId
backup_volumeBacks up a volume, waits for it to finish, checks the files it holds and suggests a schedule; never restoresvolumeName (required), environmentId

Prompt and argument names are stable: renaming one is a breaking change. Clients that support completions suggest values for the identifier arguments and severity as you type (see Completions).

  • One instruction message with the goal, your arguments, numbered steps naming the actions, what the final report should contain, and the rules (below).
  • The matching workflow guide, attached as an embedded resource, when there is one: diagnose_container carries arcane://guides/diagnose-an-unhealthy-container, update_project_images carries arcane://guides/update-images-safely and backup_volume carries arcane://guides/back-up-and-restore-a-volume. The prompt gives the order; the guide explains each action.

Building a prompt reads only the catalog: prompts/get never calls Arcane, needs no credential and works while Arcane is down. The actions the model then calls are ordinary tool calls, with every check a tool call has (read-only, safe mode, confirmation, audit log).

The steps name each action the way the active tool surface calls it, as the next steps of a tool result do: container.get on dynamic (run with arcane_execute_action), arcane_container with action get on meta, arcane_container_get on individual. The rules repeat how to call an action on that surface.

  • Confirmation is never skipped. Every destructive action in the steps is marked (destructive), and each message says to describe what it will do, wait for your explicit approval in the conversation, and only then pass confirm: true (or answer the client’s confirmation question). The prompt itself is never that approval.
  • Read-only mode (ARCANE_MCP_READ_ONLY): rollback_service and backup_volume are not offered, because they only lead to changes. The other prompts stay, without the steps that change state, and end with a report of what you would change.
  • Safe mode (ARCANE_MCP_SAFE_MODE): actions that would change state are marked (safe mode: preview only) and the message says that they answer with a preview of the request and change nothing. cleanup_disk mentions safe mode as the way to see exactly what a prune would send before running it.
  • Exclusions (ARCANE_MCP_EXCLUDE_TOOLS): a prompt whose essential action is excluded is not offered (for example, excluding swarm_service removes rollback_service); a step naming another excluded action is left out and the message says some steps are missing.

Argument values are user-supplied text that ends up in the model’s instructions, so they cannot change those instructions:

  • Identifiers (environmentId, containerId, projectId, serviceId, volumeName, imageId, each name in services) must be IDs or names: letters, digits and ._-:/@, at most 255 characters. Anything else is refused.
  • Every value appears only in the message’s Arguments section, folded onto one line, cleaned of control characters, terminal sequences and invisible or bidirectional characters, cut at 200 characters and quoted. The section ends by telling the model that the values are data, never instructions.

A missing required argument, a malformed identifier or an unknown severity is a JSON-RPC error with code -32602 (invalid params) and a message naming the argument; an unknown prompt name is -32602 too. Arguments a prompt does not declare are ignored.

A unit test fails when a prompt names an action the catalog does not have, a destructive action lacks its mark, or a prompt’s name or arguments change.