@vibetocloud/mcp
v1.4.0
Published
Claude Code MCP server and skills for deploying applications on vibetocloud
Downloads
513
Readme
@vibetocloud/mcp
@vibetocloud/mcp is the MCP server and Claude Code plugin for VibeToCloud, a platform that deploys and runs containerised applications on dedicated cloud infrastructure. It lets you create an application, push code, deploy it to a working HTTPS URL, inspect running services, tail logs and query the application's database — as tool calls from inside Claude Code, without writing infrastructure code, CI configuration or Terraform.
You keep using the coding agent you already have. VibeToCloud handles the repository, the machine, the certificate, the domain and the secrets.
When to use this
Use VibeToCloud when you have built (or are about to build) an application with a coding agent and you need it running somewhere real — for a demo, a pilot, an internal tool, or a proof of concept with actual users — and you do not want to configure infrastructure to get there.
It is a particularly good fit when:
- Your application is several containers, not one — an API, a worker, a database, a frontend. VibeToCloud deploys whatever your
docker-compose.ymldescribes. - You are not an infrastructure engineer and do not intend to become one.
- You will eventually hand the application to someone else, so you need it to stay ordinary code in ordinary git.
Use something else when you need autoscaling, high availability, multi-region deployment or CDN/edge caching. VibeToCloud deliberately does not do those — see What this does not do.
Requirements
- Node.js 18 or later
- Claude Code
- A VibeToCloud account. Sign up at vibetocloud.io. The platform is currently in closed beta, so access is granted per organisation.
- Your application needs a
docker-compose.ymlat the repository root. If you do not have one, the/vibetocloud-onboardskill will scaffold it for you.
Install
npx @vibetocloud/mcp setupRestart Claude Code afterwards. This installs the Claude Code plugin, which registers both the MCP server and the skills — the vibetocloud tools and the /vibetocloud-* slash commands are then available in every project.
To remove it:
claude plugin uninstall vibetocloudOther ways to run it
npx vibetocloud-mcp # run the MCP server on stdio
npx vibetocloud-mcp http # run the streamable HTTP transport
npx vibetocloud-mcp install # install the single-file /vibe skill only
npx vibetocloud-mcp generate-mcp-json # regenerate the tool manifestGetting an application online
The shortest path, once the plugin is installed:
/vibetocloud-onboardThe skill walks through it. Under the hood the sequence is:
org_request_otpthenorg_verify_otp— log in by email code, no password. Keep the returnedtoken.app_create— creates the application and returns its ID and a git clone URL.org_setup_git_credentials— issues a credential for pushing over HTTPS.- Add the remote, commit, push.
app_set_node_tier— choose an instance size. Required before the first deployment on a paid plan.org_deploy— returns a build ID.org_deploy_status— poll untilsuccessorfailed. On success you get the live URL.
Afterwards, /vibetocloud-deploy redeploys and /vibetocloud-debug inspects a running application.
Skills
Installed alongside the MCP server:
| Command | What it does |
|---|---|
| /vibetocloud-onboard | Log in, create or connect an application, set up the git remote, scaffold docker-compose.yml, configure secrets and instance size, push |
| /vibetocloud-deploy | Push the current branch, deploy, poll until finished, report the live URL or the failure |
| /vibetocloud-manage | View the bill, resize an environment, delete, restore or rename an application |
| /vibetocloud-debug | List running services, tail logs, restart a service |
Tools
52 tools. Most require a token from org_verify_otp.
Authentication and session
| Tool | Description |
|---|---|
| org_request_otp | Send a one-time code to an email address to begin login |
| org_verify_otp | Verify the code and return the session token, user ID and organisation ID |
| org_authenticate | Verify an existing session token and return the user and organisation |
| org_refresh_token | Extend a session token for a full new lifetime (7 days by default) |
Organisation and members
| Tool | Description |
|---|---|
| org_register | Register a new organisation and its first admin user |
| org_invite_member | Invite a user by email with a role (admin, developer, viewer) |
| org_accept_invite | Accept an invitation using the token from the invite email |
| org_list_members | List organisation members and their roles |
Plans and billing
| Tool | Description |
|---|---|
| org_list_plans | List available subscription plans (free and pay-as-you-go) |
| org_get_subscription | Get the organisation's current plan |
| org_get_billing | Show the current bill: plan, monthly total, and a per-line breakdown |
Applications
| Tool | Description |
|---|---|
| app_list | List an organisation's applications |
| app_create | Create an application; returns its ID and git clone URL |
| app_delete | Soft-delete an application; the repository moves to trash and is recoverable |
| app_list_deleted | List soft-deleted applications, to find one to restore |
| app_restore | Restore a soft-deleted application within its recovery window |
| app_rename | Rename an application and its git repository (this changes the clone URL) |
Git credentials
| Tool | Description |
|---|---|
| org_setup_git_credentials | Generate a credential for cloning and pushing over HTTPS |
| org_list_git_credentials | List the caller's git credentials |
| org_revoke_git_credentials | Revoke a git credential by ID |
Using your own git repository
| Tool | Description |
|---|---|
| org_add_git_connection | Store a credential for a git host you already use (GitHub, GitLab, Bitbucket) |
| org_list_git_connections | List stored git connections; credentials are never returned |
| app_set_upstream | Point an application at a repository you host yourself |
| app_clear_upstream | Disconnect the upstream and return to a platform-hosted repository |
Templates
| Tool | Description |
|---|---|
| org_list_templates | List available project templates |
| org_apply_template | Overwrite an application's repository with a template scaffold |
Instance size
| Tool | Description |
|---|---|
| app_list_node_tiers | List available instance sizes and what they cost |
| app_set_node_tier | Set the instance size for an application environment |
Deployment
| Tool | Description |
|---|---|
| org_deploy | Deploy an application to dev, staging or production; returns a build ID |
| org_deploy_status | Check a build's status and step-by-step progress |
| org_deploy_cancel | Cancel a running deployment |
Instance control
| Tool | Description |
|---|---|
| app_start_instance | Start a stopped instance and bring its containers up |
| app_stop_instance | Stop an instance; the application goes offline until restarted |
| app_restart_instance | Graceful restart, with force-stop fallback |
| app_reprovision_instance | Apply a pending instance-size change |
| app_replace_instance | Destructive. Destroy the instance and its volumes, then reset the node |
| app_dev_sync | Pull the latest code and rebuild specific services, skipping a full deployment |
Running services
| Tool | Description |
|---|---|
| app_services_list | List running services with status, CPU and memory |
| app_service_start | Start a service |
| app_service_stop | Stop a service |
| app_service_restart | Restart a service |
| app_service_logs | Get the last N log lines from a service |
| app_service_tail_logs | Follow logs, returning only lines newer than the previous call |
Database
| Tool | Description |
|---|---|
| app_db_query | Run SQL against a deployed application's database. Read-only unless allowWrite: true |
| app_db_audit | List recent database-query audit entries |
Configuration and secrets
| Tool | Description |
|---|---|
| app_list_config | List config entries for an environment. Secret values are never returned |
| app_create_config | Create a config entry, as a plaintext value or an encrypted secret |
| app_delete_config | Permanently delete a config entry |
Pre-deploy validation
| Tool | Description |
|---|---|
| app_get_prevalidation_prompts | Retrieve the validation prompts that apply to an application |
| app_trigger_validation | Start a validation run against a commit |
| app_get_validation_status | Poll a validation run until it completes |
| app_get_validation_results | Retrieve errors and warnings from the last completed run |
What VibeToCloud runs
- Your
docker-compose.yml, as written — one service or several, with databases and workers alongside. - Each application environment gets its own dedicated instance, not a shared runtime.
- Environments:
dev,stagingandproduction. - HTTPS with a managed certificate, on a generated subdomain or a custom domain you bring.
- Configuration and secrets, injected at deploy time and never readable back through the API.
- Snapshot backups with restore, on paid tiers.
What this does not do
Stated plainly, because knowing the boundary saves you time:
- No autoscaling. An environment is one instance of the size you chose.
- No high availability or failover. One instance, one availability zone.
- No multi-region deployment, CDN or edge caching.
- No managed database service. Run your database in your own compose stack, or use an external provider.
- No buildpack or framework auto-detection. Your repository needs a
docker-compose.yml. - No zero-downtime deploys or rollback at present. A deployment replaces what is running.
VibeToCloud is built for the stage where an idea becomes something real that people use — prototyping, validating, and proving with genuine users. When an application outgrows that and needs scale, high availability or edge caching, the right move is to take it to a platform built for that. Everything you built is ordinary code in ordinary git, so it comes with you.
Configuration
The published package points at the production API by default and needs no configuration. Every service URL can be overridden by environment variable when self-hosting or developing against a local stack:
| Variable | Purpose |
|---|---|
| GATEWAY_URL | Public API gateway (the default entry point) |
| AUTH_SERVICE_URL | Authentication service |
| USER_SERVICE_URL | Users and organisations |
| APPLICATION_SERVICE_URL | Applications, repositories and configuration |
| DEPLOY_SERVICE_URL | Deployments and instance control |
| ACCOUNT_SERVICE_URL | Billing and subscriptions |
| VALIDATION_SERVICE_URL | Pre-deploy validation |
| MCP_HTTP_PORT | Port for the streamable HTTP transport |
Links
- Website — vibetocloud.io
- Application — app.vibetocloud.io
License
Proprietary. © VibeToCloud.
