Automation
Your server speaks the Model Context Protocol, so an AI assistant can work on it directly — read your logs, check why a service died, edit a config, install something.
In the Claude app and ChatGPT you sign in and press Allow. For a terminal or a script, issue a key below. Both end up with the same access; they differ only in how the assistant proves who it is.
An assistant with the “run commands” scope has root on your machine.
That is the point of it, and it is also the risk. Assistants read untrusted text — web pages, log files, README files — and text can contain instructions. A poisoned page can, in principle, talk an assistant into running something you did not ask for.
What limits it: a key only ever reaches your virtual machine. It cannot touch our machines, other customers, your plan, your billing or your account. It cannot wipe your server or close your account — those stay in the browser, behind a human. And every command an assistant runs is written to your audit trail as an AI action, separately from anything you do yourself.
If you only want an assistant that can look and report, issue a key with
just server:read. It is genuinely useful on its own and it
carries none of the above.
Your server's address for assistants:
…
| Tool | Scope | What it does |
|---|---|---|
| server_status | server:read | State, address, size, whether the disk is encrypted. |
| server_usage | server:read | CPU, memory, disk and network use. |
| run_command | vm:exec | One shell command as root inside your VM, capped at two minutes. |
| read_file | vm:files | Read a file from your VM. |
| write_file | vm:files | Write a file in your VM. |
There is deliberately no tool for changing your plan, wiping your server or closing your account. Those need a person, in a browser.