selectel-mcp: an MCP server for managing Selectel
selectel-mcp
Selectel cloud servers, disks, network, DNS, S3 and billing from an agent, with a readonly mode and a plan before every change
- 0 ★ on the repository
- Last commit
Broad access
Why this level
- In `full` mode the agent deletes servers, disks, DNS zones and objects and reinstalls the OS
- The service user sees billing and project resources, and outside `readonly` creates paid resources
Install
- Works in
- Services
Manual install
claude mcp add selectel --scope user -- node --env-file=$HOME/.config/selectel-mcp/.env /abs/path/selectel-mcp/dist/index.jsClone the repository and run `npm install` first, which builds `dist/`; secrets live in `~/.config/selectel-mcp/.env`.
Access and checks
How we reviewBroad accessThe tool can change data, run commands or handle secrets.
- In `full` mode the agent deletes servers, disks, DNS zones and objects and reinstalls the OS
- The service user sees billing and project resources, and outside `readonly` creates paid resources
This is third-party code. Review the repository files before installing.
What it does
A local stdio MCP server manages the Selectel cloud from Claude Code, Codex, opencode and other clients. It covers cloud servers (search, creation, CPU and RAM changes, start, stop, snapshots, OS reinstall, console and boot log), floating IPs and security groups, disks, DNS and S3. Separate tools show the balance, a forecast of how many days the money lasts, and spending by project and resource. DNS has bulk apply of changes with a diff, BIND file import and a "point the domain to the server" command. The `SELECTEL_MCP_MODE` variable sets the level: `readonly` by default, `safe` without deletion, `full` with deletion. Every change first builds a plan with the current and the new value and waits for confirmation: a client dialog or a one-time `confirm_token` valid for five minutes.
Who it is for. Administrators and developers whose infrastructure lives in Selectel and who want to ask an agent about servers, DNS and spending.
Good fit when
- You must quickly learn the IP of a server and its region
- You need to see where the money goes and how many days the balance lasts
- DNS is moving from another host and the zone is easier to import from a BIND file
- A server needs a snapshot or a configuration change with a plan for approval
Not a fit when
- You need a tool proven on live Selectel: version 0.1 has run only against a fake API so far
- The cloud belongs to another provider: the server knows only Selectel
- The agent must change infrastructure without confirmations: a plan and a confirmation are built into every change
Example request
What is the IP of the web-1 server and how much did we spend on the cloud this month by project?MCP
- Transport
- stdio
- Authentication
- key is optional
Environment variables
SELECTEL_ACCOUNT_IDrequired- Selectel account number
SELECTEL_USERNAMErequired- Service user name or UID
SELECTEL_PASSWORDsecret- Service user password, or `SELECTEL_PASSWORD_FILE` and `SELECTEL_PASSWORD_CMD`
SELECTEL_PROJECT_ID- Default project
SELECTEL_MCP_MODE- Access mode: `readonly`, `safe` or `full`
SELECTEL_CONFIRM- Confirmation method: `auto`, `elicit`, `token` or `none`
Limitations
Version 0.1: the code is covered by tests on a fake API and has not run against real Selectel, and starting in `readonly` mode is advised. Node.js 20 or newer is required, installation from a clone with `npm install`, and a Selectel service user with minimal roles on the needed project; billing needs a separate `billing` role. Some clients claim a confirmation dialog but reject at once, and then `SELECTEL_CONFIRM=token` is set. The mode changes only in the agent configuration with a server restart.
How to disable. Run `claude mcp remove selectel` or remove the `selectel` block from the agent configuration, and delete the service user in the Selectel panel.
FAQ
What access modes does selectel-mcp have?
Three: `readonly` by default, `safe` with creation and changes without deletion, and `full` with deletion and OS reinstall. The mode can change only in the agent configuration.
How do I store the service user password?
Best in the system keychain through `SELECTEL_PASSWORD_CMD` or in a 600-mode file through `SELECTEL_PASSWORD_FILE`; passwords stay out of agent configs.
What if changes are always rejected?
Set `SELECTEL_CONFIRM=token`: some clients claim a confirmation dialog but never show it. The `selectel_status` tool shows how the client confirms actions.
What can the server do with DNS?
It works with zones and records, applies changes as a batch with a diff, imports a BIND file and on the "point the domain to the server" command creates the needed records.
How do I restrict the server to projects and regions?
With the `SELECTEL_ALLOWED_PROJECTS` and `SELECTEL_ALLOWED_REGIONS` variables, filled with ids or names separated by commas.
Discussion
No questions or reviews yet.
Related
All Selectel toolsAn unofficial Selectel cloud MCP server: OpenStack servers, S3 storage, billing and one-call Docker app deploys
Selectel S3 MCP and CLI: Selectel buckets and backups
selectel-s3-mcp-ai-cli
The selectel-s3 Go binary gives an agent an MCP server and a CLI for Selectel object storage with read, write, delete and admin levels
Selectel Cloud Platform MCP server
Selectel MCP Servers
A FastMCP Selectel Cloud Platform server for projects, resources and quotas, planned as the first of six service-specific MCPs
Selectel balance MCP server
Selectel MCP Server
A Selectel billing MCP server: balance and spend predictions via a service user, with automatic token refresh and an audit log
selvpc (Selectel VPC)
python-selvpcclient
Python client and selvpc CLI for the Selectel cloud platform API
An MCP server for Linux diagnostics: an AI client reads services, logs and network on local and remote hosts, read-only
README in short
The README goes from preparing a service user and installation to password storage and connecting Claude Code, Codex and opencode. A separate section covers access modes and change confirmation, including a two-connection setup for viewing and editing.