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
MCP server

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
All reasons and checks
Russian stack

notequal21/selectel-mcp

Install

Services

Manual install

claude mcp add selectel --scope user -- node --env-file=$HOME/.config/selectel-mcp/.env /abs/path/selectel-mcp/dist/index.js

Clone the repository and run `npm install` first, which builds `dist/`; secrets live in `~/.config/selectel-mcp/.env`.

Access and checks

How we review

Broad 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_ID required
Selectel account number
SELECTEL_USERNAME required
Service user name or UID
SELECTEL_PASSWORD secret
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.

Russian stack

An unofficial Selectel cloud MCP server: OpenStack servers, S3 storage, billing and one-call Docker app deploys

MCP serverBroad access1Repository stars
Russian stack

A FastMCP Selectel Cloud Platform server for projects, resources and quotas, planned as the first of six service-specific MCPs

MCP serverExtended access

Selectel balance MCP server

Selectel MCP Server

Russian stack

A Selectel billing MCP server: balance and spend predictions via a service user, with automatic token refresh and an audit log

MCP serverExtended access

selvpc (Selectel VPC)

python-selvpcclient

Official

Python client and selvpc CLI for the Selectel cloud platform API

CLIBroad access8Repository stars
Official

An MCP server for Linux diagnostics: an AI client reads services, logs and network on local and remote hosts, read-only

MCP serverExtended access320Repository stars

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.

README badge

Report a problem