# VibeKit

> Build, deploy, and operate hosted web apps on VibeKit (vibekit.bot) from any MCP client.

- name: io.github.VibeKit-Bot/vibekit-mcp
- version: 0.8.0
- connection class: R0 (autonomous)
- trust: 93/100
- quality: 85/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/io.github.VibeKit-Bot%2Fvibekit-mcp
- tools: https://api.protogrid.dev/v1/servers/io.github.VibeKit-Bot%2Fvibekit-mcp/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "vibekit-mcp": {
      "type": "http",
      "url": "https://mcp.vibekit.bot/mcp"
    }
  }
}
```


## Trust

- hygiene: 100
- liveness: 97
- freshness: 85
- provenance: 90
- drivers: +repository +namespace-matches-repo +website +reachable +uptime-92% ~updated-83d-ago
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 85/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 86 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 36 of 36 tools declare readOnlyHint or destructiveHint
- fail `tools.directory_hints`: no tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: vibekit_restart_app (openWorldHint); vibekit_start_app (openWorldHint); vibekit_set_env (openWorldHint); …
- pass `tools.token_cost`: about 4,029 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 100 (weight 15)

- pass `stability.changes`: no tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 36, about 4,029 tokens to load them all
- tool set hash: 04d4424653ffe0b8d7111359a68cb58f
- badge: [![protogrid quality](https://protogrid.dev/badge/io.github.VibeKit-Bot/vibekit-mcp.svg)](https://protogrid.dev/servers/io.github.VibeKit-Bot/vibekit-mcp)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

_No tool definition changes recorded._

## Remotes

- https://mcp.vibekit.bot/mcp (streamable-http, auth none, reachable true, uptime30d 0.9240506)

## Packages

_none_

## Tools (36)

- `vibekit_account`: Get VibeKit account info: plan, credit balance, and usage.
- `vibekit_agent_history`: Get the recent chat history between the user and an app's AI agent.
- `vibekit_agent_status`: Check whether an app's AI agent is idle or working, and get its LIVE progress. Returns activity.status = the current human-readable build step (e.g. 'editing index.html', 'deploying'), activity.steps = the steps so far, and activity.done = whether the turn finished. Poll this every few seconds while a build is running and relay activity.status to the user so they see progress. Once activity.done is true the response also includes liveCheck = a server-side fetch of the deployed page ({ url, ok, httpStatus, title }); use it to confirm the app is live and renders — do NOT curl/fetch the URL yourself, your sandbox may block it.
- `vibekit_app_env`: Get the environment variables configured for an app (names and values). Read-only — use vibekit_set_env to change them.
- `vibekit_app_logs`: Fetch recent container/application logs for an app. Use this to debug crashes, errors, or a deploy that isn't serving.
- `vibekit_cancel_task`: Cancel a running task by taskId. No-op if it has already finished.
- `vibekit_chat`: Send a message to an app's built-in AI coding agent, which reads, writes, and modifies the app's code and redeploys it. Use for 'build/make a change to my app' requests. If the agent finishes quickly you get its reply directly. Otherwise you get status:'working' — do NOT resend; instead give the user LIVE progress: poll vibekit_agent_status every few seconds and relay the current step from activity.status ('editing the homepage…', 'deploying…') until activity.done, then read vibekit_agent_history for the final reply.
- `vibekit_create_app`: Create a new hosted app from a starter template and deploy it live at <subdomain>.vibekit.bot. Call vibekit_list_templates first to pick a valid template. To deploy existing code from a GitHub repo instead, use vibekit_deploy.
- `vibekit_create_schedule`: Create a recurring coding task that the AI runs automatically on a cron schedule (e.g. a weekly SEO pass). Use for 'every Monday, do X to my repo' requests.
- `vibekit_database_status`: Get an app's database status and connection info (whether it's provisioned, frozen, etc.).
- `vibekit_db_query`: Run a read-only SQL query against an app's Postgres database and return up to 200 result rows. SELECT only — writes and DDL (INSERT/UPDATE/DELETE/ALTER/DROP/…) are rejected server-side; use vibekit_chat or vibekit_submit_task to have the agent make data or schema changes. Call vibekit_db_schema first to learn the tables. SQL string, max 5000 chars.
- `vibekit_db_schema`: Get an app's database schema — every table and its columns. Always call this before writing a query with vibekit_db_query.
- `vibekit_db_table`: Browse rows of one table with pagination and optional sorting — a quick read-only alternative to hand-writing a SELECT.
- `vibekit_delete_app`: Permanently delete a hosted app — stops the container and removes its workspace, database, env vars, and subdomain. Irreversible (the GitHub repo is NOT touched). Confirm with the user before calling.
- `vibekit_delete_schedule`: Delete a scheduled recurring task by scheduleId. Confirm with the user first.
- `vibekit_deploy`: Deploy a GitHub repo to VibeKit hosting, live at <subdomain>.vibekit.bot (Fargate container behind nginx, SSL automatic). Use when the code already lives in a GitHub repo; for a starter template instead use vibekit_create_app.
- `vibekit_enable_database`: Provision a Postgres database for an app (idempotent — safe if already enabled). Required before the vibekit_db_* tools work. Note: free-tier apps need the $3/mo Database add-on.
- `vibekit_get_app`: Get full details for one hosted app — status, subdomain/URL, repo, runtime, and database/domain config. Use the appId from vibekit_list_apps.
- `vibekit_get_skill`: Fetch the full content of a specific skill — implementation patterns, code examples, and best practices for a domain. Fetch on-demand when you need guidance on a specific topic.
- `vibekit_get_task`: Get the status and result of a task submitted via vibekit_submit_task.
- `vibekit_list_apps`: List all hosted apps in your VibeKit account, each with its id, subdomain, status, and live URL. Start here to get an appId for the other app tools.
- `vibekit_list_deploys`: List an app's recent deploys, newest first, with status and commit info. Find a deployId here to pass to vibekit_rollback_deploy.
- `vibekit_list_schedules`: List all of the account's scheduled recurring tasks.
- `vibekit_list_skills`: List available implementation skills (IDs, names, descriptions, tags) from the VibeKit skills registry. Discover skills here before fetching one with vibekit_get_skill.
- `vibekit_list_tasks`: List recent coding tasks, optionally filtered by status.
- `vibekit_list_templates`: List the starter templates available to vibekit_create_app (e.g. landing, dashboard, blog, saas, crud-api). Call this before vibekit_create_app to choose a valid template.
- `vibekit_qa_status`: Get the latest automated QA results and status for an app.
- `vibekit_redeploy`: Redeploy an existing app to pull and ship the latest code. Use after pushing changes to the app's GitHub repo.
- `vibekit_restart_app`: Restart a hosted app's container. Use when an app is wedged, or to apply changed environment variables.
- `vibekit_rollback_deploy`: Roll an app back to a previous deploy (get the deployId from vibekit_list_deploys). The container restarts on the rolled-back build; reversible by rolling forward again.
- `vibekit_run_qa`: Kick off an automated QA run (headless-browser checks) against a hosted app. Poll vibekit_qa_status for results.
- `vibekit_set_env`: Set or update environment variables for an app (merges with existing). The app must be restarted or redeployed for changes to take effect.
- `vibekit_start_app`: Start a stopped hosted app's container. Use to bring an app stopped via vibekit_stop_app back online.
- `vibekit_stop_app`: Stop a hosted app's container. The app stays in your account and can be brought back with vibekit_start_app. Use to take an app offline without deleting it.
- `vibekit_submit_task`: Submit an autonomous coding task. The AI writes the code, commits to GitHub, and (by default) deploys to <subdomain>.vibekit.bot. Returns a taskId — poll vibekit_get_task or block with vibekit_wait_for_task. Use for 'build X' or 'change X' work against a repo.
- `vibekit_wait_for_task`: Block until a submitted task finishes (or the timeout), polling every 5 seconds, then return its result. Use right after vibekit_submit_task when you want the final result inline.
