Skip to main content

Natural-Language VM Recovery: Veeam Instant Recovery with Everpure Fusion & vCenter MCP Servers

  • Nov 12, 2026 3:47 AM UTC
  • 4 comments
  • 30 views

Forum|alt.badge.img+2

Going from I have a problem, to asking my infrastructure what I could do about this problem, to asking my infrastructure to execute on that recovery.

I've been building a series of demos tying MCP servers across the infrastructure. This one puts Veeam Instant Recovery at the center: Claude Code with three MCP servers working together. The Veeam MCP for the data protection side, the vCenter MCP, and the Everpure Fusion MCP for fleet and preset management. All by using natural language.

Video: https://youtu.be/llkCg3cT_o8 Full write-up with the Fusion side step by step: https://thebetasociety.com/wcith/pure-storage/everpure-fusion-veeam-instant-vm-recovery-preset-datastore-mcp

The scenario

Let's say I'm responsible for the environment, and that includes recovery or just root cause of what's going on. I get a message that this VM got corrupted, and it was about an hour ago. So what can I do about it? What are my recovery options?

I didn't tell it where to look. It went to vCenter, found the VM, figured out what datastore it's on, figured out what it's tied to. It sees the snapshots in the datastore. It sees the Veeam backups. And it came back with four ways to recover that VM:

  1. Veeam Instant VM Recovery onto a datastore I choose
  2. A full restore from the Veeam backup job
  3. A FlashArray snapshot restored through Veeam with the Everpure plugin
  4. A FlashArray snapshot copied to a new datastore

Picking the restore point

This is where you can measure it. Notice I said about an hour ago. Where do I have the best recovery scenario? Anything in the last hour might already be corrupted. I got a Veeam restore point about two hours old, and that's my best bet. The array snapshots are older than that. So the backup actually wins on recovery point here, and Instant VM Recovery wins on recovery time. Let's go with that.

Where should the VM land?

Instant VM Recovery requires that I pick a datastore. I could go back to the original, or pick an existing one. But maybe I don't want to drop it next to the damaged VM. Maybe I want to save that for investigation.

So I asked for a new datastore, protected up front. Fusion built a preset in plain language: make me one for SQL, snapshots every 15 minutes, keep a day, daily, keep two weeks. It deployed that as a workload, connected the volume to the cluster's host group, and vCenter rescanned and mounted it. The full walkthrough of that part is in the blog.

Before every change, I still get to approve it. And those approval codes have a time limit. If I don't accept right away, it goes away. It doesn't just sit out there and accidentally get done later just 'cause I haven't closed the session.

Running the restore

Here's the restore plan before I push the button. Not touching the original VM. In fact, we're not even in the original datastore. The new VM comes up powered on with its network disconnected, so it can't clash with the original's IP or hostname. Then Veeam moves it onto the new datastore with vMotion.

I said yes, run the restore. Could probably just say yes, but I like to be a little bit deliberate about what I'm saying yes to.

If you've run Instant VM Recovery, you know the mechanics. It's mounting the backup through an NFS mount on the Veeam side, connecting it to those hosts, and the VM is up and running from the backup. Without the migration or finalization, it's really a snapshot running from the backup appliance through to the datastore. That's a nice call, because you can get it going without leaving it that way for a long period of time. Here the migration kicks off on its own, and the vMotion moves it to the new datastore in the background.

And there we go. Published, on and running.

Why the new datastore matters

Now the recovered VM is in its own volume. We can choose to keep it, clone it, or delete it. We're not gonna damage anything original, because it's in its own container. And because it was deployed as a Fusion workload, it's easy to go back and ask, what's related to that restore I did? Easy to find, easy to clean up, easy to utilize.

What I'd love to hear from the community

Veeam already has the API for all of this. MCP just lets you get at it by asking for what you want, with the guardrails in front of every change. How are you thinking about agents in your recovery runbooks? Where would you want the approval step, and where/when would you let it run?

Hopefully this shows you some of the art of the possible when you start connecting Veeam and the rest of your infrastructure with MCP servers. Thanks for checking this out.

4 comments

Geoff Burke
Forum|alt.badge.img+22
  • Veeam Vanguard
  • Nov 12, 2026 1:53 PM UTC

Very interesting post. Also great that you have kept the human in the loop, i.e. you get the final call on approving. 


Forum|alt.badge.img+2
  • Author
  • Veeam Vanguard
  • Nov 12, 2026 7:34 PM UTC

Absolutley. Using the agentic platform to get me closer to a resoulution by offering the options and outcomes. Then allow the Human Gate to have the final say. Could also plumb this into internal KBs or Standard procedures. Even have authorization escalation, depending on the method chosen. I even dare to say- maybe even  a way for Everpure to take advantage of the Orchestrator tool. Maybe


Scott
Forum|alt.badge.img+10
  • Veeam Legend
  • Nov 12, 2026 10:51 PM UTC

This is very cool. I agree that human in the loop is the way to go, however, for myself, some things such as my storage and backups will not be managed by AI anytime soon. I’ll use these when AI goes rogue and I have to restore! lol. 

 

For a POC or in a lab environment this is a great test though and I’ll have to give it a try… Perhaps having a second VBR running that is not managed by AI is the solution? I’m not sure, I just feel it’s very early for AI, and I have seen mistakes a fair bit. 

 

Either way, I imagine the future will be using tools like this more, with appropriate guardrails in place to protect us!


Forum|alt.badge.img+2
  • Author
  • Veeam Vanguard
  • Nov 12, 2026 11:07 PM UTC

Understand that sentiment. But think of this as more a headless operation. Yes, i am using Claude Code here, but really I am just calling to the MCP to provide me the right tool, to get what I need done. API call at the end of the day, as if I knew and executed the call myself. Real magic is. I can ask my infrastructure, “what are the issues?”, or “I have this issue, what are my options?” And then I can choose how to act on those either through the prompt, script, CLI, or good ol’ GUI. I have a more basic example where that last one is the case. 
Now, it can lead to agentic, which can be beneficial for some tasks