mcpserver.lol
registry/redu-mcp
Connection check verified live · 20h ago

redu-mcp

Agent-native cloud, EU-hosted. Provision VMs, networks & databases on redu.cloud via MCP.

Tools 81
GitHub stars
Installs / wk
Licence
Transport streamable-http
Last checked 20h ago

Tools & capabilities

81 tools

Read from the running server on 20h ago.

architecture_diagram read-only include_managedinclude_volumesinclude_load_balancers
Read-only. Fetches EVERY resource on your redu.cloud account (VMs, volumes, private networks, managed databases: Postgres/MySQL/MariaDB/ClickHouse/Redis/Qdrant, load balancers, and…
attach_volume volume_id*instance_id*
Attaches an EXISTING block volume to a running instance as an extra disk. This is how you finish a RESTORE after a VM is gone: restore_backup (volumeName) rebuilds the data into a…
check_agent_prerequisites read-only github_pat
Checks if your account has everything needed to run autonomous coding agents. Returns a checklist: API key validity, private network, SSH keypair, and billing. Safe to call anytime…
check_deploy_prerequisites read-only mode
The deploy ENTRY GATE — run this first when a user wants to deploy. Verifies the account is ready and AUTO-SELECTS the network_id + keypair_name to pass to deploy_app (so you never…
create_api_key name*scopes*confirmexpires_in_days
Mints a NEW least-privilege redu API key for a deployed app or automation to use (e.g. to add a backup feature). GUARDRAIL: the first call does NOT create anything. It returns a co…
create_backup volumeIdbackupName*instanceId
Creates a backup, by volumeId or by instanceId (the instance's volume is resolved for you). The backup is held independently of the instance, so it survives the VM. Poll list_backu…
create_clickhouse haname*db_namedb_userflavor_id*superuser +5
Provisions a managed ClickHouse database (OLAP / columnar analytics engine, Apache-2.0) on a dedicated VM on your private network — its OWN resource, NOT a relational database. Req…
create_controller repo*github_pat*worker_count
Creates a self-configuring controller VM on redu.cloud. Auto-discovers your network, Ubuntu image, and flavor. Generates and uploads an SSH keypair if you don't have one. The VM bo…
create_database haname*db_namedb_userversionflavor_id* +7
Provisions a managed PostgreSQL database on a dedicated VM on your private network. Requires a recent plan_managed_datastore. For app deployments, prefer deploy_app database:'manag…
create_instance name*portdnamevolumeimage_id*flavor_id* +9
Creates a raw compute instance for custom OS/cloud-init workflows. For app/source deployments, prefer check_deploy_prerequisites -> plan_deploy -> deploy_app/deploy_compose; do not…
create_media_space name*size_gbflavor_idmount_pathnetwork_idkeypair_name* +2
Creates a private Redu media space: a small NFS VM backed by a persistent volume, intended for WordPress/WooCommerce wp-content/uploads in autoscaling clusters. Prefer letting depl…
create_redis name*versionpasswordflavor_id*network_id*keypair_name* +2
Provisions a managed Redis instance on a dedicated VM on your private network. Requires a recent plan_managed_datastore. It is PRIVATE — reachable only from another instance on the…
create_relational_database name*enginedb_namedb_userversionflavor_id* +5
Provisions a managed MySQL (or MariaDB) database on a dedicated VM on your private network — the relational-database resource (use this instead of create_database when the app need…
create_snapshot instanceId*snapshotName*
Creates a snapshot of a running instance.
create_volume name*size*
Creates a block storage volume.
delete_backup can modify data id*
Deletes a backup by ID.
delete_clickhouse can modify data id*
Deletes a managed ClickHouse database and its underlying VM. Pass the numeric id from list_clickhouse_databases. This cannot be undone.
delete_cluster can modify data stack_id*stack_name*
Deletes an autoscaling cluster — tears down the WHOLE cluster: every autoscaled EXTRA member VM, the load balancer, the pool, the cluster security group, and the cluster's *.redu.c…
delete_database can modify data id*
Deletes a managed Postgres database and its underlying VM. Pass the numeric database id from list_databases. This cannot be undone.
delete_deployment can modify data id*
Deletes a deployment and its underlying app VM. Pass the numeric id from list_deployments. IMPORTANT: if the deployment used database:'managed', the managed Postgres VM is NOT dele…
delete_instance can modify data id*
Permanently deletes an instance. This cannot be undone.
delete_keypair can modify data name*
Removes an SSH keypair from your account by name.
delete_redis can modify data id*
Deletes a managed Redis instance and its underlying VM. Pass the numeric id from list_redis. This cannot be undone.
delete_relational_database can modify data id*
Deletes a managed MySQL/MariaDB database and its underlying VM. Pass the numeric id from list_relational_databases. This cannot be undone.
delete_snapshot can modify data id*
Deletes a snapshot by ID.
delete_volume can modify data id*
Permanently deletes a block storage volume and the data on it. This cannot be undone. The volume must be 'available' (detached) — detach_volume it first, and note you cannot detach…
deploy_app envname*portrepodb_iddname +36
Deploys an app to a VM and exposes it at a public https://<name>-<id>.redu.cloud URL. The container is built ON the VM. PREREQS — run check_deploy_prerequisites first for network_i…
deploy_compose envname*portrepodnameredis +36
Deploys a MULTI-CONTAINER app — a repo that ships docker-compose.yml / compose.yaml — onto ONE VM via podman-compose, and exposes one or more services at redu.cloud URLs. Use this…
deploy_overview read-only
Orientation for deploying an app on redu.cloud: the end-to-end flow, the two source modes (git vs upload), how to handle a missing Dockerfile or a database, when (and when NOT) to…
deploy_vpn nameconfirmflavor_idnetwork_idclient_cidrkeypair_name*
Stands up a redu VPN gateway (WireGuard tunnelled over wstunnel on WSS/443) on your PRIVATE network, so you (or your team) can reach the private IPs of the VMs you deployed on redu…
detach_volume volume_id*instance_id*
Detaches a block volume from an instance, leaving the volume (and its data) intact and 'available' to attach elsewhere. Unmount it INSIDE the guest first (`umount /mnt/...`) or you…
get_agent_status read-only log_tokencontroller_url*
Returns the current status of your controller VM. On a freshly set-up VM also returns the trigger token needed to authorize the fleet and to call trigger_agent_batch. Call this aft…
get_container_logs read-only tailsinceservicedeployment_id*
THE APPLICATION'S OWN LOGS - what `docker logs`/`podman logs` would show for each container in a deployment. This is the tool for 'it deployed fine but it does not work': a 500, a…
get_containers read-only deployment_id*
WHAT IS ACTUALLY RUNNING on a deployment's VM: every container's name, image, state, health, restart count, exit code and published ports - including the ones that have CRASHED, wh…
get_deployment read-only id*redu_md
Fetches ONE deployment by its numeric id (from list_deployments). Returns its current status, the public access_point URL, the underlying VM id, AND the build_log - IN FULL when st…
get_domain_verification read-only domain*
Returns the DNS TXT record to add for custom domain ownership verification. Add the record to your DNS provider, then call verify_domain.
get_env_keys read-only deployment_id*
WHICH ENVIRONMENT VARIABLES the deployment was actually given, BY NAME - the keys in the env files on the VM (/opt/app-src/.env and friends), never the values. Most of the time the…
get_instance_logs read-only instance_id*
The VM's SERIAL CONSOLE: kernel messages and early-boot/cloud-init output. ⛔ THIS IS NOT YOUR APPLICATION'S LOGS. For a deployed app - a crash loop, a 500, a failed DB connection -…
get_resource_usage read-only deployment_id*
HOW MUCH ROOM IS LEFT on a deployment's VM: total/used/available memory, swap, disk free, load average, CPU count, and OOM kills in the last 24h - plus per-container memory and CPU…
get_ssh_command read-only instance_id*keypair_name
Returns the SSH command to connect to an instance via the redu.cloud TCP proxy. ACCEPTS an instance id, a deployment's id / name / instance_id, OR a MANAGED DATASTORE's id / name /…
import_keypair name*public_key*
Registers an existing SSH public key on your account. Use this to import your own public key so you can SSH into instances. The private key never leaves your machine.
instance_action action*instanceId*
Start, stop, or reboot an instance. action must be START, STOP, REBOOT_SOFT, or REBOOT_HARD.
integrate_overview read-only
Orientation for wiring a redu.cloud capability (backups, DNS, extra storage, a managed DB, ...) INTO an app already deployed on redu, e.g. 'add a backup feature to the Supabase I d…
list_backups read-only
Lists your volume backups.
list_clickhouse_databases read-only
Lists your managed ClickHouse databases (OLAP / analytics — its own resource, not a relational DB). Once a row's status is 'ready' it carries the private-network connection details…
list_clusters read-only
Lists your autoscaling clusters.
list_databases read-only
Lists your managed PostgreSQL databases. Once a row's status is 'ready', it carries the private-network connection details (private_ip, port 5432, db_name, db_user).
list_deployments read-only
Lists your app deployments. Each row carries status (provisioning/ready/build_failed/error), the current build phase while provisioning (installing/source/building/built/starting),…
list_dns_entries read-only
Lists DNS proxy host entries.
list_domains read-only
Lists custom domains you have verified ownership of.
list_flavors read-only
Lists available instance sizes.
list_images read-only
Lists available OS images.
list_instances read-only
Lists your compute instances.
list_keypairs read-only
Lists your SSH keypairs. If empty, call import_keypair first before creating instances.
list_media_spaces read-only
Lists Redu media spaces: private NFS media VMs backed by persistent volumes. For WordPress/WooCommerce clusters, reuse one on the app's private network for wp-content/uploads, or p…
list_private_networks read-only
Lists your private networks.
list_redis read-only
Lists your managed Redis instances. Once a row's status is 'ready' it carries the private-network connection details (private_ip, port 6379) — connect from another instance on the…
list_regions read-only
Lists available regions.
list_relational_databases read-only
Lists your managed MySQL/MariaDB databases (the relational-database resource). Each row carries its engine ('mysql'|'mariadb'); once status is 'ready' it has the private-network co…
list_security_groups read-only
Lists your security groups.
list_snapshots read-only
Lists your instance snapshots.
list_volumes read-only
Lists your block storage volumes.
plan_deploy read-only portstartworkerredu_mdruntime*vm_count +28
Turns YOUR repo classification (you scan the repo and pass what you found) into a complete, approvable deploy plan WITHOUT creating anything. ⚡ REDU NEEDS THREE FILES IF THEY EXIST…
plan_instance read-only osHintsizeHint
Aggregates images/flavors/keypairs/networks/security groups into human-friendly choices. Does not create anything. Happy path: import_keypair → plan_instance → create_instance → ge…
plan_managed_datastore read-only haenginesizeHint
Plans a direct managed datastore create without provisioning anything. Use this before create_database, create_relational_database, create_redis, or create_clickhouse. For app depl…
prepare_upload read-only is_git_repoproject_dir
Returns the LOCAL shell commands to package your working directory and upload it for an upload-mode deploy (no git, no PAT). Run them in the user's terminal, capture `source_token`…
restore_backup backupId*volumeIdinstanceIdvolumeName
Restores a backup into an existing volume (volumeId), an instance's volume (instanceId), or a new one (volumeName). Poll list_volumes for the restored volume. DISASTER RECOVERY (th…
scaffold_local read-only portruntime*has_containerneeds_postgres
OPTIONAL preflight: returns a podman-compose.yml + .env so the user can run the app (and a throwaway local Postgres) on THEIR machine before deploying to redu — to see it run / san…
select_surface read-only modesurfaces*
For a repo with SEVERAL runnable parts, call this BEFORE plan_deploy. You enumerate the candidate surfaces (find every Dockerfile/Containerfile, OPEN each, classify by its EXPOSE +…
set_cluster_domain domain*stack_id*
Changes the PUBLIC HOSTNAME a cluster serves on, so the user can put THEIR OWN production domain (shop.acme.com, app.theircompany.com) in front of it instead of the auto-generated…
set_managed_backups id*enabled*service*retention
Turns nightly AUTOMATED (scheduled) backups ON or OFF for a MANAGED data service — the toggle that create_backup (a one-off volume snapshot) is NOT. Once enabled, redu's nightly jo…
setup_agent_fleet repo*github_pat*worker_count
Complete one-shot setup: validates prerequisites, creates a controller VM + worker VMs, auto-creates a public HTTPS URL on port 7070, seeds a starter ROADMAP.md into the repo if ab…
setup_agent_session repo*github_pat*
One-shot tool that guides you through the complete agent setup: checks prerequisites, creates the controller VM, and returns next steps. Ideal for first-time setup. Call this when…
trigger_agent_batch trigger_token*controller_url*
Starts the autonomous agent batch on your controller VM. Agents read agent-ready tasks from your ROADMAP.md, implement them in parallel, and open PRs. No VPN needed — runs over HTT…
update_cluster stack_id*stack_name*instance_id*idempotency_key
Updates a running autoscaling cluster to a new app version IN PLACE, with NO URL change: snapshots the 'hero' VM (the source/master VM you SSH into and change — it is also the alwa…
upgrade_to_cluster name*portdnamemax_sizeflavor_id*network_id* +20
THE WAY TO MAKE AN EXISTING APP HIGHLY AVAILABLE. If the user asks for high availability, redundancy, no single point of failure, surviving a host or VM failure, or 'stay up if a m…
upgrade_to_ha can modify data id*service*flavor_idnetwork_idkeypair_nameacknowledge_write_loss
Turns an EXISTING, running single-machine managed Postgres or ClickHouse into a THREE-machine highly available cluster, in place, keeping the data and the same username, password a…
verify_deployment id*
Asks redu to re-probe a deployment's public URL and update its status from what it actually observes. USE THIS AFTER YOU HAVE FIXED A FAILED DEPLOY - a deployment that ended 'error…
verify_domain domain*
Checks the DNS TXT ownership record for a custom domain and marks it verified when the record is present. Call get_domain_verification first, add the TXT record at your DNS provide…
wait_for_deployment read-only id*timeout_s
⭐ CALL THIS INSTEAD OF POLLING. Blocks until the deployment reaches a TERMINAL state (ready, build_failed, error or vm_missing) and returns, in ONE response, everything you would o…
whoami read-only
Verifies your redu.cloud credential with a REAL server round-trip and returns your identity + live quota. A green result means the key actually works — not merely that one is confi…