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., "@Sympathy-MCPCheck the status and IP address of my 'dev-machine' VM"
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.
Sympathy-MCP
MCP server for Incus VM operations. Named for sympathetic magic — the connection between puppet and puppeteer.
Agents on masternode puppeteer VMs via structured MCP tools instead of freeform Bash commands.
Tools
Tool | Description |
| Run a command inside a VM (stdout, stderr, exit code) |
| Read a file from inside a VM |
| Write content to a file inside a VM |
| Push a file from host into a VM |
| Pull a file from a VM to host |
| Create a named snapshot |
| Restore to a named snapshot |
| Get VM state, IP, resource usage |
| List all VMs with status |
Usage
MCP Configuration
Add to .mcp.json:
Requirements
Python 3.12+
incusCLI installed and configureduvfor project management
Architecture
src/sympathy_mcp/incus.py— Async Incus CLI wrapper (validation, subprocess exec, structured results)src/sympathy_mcp/server.py— FastMCP server with 9 tools (stdio transport)
Shells out to incus CLI under the hood. Go rewrite planned.