PlugWiki
Xen Orchestra logo

Xen Orchestra MCP Server: Query Your Xen Infrastructure from Claude

OfficialLocal
Getnpm@xen-orchestra/mcpvatesfr/xen-orchestra

Lets Claude, Cursor and other assistants query the pools, hosts, VMs, storage and backups in your Xen Orchestra.

This is the MCP server that ships with Xen Orchestra, made by Vates. It runs on your computer and talks to your own Xen Orchestra server (version 6.5 or later) through its REST API. You sign in with a token from your XO user page, or with a username and password.

It starts read-only. Setting XO_MCP_ENABLE_ACTIONS=1 adds tools that can change things, and every such action asks for a confirmation before it runs. The tool list is built from your own server when the MCP server starts, so the exact set depends on your XO version.

Good for

  • Sysadmins who run Xen Orchestra and want to ask questions about VMs, hosts and backups in plain language
  • Teams that check backup results every morning and want a quick summary of failures
  • Admins who want an assistant to run actions like VM snapshots, with a confirmation step

Works in

12 should work

Tap an app to see how to set it up and any known problems.

Install Xen Orchestra MCP

Claude Code

  1. 1

    Copy this prompt.

    Add the Xen Orchestra MCP server to Claude Code. Run this command:
    
    claude mcp add xen-orchestra -e XO_URL=<XO_URL> -e XO_TOKEN=<XO_TOKEN> -- npx -y @xen-orchestra/mcp
    
    Ask me for XO_URL, XO_TOKEN and only put the values in that config, nowhere else.
    
    Then check that it loaded and tell me if I need to sign in or restart.
  2. 2

    Paste it into Claude Code. It shows the change and asks before running it.

Requires Node.js.

Built from the package data we hold. Not yet tested by us.

Tools

  • Tests the link to your Xen Orchestra

    Calls your server once and reports success or the error, so you can confirm the address and token are right.

    Try: “Check the connection to Xen Orchestra”

    Read · check_connection

  • Pulls a page of the Xen Orchestra docs

    Fetches one of nine topic pages from docs.xen-orchestra.com, such as backups, restapi or troubleshooting, and returns it as plain text.

    Try: “Show me the Xen Orchestra docs on backups”

    Read · search_documentation

  • Summarises your pools, hosts and VMs

    Reads the pool, host and VM lists and returns three markdown tables: pools by name, hosts by name and power state, and VMs by id and power state.

    Try: “Give me an overview of my infrastructure”

    Read · get_infrastructure_summary

  • Read-only query on the pools resources

    Read-only query tool for the pools resource area of your server's REST API (README group: Compute). It takes an operation name from your server's own API spec, plus optional id, filter, fields and limit. The operations on offer come from that spec, not from this page.

    Try: “Query pools and show the first 10 results”

    Read · pools_query

  • Read-only query on the hosts resources

    Read-only query tool for the hosts resource area of your server's REST API (README group: Compute). It takes an operation name from your server's own API spec, plus optional id, filter, fields and limit. The operations on offer come from that spec, not from this page.

    Try: “Query hosts and show the first 10 results”

    Read · hosts_query

  • Read-only query on the vms resources

    Read-only query tool for the vms resource area of your server's REST API (README group: Compute). It takes an operation name from your server's own API spec, plus optional id, filter, fields and limit. The operations on offer come from that spec, not from this page. The README says it covers VMs, templates, snapshots and controllers.

    Try: “Query vms and show the first 10 results”

    Read · vms_query

  • Read-only query on the vdis resources

    Read-only query tool for the vdis resource area of your server's REST API (README group: Storage). It takes an operation name from your server's own API spec, plus optional id, filter, fields and limit. The operations on offer come from that spec, not from this page. The README says it includes VDI snapshots.

    Try: “Query vdis and show the first 10 results”

    Read · vdis_query

  • Read-only query on the srs resources

    Read-only query tool for the srs resource area of your server's REST API (README group: Storage). It takes an operation name from your server's own API spec, plus optional id, filter, fields and limit. The operations on offer come from that spec, not from this page.

    Try: “Query srs and show the first 10 results”

    Read · srs_query

  • Read-only query on the vbds resources

    Read-only query tool for the vbds resource area of your server's REST API (README group: Storage). It takes an operation name from your server's own API spec, plus optional id, filter, fields and limit. The operations on offer come from that spec, not from this page.

    Try: “Query vbds and show the first 10 results”

    Read · vbds_query

  • Read-only query on the pbds resources

    Read-only query tool for the pbds resource area of your server's REST API (README group: Storage). It takes an operation name from your server's own API spec, plus optional id, filter, fields and limit. The operations on offer come from that spec, not from this page.

    Try: “Query pbds and show the first 10 results”

    Read · pbds_query

  • Read-only query on the networks resources

    Read-only query tool for the networks resource area of your server's REST API (README group: Network). It takes an operation name from your server's own API spec, plus optional id, filter, fields and limit. The operations on offer come from that spec, not from this page.

    Try: “Query networks and show the first 10 results”

    Read · networks_query

  • Read-only query on the vifs resources

    Read-only query tool for the vifs resource area of your server's REST API (README group: Network). It takes an operation name from your server's own API spec, plus optional id, filter, fields and limit. The operations on offer come from that spec, not from this page.

    Try: “Query vifs and show the first 10 results”

    Read · vifs_query

