VibeKit

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

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
99%
Vollständigkeit des Schemas
92%
Qualität der Benennung
80%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~8,050Tokens (Tool-Definitionen)
~1.8 KBTypische Antwortgröße
Erhebliche Auswirkung auf die Aufmerksamkeit (6.29% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "vibekit-mcp": {
      "url": "https://mcp.vibekit.bot/mcp"
    }
  }
}

Remote-Endpunkte

https://mcp.vibekit.bot/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (36)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢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.

Eingabe-Schema

{
  "type": "object",
  "properties": {}
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Array of hosted apps, each with id, subdomain, status, and live URL."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_get_app(appId)

Get full details for one hosted app — status, subdomain/URL, repo, runtime, and database/domain config. Use the appId from vibekit_list_apps.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    }
  },
  "required": [
    "appId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "App details: subdomain, status, live URL, container stats, and infrastructure topology."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟡vibekit_create_app(template, subdomain)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "template": {
      "type": "string",
      "description": "Template id from vibekit_list_templates (e.g. 'landing', 'dashboard', 'blog', 'saas', 'crud-api')"
    },
    "subdomain": {
      "type": "string",
      "description": "Desired subdomain — the app goes live at <subdomain>.vibekit.bot. Lowercase letters, numbers, and hyphens."
    }
  },
  "required": [
    "template",
    "subdomain"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "The created app: appId, subdomain, live URL, and initial deploy status."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢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.

Eingabe-Schema

{
  "type": "object",
  "properties": {}
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Array of starter templates with name and description."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟡vibekit_deploy(repo, subdomain)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "repo": {
      "type": "string",
      "description": "GitHub repo as 'owner/repo' (e.g. 'your-username/my-app')"
    },
    "subdomain": {
      "type": "string",
      "description": "Desired subdomain — the app goes live at <subdomain>.vibekit.bot. Lowercase letters, numbers, and hyphens."
    }
  },
  "required": [
    "repo",
    "subdomain"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Deploy result: deployUrl (https://<subdomain>.vibekit.bot) and appId."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
⚪vibekit_redeploy(appId)

Redeploy an existing app to pull and ship the latest code. Use after pushing changes to the app's GitHub repo.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    }
  },
  "required": [
    "appId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Redeploy confirmation with deploy/task status."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_app_logs(appId, lines)

Fetch recent container/application logs for an app. Use this to debug crashes, errors, or a deploy that isn't serving.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    },
    "lines": {
      "type": "number",
      "description": "Number of log lines to retrieve (default 100)"
    }
  },
  "required": [
    "appId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Recent container log lines for the app."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
⚪vibekit_restart_app(appId)

Restart a hosted app's container. Use when an app is wedged, or to apply changed environment variables.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    }
  },
  "required": [
    "appId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Restart confirmation and resulting container status."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
⚪vibekit_stop_app(appId)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    }
  },
  "required": [
    "appId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Stop confirmation; the app is retained but the container is freed."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
⚪vibekit_start_app(appId)

Start a stopped hosted app's container. Use to bring an app stopped via vibekit_stop_app back online.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    }
  },
  "required": [
    "appId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Start confirmation and resulting container status."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_app_env(appId)

Get the environment variables configured for an app (names and values). Read-only — use vibekit_set_env to change them.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    }
  },
  "required": [
    "appId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "The app's environment variables as key-value pairs."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟡vibekit_set_env(appId, vars)

Set or update environment variables for an app (merges with existing). The app must be restarted or redeployed for changes to take effect.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    },
    "vars": {
      "type": "object",
      "description": "Key-value pairs to set as environment variables, e.g. { \"API_KEY\": \"...\", \"NODE_ENV\": \"production\" }"
    }
  },
  "required": [
    "appId",
    "vars"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Confirmation of the updated environment variables."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🔴vibekit_delete_app(appId)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    }
  },
  "required": [
    "appId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Deletion confirmation for the app, its container, and its agent."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟡vibekit_chat(appId, message)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    },
    "message": {
      "type": "string",
      "description": "What you want the agent to do or change — be specific about features, design, and behavior."
    }
  },
  "required": [
    "appId",
    "message"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "The agent's reply and remaining credit balance, or a status:'working' note with polling instructions when the coding turn is still running."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_agent_status(appId)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    }
  },
  "required": [
    "appId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Agent status: idle/working, current model, context usage, and app info."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_agent_history(appId, limit)

Get the recent chat history between the user and an app's AI agent.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    },
    "limit": {
      "type": "number",
      "description": "Maximum number of messages to return (default 20)"
    }
  },
  "required": [
    "appId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Array of recent chat messages between the user and the app's agent."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟡vibekit_enable_database(appId)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    }
  },
  "required": [
    "appId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Database provisioning result including the assigned schema name; DATABASE_URL is injected on next deploy."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_database_status(appId)

Get an app's database status and connection info (whether it's provisioned, frozen, etc.).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    }
  },
  "required": [
    "appId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Database stats: tables, storage, and connection info."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_db_schema(appId)

Get an app's database schema — every table and its columns. Always call this before writing a query with vibekit_db_query.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    }
  },
  "required": [
    "appId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Full database schema: tables, columns, and types."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_db_query(appId, sql)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    },
    "sql": {
      "type": "string",
      "description": "SQL to execute (max 5000 chars). Reads and writes both allowed."
    }
  },
  "required": [
    "appId",
    "sql"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Query result rows."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_db_table(appId, table, limit, offset)

Browse rows of one table with pagination and optional sorting — a quick read-only alternative to hand-writing a SELECT.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    },
    "table": {
      "type": "string",
      "description": "Table name (see vibekit_db_schema)"
    },
    "limit": {
      "type": "number",
      "description": "Max rows to return (default 50, max 200)"
    },
    "offset": {
      "type": "number",
      "description": "Row offset for pagination (default 0)"
    }
  },
  "required": [
    "appId",
    "table"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Rows from the requested table with pagination applied."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_list_deploys(appId, limit)

List an app's recent deploys, newest first, with status and commit info. Find a deployId here to pass to vibekit_rollback_deploy.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    },
    "limit": {
      "type": "number",
      "description": "Max deploys to return (default 20, max 50)"
    }
  },
  "required": [
    "appId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Array of past deploys with timestamps and commit info."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟡vibekit_rollback_deploy(appId, deployId)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    },
    "deployId": {
      "type": "string",
      "description": "Deploy ID to roll back to (from vibekit_list_deploys)"
    }
  },
  "required": [
    "appId",
    "deployId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Rollback confirmation for the selected deploy snapshot."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
⚪vibekit_run_qa(appId)

Kick off an automated QA run (headless-browser checks) against a hosted app. Poll vibekit_qa_status for results.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    }
  },
  "required": [
    "appId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "QA run start confirmation with run id/status."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_qa_status(appId)

Get the latest automated QA results and status for an app.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appId": {
      "type": "string",
      "description": "App ID (from vibekit_list_apps)"
    }
  },
  "required": [
    "appId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Latest QA run status and results summary."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟡vibekit_submit_task(task, repo, branch, deploy, callbackUrl)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "task": {
      "type": "string",
      "description": "What you want built or changed. Be specific about features, design, and behavior."
    },
    "repo": {
      "type": "string",
      "description": "GitHub repo as 'owner/repo'. Optional — uses the user's current repo if omitted."
    },
    "branch": {
      "type": "string",
      "description": "Git branch to work on (default 'main')"
    },
    "deploy": {
      "type": "boolean",
      "description": "Auto-deploy to <subdomain>.vibekit.bot when done (default true)"
    },
    "callbackUrl": {
      "type": "string",
      "description": "Optional webhook URL to receive a task-completion notification."
    }
  },
  "required": [
    "task"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "The created task: taskId and initial status."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_get_task(taskId)

Get the status and result of a task submitted via vibekit_submit_task.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "taskId": {
      "type": "string",
      "description": "Task ID returned from vibekit_submit_task"
    }
  },
  "required": [
    "taskId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Task details: status, logs/result summary, and repo info."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_list_tasks(limit, status)

List recent coding tasks, optionally filtered by status.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "number",
      "description": "Max number of tasks to return (default 10)"
    },
    "status": {
      "type": "string",
      "enum": [
        "pending",
        "running",
        "completed",
        "failed"
      ],
      "description": "Filter by task status"
    }
  }
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Array of tasks with id and status."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_wait_for_task(taskId, timeoutSeconds)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "taskId": {
      "type": "string",
      "description": "Task ID to wait for (from vibekit_submit_task)"
    },
    "timeoutSeconds": {
      "type": "number",
      "description": "Max seconds to wait (default 300; the remote connector caps this at 120)"
    }
  },
  "required": [
    "taskId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Final task state after polling: completed or failed, with result details."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🔴vibekit_cancel_task(taskId)

Cancel a running task by taskId. No-op if it has already finished.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "taskId": {
      "type": "string",
      "description": "Task ID to cancel (from vibekit_submit_task)"
    }
  },
  "required": [
    "taskId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Cancellation confirmation for the task."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟡vibekit_create_schedule(task, repo, cron, name)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "task": {
      "type": "string",
      "description": "What to do on each run, e.g. 'Improve SEO and page speed'"
    },
    "repo": {
      "type": "string",
      "description": "GitHub repo as 'owner/repo'"
    },
    "cron": {
      "type": "string",
      "description": "Cron expression, e.g. '0 9 * * 1' for every Monday at 9am UTC"
    },
    "name": {
      "type": "string",
      "description": "Friendly name for the schedule (optional)"
    }
  },
  "required": [
    "task",
    "repo",
    "cron"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "The created schedule: id, name, and cron expression."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_list_schedules

List all of the account's scheduled recurring tasks.

Eingabe-Schema

{
  "type": "object",
  "properties": {}
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Array of scheduled tasks with id, name, and cron expression."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🔴vibekit_delete_schedule(scheduleId)

Delete a scheduled recurring task by scheduleId. Confirm with the user first.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "scheduleId": {
      "type": "string",
      "description": "Schedule ID to delete (from vibekit_list_schedules)"
    }
  },
  "required": [
    "scheduleId"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Deletion confirmation for the schedule."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_account

Get VibeKit account info: plan, credit balance, and usage.

Eingabe-Schema

{
  "type": "object",
  "properties": {}
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Account info: plan, credits, usage, and API key status."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_list_skills(tag)

List available implementation skills (IDs, names, descriptions, tags) from the VibeKit skills registry. Discover skills here before fetching one with vibekit_get_skill.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "tag": {
      "type": "string",
      "description": "Filter skills by tag (e.g. 'react', 'database', 'security')"
    }
  }
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "Array of available skills, optionally filtered by tag, each with id, name, and tags."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}
🟢vibekit_get_skill(id)

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.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Skill ID from vibekit_list_skills (e.g. 'nextjs', 'trpc', 'auth')"
    }
  },
  "required": [
    "id"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean",
      "description": "Whether the call succeeded."
    },
    "data": {
      "description": "The skill's id and full SKILL.md content."
    },
    "error": {
      "type": "string",
      "description": "Error message when ok is false (e.g. missing/invalid VIBEKIT_API_KEY, or an API error)."
    }
  },
  "required": [
    "ok"
  ],
  "description": "Result envelope: ok=true with data on success, ok=false with error on failure."
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet36 Tools
verifiziertVersion nicht aufgezeichnet36 Tools