Read from the source code

Permissions

medium risk · 3 things to watch

Medium risk

By default the assistant can only read your infrastructure details. If you switch on actions, it can change or delete VMs, and each action needs a confirmation step.

What it can do

Watch out for

  • Opt-in actions can delete VMs and shut down pools

    Off by default. With XO_MCP_ENABLE_ACTIONS=1, each area gets a {domain}_action tool for create, update and delete operations, including DELETE calls and pools/emergency_shutdown. Each action returns a preview and a one-shot confirm token that must be sent back within 5 minutes. Drop operations with XO_MCP_DENY_LIST, for example DeleteVm,HardShutdownVm. github.com

  • It can read user and server details

    The query tools cover users, groups, connected servers and the XOA appliance, not only VMs. The token you give it limits what it can see, because Xen Orchestra still applies its own permissions. github.com

  • Use a token with the access you need

    The README says XO_USERNAME needs admin privileges, and the token carries that user's rights. Our advice: create a dedicated XO user for the assistant rather than your own admin login. github.com

Security advisories

No published security advisories for the MCP server as of Nov 1, 2026.

1 other advisory is about the wider xen-orchestra project, not this MCP server. See them on GitHub

Technical details
Turning on read-onlyThe default. Write tools only appear when XO_MCP_ENABLE_ACTIONS=1 is set. XO_MCP_DENY_LIST can also drop specific operations by name.
Talks toYour own Xen Orchestra server. docs.xen-orchestra.com (the documentation tool only)
Sign-in and keysA Xen Orchestra token in the XO_TOKEN environment variable, or XO_USERNAME and XO_PASSWORD. The token takes priority when both are set.

Questions

Is the Xen Orchestra MCP server official?

Yes. It is published by Vates, the company behind Xen Orchestra, inside the Xen Orchestra repository.

Which Xen Orchestra version do I need?

Version 6.5 or later with the REST API turned on. On an older version it stops at startup with an error. An admin can also switch MCP off on the server, and then it exits with "MCP disabled by admin".

Can it run read-only?

Yes, that is the default. It only gets write and delete tools when you set XO_MCP_ENABLE_ACTIONS=1, and you can still block named operations with XO_MCP_DENY_LIST.

Can it shut down or delete my VMs?

Only if you enable actions. Then it can run operations such as VM shutdown or delete, and pool emergency shutdown. Each one returns a preview and needs a one-time confirm token sent back within 5 minutes.

What credentials does it need?

The address of your server (XO_URL) and either a token (XO_TOKEN, recommended) or a username and password. The README says the username should have admin rights. Create a token on the XO user page or with xo-cli create-token.

Does it send my data anywhere?

It runs on your computer and talks to your own Xen Orchestra server. The documentation tool also fetches pages from docs.xen-orchestra.com. Your assistant's provider still sees whatever the tools return.

How many tools does it have?

It depends on your server. Three tools are always there, and the rest are generated from your Xen Orchestra API spec when it starts. The list on this page is partial and shows the query tools the README names.

Can I connect more than one Xen Orchestra?

Yes. Add one entry per server with a different name, such as xo-production and xo-staging. Each entry runs its own process with its own credentials.

Information

updated Nov 2, 2026

Publisher
Official
Package
@xen-orchestra/mcp
Registry
npm
Transport
stdio
Auth
token in env
Version
1.4.3
License
AGPL-3.0-or-later
Last commit
Oct 31, 2026
Open issues
252

WebsiteGitHubnpmChangelogIssues

Sources

Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.

Show all 7
  1. @xen-orchestra/mcp README · github.com
  2. @xen-orchestra/mcp on npm · npmjs.com
  3. search-docs tool source · github.com
  4. get-infrastructure-summary.mts · github.com
  5. tool-generator.mts · github.com
  6. confirmation token source · github.com
  7. route filter source · github.com

Facts from the official MCP registry, GitHub, npm, PyPI and the Docker catalog. Updated Nov 2, 2026.