Skip to main content
Glama

Server Details

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

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.2/5 across 36 of 36 tools scored. Lowest: 3.4/5.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct resource and action, such as account info, app CRUD, database queries, task management, and skills. There is no ambiguity between tools like vibekit_chat, vibekit_submit_task, and vibekit_agent_history, as their purposes are clearly separated.

Naming Consistency5/5

All tools follow the pattern 'vibekit_verb_noun', e.g., list_apps, create_app, delete_app, db_query. No mixing of conventions or inconsistent verb styles. The prefix ensures a unified namespace.

Tool Count4/5

36 tools is on the higher end, but the server covers a broad domain including app lifecycle, database, tasks, schedules, skills, logs, and QA. Each tool has a clear purpose, though a reduction in similar polling tools (e.g., vibekit_wait_for_task vs vibekit_get_task) could streamline the surface.

Completeness4/5

The tool set provides extensive coverage for managing hosted apps: CRUD, environment variables, database operations, deployment, rollback, scaling (start/stop), tasks, schedules, and debugging. Minor gaps exist (e.g., no direct update app metadata tool), but core workflows are well-supported.

Available Tools

36 tools
vibekit_accountVibeKit Account InfoA
Read-onlyIdempotent
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Description adds value beyond annotations by detailing what data is returned (plan, credit, usage), though annotations already declare readOnlyHint and idempotentHint. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence, concise and front-loaded with action and resource, every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Simple read tool with no output schema; description covers key fields (plan, credit, usage) sufficiently. Lacks mention of permissions or rate limits but annotations cover safety.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters, so schema coverage is 100% trivially. Description does not need to add parameter info; baseline score of 4 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description uses specific verb 'Get' with resource 'account info' and lists fields (plan, credit balance, usage), clearly distinguishing from sibling tools like vibekit_app_env or vibekit_database_status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives; no exclusions or context provided for choosing this over other account-related sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_agent_historyVibeKit Agent HistoryA
Read-only
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
limitNoMaximum number of messages to return (default 20)
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

ReadOnlyHint annotation indicates safe read; description adds 'recent' but no further behavioral context. No contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single clear sentence with no wasted words; front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a simple retrieval tool; lacking specification of 'recent' (time vs sequence) and no output schema description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions; the description adds minimal meaning beyond schema, but clarifies 'recent' implies ordering.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states 'Get the recent chat history' with a specific verb and resource, and is distinct from siblings like 'vibekit_chat' which likely sends messages.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use versus alternatives; usage is implied but not clarified.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_agent_statusVibeKit Agent StatusA
Read-only
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The descriptions discloses behavioral traits: it is a read-only poll (consistent with readOnlyHint=true), returns live progress, and includes a warning about not fetching the URL yourself ('your sandbox may block it'). This adds beyond the annotation which only indicates read-only.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with the main purpose. It is a single paragraph that covers all necessary points without verbose language. Some structure (e.g., separating usage notes) could improve readability, but it is not overly long.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple parameter set (1 required string) and no output schema, the description fully explains the return fields and their meaning, provides polling guidance, and notes important constraints (like not fetching the URL). This is complete for the tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage for the single required parameter 'appId' with a clear description. The tool description does not add additional semantic meaning beyond what is already in the schema, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it checks whether an app's AI agent is idle or working and gets its LIVE progress. It uses specific verbs ('check', 'get') and mentions key output fields. However, it does not explicitly distinguish from sibling tools like vibekit_get_task or vibekit_wait_for_task, which have similar purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance: 'Poll this every few seconds while a build is running' and 'relay activity.status to the user so they see progress'. It also advises using liveCheck to confirm the app is live. There is no explicit mention of when not to use it or alternatives, but the usage context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_app_envVibeKit Get Env VarsA
Read-onlyIdempotent
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and idempotentHint. Description repeats 'Read-only' but adds no new behavioral context (e.g., error handling, performance).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with purpose, no unnecessary words. Highly concise and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple one-parameter read operation and no output schema, the description fully explains the return value (names and values) and usage, leaving no gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers the single parameter appId with a full description. The tool description does not add extra semantic detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool retrieves environment variables by name and value, and distinguishes from the sibling 'vibekit_set_env' for modification.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states 'Read-only' and directs to 'vibekit_set_env' for changes, providing clear when-to-use and when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_app_logsVibeKit App LogsA
Read-only
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
linesNoNumber of log lines to retrieve (default 100)
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, consistent with description. Description adds context of 'recent' logs and debugging use, providing additional transparency beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences, no redundancy, front-loaded with purpose. Every sentence serves a clear function.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, description implies return of log text. For a simple fetch tool, it is sufficient. Could mention format but not essential.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers 100% of parameters with descriptions. Description adds no extra semantic value beyond schema; baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states verb 'Fetch', resource 'logs', and purpose 'debug crashes, errors, or a deploy that isn't serving'. Distinguishes from siblings by focusing on logs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly tells when to use: to debug crashes, errors, or deploy issues. Does not exclude alternatives but context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_cancel_taskVibeKit Cancel TaskA
Idempotent
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
taskIdYesTask ID to cancel (from vibekit_submit_task)
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate idempotentHint=true, but the description adds the specific condition ('no-op if it has already finished'), which provides precise behavioral context beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with two short sentences that are front-loaded with the key action. Every word adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool (single parameter, no output schema), the description covers the core behavior and idempotence. It could mention the return format or error cases for full completeness, but it is adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description does not add meaning beyond what the input schema already provides; the schema describes the taskId parameter with sufficient clarity, and the tool description simply echoes 'by taskId'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Cancel a running task') and the resource ('by taskId'), and it distinguishes the tool from siblings like vibekit_submit_task or vibekit_get_task by specifying the cancellation behavior.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says when to use it (to cancel a running task) and notes that it is a no-op if already finished, which guides safe usage. However, it does not explicitly mention alternatives or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_chatVibeKit Chat with AgentAInspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
messageYesWhat you want the agent to do or change — be specific about features, design, and behavior.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses that the agent reads, writes, and modifies code (consistent with openWorldHint). Adds async behavior details and polling protocol beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded purpose, no unnecessary words. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, description is comprehensive: covers purpose, usage, async behavior, polling, and references sibling tools. Complete for an agent interaction tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema already covers both parameters (appId, message) with descriptions. The description enhances message parameter by advising specificity about features/design/behavior, adding value beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the tool sends a message to an AI coding agent that reads, writes, modifies code, and redeploys. Distinguishes from sibling tools like vibekit_agent_status and vibekit_agent_history.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says to use for 'build/make a change to my app' requests. Provides clear instructions on handling async responses: poll vibekit_agent_status and read vibekit_agent_history instead of resending.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_create_appVibeKit Create AppAInspect

Create a new hosted app from a starter template and deploy it live at .vibekit.bot. Call vibekit_list_templates first to pick a valid template. To deploy existing code from a GitHub repo instead, use vibekit_deploy.

ParametersJSON Schema
NameRequiredDescriptionDefault
templateYesTemplate id from vibekit_list_templates (e.g. 'landing', 'dashboard', 'blog', 'saas', 'crud-api')
subdomainYesDesired subdomain — the app goes live at <subdomain>.vibekit.bot. Lowercase letters, numbers, and hyphens.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate the tool is not read-only, not idempotent, and not destructive, which is consistent with a creation tool. The description adds behavioral context: the app goes live at a subdomain and requires a valid template. It stops short of mentioning that the subdomain must be unique or other side effects, but overall is transparent enough.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, front-loaded with the main action, then prerequisites, then alternative. No extraneous words. Every sentence serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (2 parameters, no output schema), the description covers purpose, prerequisites, alternatives, and naming constraints. It does not describe the return value explicitly, but the context of 'live at <subdomain>' implies success. Slightly more detail on what is returned could improve completeness, but it is adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but description adds value beyond schema by reinforcing that template is from vibekit_list_templates and detailing subdomain constraints (lowercase, numbers, hyphens). It also explains the resulting URL pattern, aiding understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool creates a new hosted app from a starter template and deploys it live. It distinguishes from sibling vibekit_deploy by specifying that this tool uses templates while the sibling is for existing GitHub repos.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly advises to call vibekit_list_templates first to pick a valid template, and directs users to vibekit_deploy for deploying existing code from GitHub. Provides clear when-to-use and when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_create_scheduleVibeKit Create ScheduleAInspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
cronYesCron expression, e.g. '0 9 * * 1' for every Monday at 9am UTC
nameNoFriendly name for the schedule (optional)
repoYesGitHub repo as 'owner/repo'
taskYesWhat to do on each run, e.g. 'Improve SEO and page speed'
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are all false (no readOnlyHint, idempotentHint, destructiveHint), so the description carries full burden. It states the tool creates a recurring task, implying state mutation, but does not disclose whether the operation is reversible, what permissions are required, rate limits, or any side effects. This is minimal transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences that front-load the purpose and provide an example. Every sentence is necessary and there is no fluff. It is efficient and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema, so the description should ideally hint at what is returned (e.g., schedule ID). It does not. For a creation tool, this is a gap. However, the tool is simple (4 params, no enums, no nested objects), so the description is adequate but not complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (all 4 parameters have descriptions in the schema). The description does not add any additional parameter information, so it meets the baseline of 3. No extra value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Create' and the resource 'recurring coding task', with an example ('weekly SEO pass') that helps the agent understand the tool's purpose. It also implicitly distinguishes from one-time task submission tools like 'vibekit_submit_task'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'Use for every Monday, do X to my repo requests', providing a clear usage scenario. However, it does not explicitly mention when not to use this tool or list alternatives like 'vibekit_submit_task', though the context of 'recurring' vs 'one-time' is implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_database_statusVibeKit Database StatusA
Read-onlyIdempotent
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint=true and idempotentHint=true, covering safety. The description adds context about what info is returned (status, connection info) but does not disclose any additional behavioral traits like caching or latency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence that is efficient and front-loaded with the verb 'Get'. No wasted words; parentheses for examples are acceptable. The description earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description gives a good sense of return values (status, connection info, examples). For a simple tool with one parameter and clear annotations, it is largely complete. Could list possible statuses explicitly, but not necessary.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the schema description for appId includes a sourcing hint 'from vibekit_list_apps'. The tool description does not add further parameter meaning beyond what the schema already provides, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses specific verb 'get' and resource 'database status and connection info', with examples like 'provisioned, frozen'. It clearly distinguishes from sibling tools like vibekit_enable_database or vibekit_db_query by focusing on status inspection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use (e.g., to check database state) but does not explicitly state when not to use or mention alternatives. With many sibling tools, explicit guidance would be beneficial.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_db_queryVibeKit Run SQL QueryA
Read-onlyIdempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
sqlYesSQL to execute (max 5000 chars). Reads and writes both allowed.
appIdYesApp ID (from vibekit_list_apps)
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations (readOnlyHint, idempotentHint), the description adds key behaviors: max 200 result rows, max 5000 chars, writes rejected server-side, and that it queries the app's Postgres database. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four sentences, each adds value. Front-loaded with main purpose and key constraints. Efficient and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers purpose, limitations, prerequisites, and alternatives. Given two simple params and annotations, no gaps remain. Complete for a read-only query tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (baseline 3). The description adds meaning: sql max 5000 chars, appId from vibekit_list_apps, and clarifies read-only despite schema description. Compensates for schema ambiguity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it runs a read-only SQL query, returning up to 200 rows, and distinguishes from sibling tools for writes (vibekit_chat, vibekit_submit_task). The verb 'run' and resource 'SQL query' are specific.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly advises when to use (SELECT only) and when not to (writes/DDL), provides alternatives (vibekit_chat, vibekit_submit_task), and recommends calling vibekit_db_schema first. Comprehensive guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_db_schemaVibeKit Database SchemaA
Read-onlyIdempotent
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint and idempotentHint, so the description only adds scope ('every table and its columns'). No contradictions; adds minor value beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences: purpose first, usage guideline second. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a simple read-only schema tool with one well-described parameter. Missing return format details, but annotations cover safety.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (appId described). The description adds no extra meaning to the parameter, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves a database schema (tables and columns) and differentiates from the sibling tool vibekit_db_query by advising to call it before querying.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly tells the agent to call this before vibekit_db_query. Provides clear context but lacks explicit when-not-to-use or alternative tools beyond the query sibling.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_db_tableVibeKit Browse TableA
Read-onlyIdempotent
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
limitNoMax rows to return (default 50, max 200)
tableYesTable name (see vibekit_db_schema)
offsetNoRow offset for pagination (default 0)
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint and idempotentHint. The description adds functional behavior (pagination, optional sorting) and the 'quick' characteristic, complementing annotations without contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single concise sentence that front-loads the core action and key features. Every word adds value with no fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers the main purpose, pagination, and read-only nature. Lacks explicit description of return format (no output schema), but given the simplicity of the tool and good schema annotations, it is sufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema descriptions cover all 4 parameters at 100%. The description mentions 'optional sorting' but no sort parameter exists in the schema, which could cause confusion. Baseline 3 is appropriate as schema does most of the work.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it browses rows of one table with pagination and optional sorting, and explicitly positions it as a read-only alternative to hand-writing a SELECT, distinguishing it from write or query tools like vibekit_db_query.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description says 'quick read-only alternative to hand-writing a SELECT', which implies use for read-only scenarios and suggests avoiding when complex queries or writes are needed. It does not explicitly list when-not-to-use, but the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_delete_appVibeKit Delete AppA
DestructiveIdempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the destructiveHint annotation, the description details what is destroyed (container, workspace, database, env vars, subdomain) and what is not (GitHub repo). It also notes irreversibility and the need for user confirmation, providing comprehensive behavioral insight.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, consisting of two sentences that pack essential information without redundancy. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter, no output schema, and annotations covering destructive behavior, the description provides enough context to understand the tool's full impact and usage requirements.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already fully describes the only parameter (appId) with a source hint. The description does not add additional semantic information beyond the schema, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'delete' and the resource 'hosted app', listing specific components removed (workspace, database, env vars, subdomain). This distinguishes it from sibling tools like stop_app or restart_app.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description warns that the action is irreversible and advises confirmation with the user. While it does not explicitly compare to alternatives, the gravity of permanent deletion is communicated, making usage context clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_delete_scheduleVibeKit Delete ScheduleA
DestructiveIdempotent
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
scheduleIdYesSchedule ID to delete (from vibekit_list_schedules)
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds the confirmation requirement beyond the annotations (destructiveHint, idempotentHint) which already indicate destructive and idempotent behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, directly to the point with no unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

A single required parameter with full schema coverage, no output schema, and annotations covering safety; description adds the critical confirmation guideline, making it complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema provides 100% coverage for scheduleId, and description adds useful context that the ID comes from vibekit_list_schedules, enhancing meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the action (delete a schedule) and resource (scheduled recurring task by scheduleId), distinguishing it from siblings like vibekit_create_schedule and vibekit_list_schedules.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly instructs to confirm with the user first, which is important for a destructive action, but does not specify when not to use or compare to alternative tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_deployVibeKit DeployAInspect

Deploy a GitHub repo to VibeKit hosting, live at .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.

ParametersJSON Schema
NameRequiredDescriptionDefault
repoYesGitHub repo as 'owner/repo' (e.g. '609NFT/vibekit')
subdomainYesDesired subdomain — the app goes live at <subdomain>.vibekit.bot. Lowercase letters, numbers, and hyphens.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations (readOnlyHint=false, destructiveHint=false) set a baseline. The description adds context about the deployment infrastructure (Fargate, nginx, SSL) but does not disclose potential side effects like overwriting existing deployments or error conditions. Still, the behavioral disclosure is adequate for a deploy tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences: first states the core action and result, second gives usage guidance. No wasted words, front-loaded with the main purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a deploy tool with two well-described parameters and no output schema, the description covers the key aspects (action, result, usage context). It could mention return values or status checks, but the agent can infer from sibling tools like 'vibekit_list_deploys'. Overall complete for its complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, providing parameter descriptions. The description adds format constraints ('owner/repo' for repo, 'lowercase letters, numbers, and hyphens' for subdomain), enhancing clarity beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Deploy') and resource ('GitHub repo') with a clear outcome ('live at <subdomain>.vibekit.bot'). It distinguishes itself from sibling 'vibekit_create_app' by noting usage for existing code vs. starter templates.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use ('code already lives in a GitHub repo') and provides an alternative ('use vibekit_create_app' for starter templates). No ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_enable_databaseVibeKit Enable DatabaseA
Idempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds value beyond annotations by clarifying that the operation is idempotent and safe if already enabled. It also notes the cost implication for free-tier apps. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words. First sentence delivers core purpose and idempotency; second sentence adds prerequisite and cost context. Front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple provisioning tool with one parameter and no output schema, the description covers the essential points: what it does, idempotency, prerequisite relation, and cost note. Missing details about response or side effects are minor given the simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Only one parameter (appId) with schema description already covering its source (from vibekit_list_apps). The description does not provide additional meaning beyond the schema; baseline of 3 is appropriate given 100% schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'Provision' and identifies the resource 'Postgres database for an app'. It distinguishes from sibling tools by noting it is a prerequisite for the vibekit_db_* tools, which are present in the sibling list.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

States explicitly that the tool is required before other database tools work, providing clear context. Also includes a note about free-tier needing an add-on, which is useful. Does not mention when not to use it, but the idempotency hint implies it can be run multiple times safely.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_get_appVibeKit Get AppA
Read-onlyIdempotent
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and idempotentHint=true, so the description's safety profile is clear. The description adds value by detailing the specific data fields returned, which goes beyond the schema. No contradictions with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the tool's purpose, and every word serves a function. Extremely concise with no extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple retrieval tool with one parameter, no output schema, and clear annotations, the description is sufficiently complete. It specifies the key fields returned and the source of the required ID. Could optionally mention the return format, but not necessary given the low complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a single parameter (appId) already described as 'App ID (from vibekit_list_apps)'. The description merely reinforces this guidance; no new semantic meaning is added beyond what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves full details for one hosted app, listing specific attributes (status, subdomain/URL, repo, runtime, database/domain config). It distinguishes from siblings like vibekit_list_apps (which lists all apps) and other app-specific tools like vibekit_app_env or vibekit_app_logs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly instructs to use the appId from vibekit_list_apps, providing clear sequential guidance. While it doesn't list when not to use this tool versus alternatives, the sibling context and the specific parameter source give sufficient direction for correct selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_get_skillVibeKit Get SkillA
Read-only
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesSkill ID from vibekit_list_skills (e.g. 'nextjs', 'trpc', 'auth')
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Description adds detail on content types (patterns, examples) beyond annotations' readOnlyHint and openWorldHint, which already indicate safe, open-ended retrieval.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences, front-loaded with purpose, no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

As a single-parameter read tool without output schema, the description adequately covers purpose, usage, and expected content.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers parameter id with full description; description adds no extra parameter semantics, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it fetches full skill content including implementation patterns, code examples, and best practices, distinguishing it from list_skills.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Advises to fetch on-demand for guidance on a specific topic, implying usage context, though explicit alternatives are not stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_get_taskVibeKit Get TaskA
Read-only
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
taskIdYesTask ID returned from vibekit_submit_task
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true; description adds 'status and result' context. No further behavioral details (auth, rate limits) given, but annotations cover core safety.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence, no wasted words. Front-loads the purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Lacks details on response structure (no output schema), but purpose and single parameter are well-covered. Mostly complete for a simple read tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 100% coverage for the single parameter (taskId), and description does not add meaning beyond the schema's own description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states verb (Get), resource (task), and scope (status and result of submitted task). Distinguishes from siblings like submit_task and cancel_task.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implies usage after submission via vibekit_submit_task. Does not explicitly state when not to use or alternatives, but context is clear enough.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_list_appsVibeKit List AppsA
Read-onlyIdempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and idempotentHint, so the description doesn't need to restate safety. It adds value by listing return fields (id, subdomain, status, live URL). No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no wasted words. The first sentence covers purpose and output, the second provides usage context. Front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with no parameters and no output schema, the description fully conveys what the tool does and what it returns. No gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist, and schema coverage is 100% with an empty schema. The description doesn't need to add parameter info; baseline for zero-param tools is 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists all hosted apps with specific fields (id, subdomain, status, live URL). Verb 'list' and resource 'apps' are explicit, and it distinguishes from sibling tools like vibekit_get_app.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly advises to start here to get an appId for other app tools, indicating a primary use case. It's clear guidance, though it doesn't mention when not to use or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_list_deploysVibeKit List DeploysA
Read-onlyIdempotent
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
limitNoMax deploys to return (default 20, max 50)
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and idempotentHint, so the agent knows it's safe. The description adds behavioral details: ordering (newest first), output includes status and commit info, and deployId availability. No contradictions with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no redundancy. The first sentence states purpose and output details; the second provides a usage hook for a sibling tool. Each word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no output schema and complete parameter coverage, the description gives sufficient context: ordering, included fields, and a usage hint. Could explicitly state it returns a list, but overall adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema covers 100% of parameters with descriptions (appId, limit). The description does not add new parameter semantics beyond the schema, but it does contextualize appId implicitly. With high schema coverage, baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists an app's recent deploys with ordering (newest first) and content (status, commit info). It also mentions a specific downstream use (finding deployId for rollback), distinguishing it from siblings like vibekit_deploy or vibekit_redeploy.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly suggests using this tool to obtain a deployId for vibekit_rollback_deploy, providing a concrete usage scenario. However, it does not explicitly state when not to use it or contrast with other listing tools like vibekit_list_apps.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_list_schedulesVibeKit List SchedulesA
Read-onlyIdempotent
Inspect

List all of the account's scheduled recurring tasks.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations provide readOnlyHint and idempotentHint, aligning with the 'list' operation. The description adds no additional behavioral details beyond annotations (e.g., pagination, ordering). No contradiction exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence with no fluff, front-loaded with the purpose. Every word contributes meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with no parameters and clear annotations, the description is sufficient. It explains what is listed (scheduled recurring tasks) but does not describe output format; however, no output schema exists, so this is acceptable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist (0 params, 100% schema coverage), so the baseline is 4. The description does not need to add parameter details and does not repeat schema information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'List all of the account's scheduled recurring tasks,' specifying the verb (list) and resource (scheduled recurring tasks). It distinguishes from siblings like vibekit_create_schedule and vibekit_list_tasks by focusing on schedules.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage context is implied ('account's scheduled recurring tasks') but no explicit guidance on when to use this tool vs alternatives like vibekit_list_tasks or vibekit_get_task. No exclusion criteria or prerequisites provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_list_skillsVibeKit List SkillsA
Read-only
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
tagNoFilter skills by tag (e.g. 'react', 'database', 'security')
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=true. The description adds that the tool returns IDs, names, descriptions, and tags, but no additional behavioral traits beyond what annotations imply. The description aligns with annotations and does not contradict them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description consists of two concise sentences with no superfluous words. The first sentence explains the tool's purpose and output, and the second provides usage guidance. It is front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given one optional parameter, no output schema, and annotations covering read-only/open-world behavior, the description is complete. It tells the agent what data will be returned and how to use it in the context of related tools like vibekit_get_skill.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema provides 100% coverage for the single optional 'tag' parameter with a clear description. The tool description does not add any extra meaning or constraints beyond the schema. Since schema coverage is high, a score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states what the tool does: 'List available implementation skills (IDs, names, descriptions, tags) from the VibeKit skills registry.' It also distinguishes it from the sibling tool vibekit_get_skill by noting the workflow 'Discover skills here before fetching one with vibekit_get_skill.'

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a clear usage context: use this tool to discover skills before fetching a specific one. It implicitly advises using this tool first when exploring skills. While it doesn't explicitly state when not to use it, the guidance is sufficient for the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_list_tasksVibeKit List TasksA
Read-onlyIdempotent
Inspect

List recent coding tasks, optionally filtered by status.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax number of tasks to return (default 10)
statusNoFilter by task status
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint and idempotentHint. The description adds context by specifying 'recent' tasks and optional filtering, which aligns with annotations. No contradiction. However, it does not define 'recent' (e.g., time range).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no filler. Every word is informative and necessary for understanding the tool's function.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with no output schema, the description covers the resource and optional filtering. However, it lacks details on sorting order (e.g., most recent first) or default limit behavior, which would enhance completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters. The description does not add additional meaning beyond what is in the schema, so a baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's verb 'list', resource 'recent coding tasks', and optional filtering by status. It distinguishes from siblings like get_task (single task) and submit_task (create) by focusing on listing recent tasks.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for listing tasks but does not explicitly state when to use this tool vs alternatives or provide exclusions. With many sibling tools (e.g., get_task, cancel_task), explicit guidance would be helpful.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_list_templatesVibeKit List TemplatesA
Read-onlyIdempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and idempotentHint=true. Description adds value by listing example templates, but does not detail output format or pagination. Still, additional context (examples) justifies above baseline.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with no waste: states purpose, gives examples, and provides usage guidance. Front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Simple tool with no parameters, good annotations, and no output schema. Description fully covers what an agent needs: what it does, when to use it, and example values.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters (schema coverage 100%), so baseline is 4. No additional parameter information needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states 'List the starter templates' (verb+resource) and provides examples like landing, dashboard, blog, saas, crud-api. Distinguishes from sibling tools that list other resources (e.g., apps, tasks).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says 'Call this before vibekit_create_app to choose a valid template', providing direct context for when to use and naming the specific sibling tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_qa_statusVibeKit QA StatusA
Read-only
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint=true, so the description's 'Get' aligns well. However, it adds no extra behavioral context, such as what happens if no QA results exist, which would be valuable. Since annotations cover the safety profile, a score of 3 is appropriate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence (8 words) with no wasted words. It is front-loaded with the action and resource, making it efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (1 parameter, read-only, no output schema), the description is minimally complete. It covers the basic purpose but lacks details on return format or edge cases, which could be helpful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a clear description for the single parameter ('App ID (from vibekit_list_apps)'). The description adds no additional meaning beyond the schema, so it meets the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: retrieving the latest automated QA results and status for an app. It uses a specific verb and resource, and it distinguishes itself from siblings like 'vibekit_run_qa' (which runs QA) and 'vibekit_get_app' (which gets general app info).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when or when not to use this tool is provided. There is no mention of prerequisites (e.g., QA must have been run) or alternatives, leaving the agent to infer context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_redeployVibeKit RedeployAInspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations show readOnlyHint false, but the description lacks details on side effects (e.g., app downtime, state changes, permissions needed). It only says 'redeploy' without disclosing that it may overwrite the current deployment or restart the app. More transparency is expected for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise, front-loaded sentences. Every word adds value: the action, the resource, and the usage context. No redundancy or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter and no output schema, the description covers the core purpose and usage. It lacks details on expected results (e.g., deploy status) and potential failure modes, but is mostly complete given the low complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter appId is fully described in the schema ('App ID (from vibekit_list_apps)' with 100% coverage). The description adds no additional semantic meaning beyond the schema, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Redeploy an existing app') and the purpose ('to pull and ship the latest code'). It distinguishes from siblings like vibekit_deploy (initial deploy) and vibekit_restart_app (no code pull) by specifying the use case: after pushing changes to GitHub.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'Use after pushing changes to the app's GitHub repo,' providing a clear scenario. It implies this is not for initial deployment, but does not explicitly exclude other sibling tools like vibekit_rollback_deploy. Still, the guidance is clear and actionable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_restart_appVibeKit Restart AppA
Idempotent
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is not read-only, is idempotent, and not destructive. The description adds context about restarting the container and applying env changes, which is useful beyond annotations. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: one sentence stating the action and a second sentence for usage guidance. No wasted words, front-loaded with the primary purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one required parameter, no output schema, and good annotations, the description covers purpose, usage scenario, and behavioral context completely.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 100% schema description coverage, the param 'appId' is already documented (from vibekit_list_apps). The description does not add further details, so it meets the baseline without adding extra value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the action 'Restart' and the resource 'hosted app's container', with specific use cases ('when an app is wedged, or to apply changed environment variables'). It clearly distinguishes from sibling tools like start_app and stop_app by specifying the restart action.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear guidance on when to use this tool (wedged app, applying env changes). It does not explicitly mention when not to use it or list alternatives, but the context is sufficient for an agent to differentiate from start/stop tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_rollback_deployVibeKit Rollback DeployA
Idempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
deployIdYesDeploy ID to roll back to (from vibekit_list_deploys)
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations (idempotentHint=true, destructiveHint=false), the description adds behavioral context: 'The container restarts on the rolled-back build; reversible by rolling forward again.' This informs the agent about side effects and reversibility, which is valuable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is highly concise: two sentences with no redundant words. The first sentence states the core purpose; the second adds behavioral details. It is optimally front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with two parameters, good annotations, and no output schema, the description covers all essential aspects: what it does, how to use it, and behavioral effects (restart, reversibility). No gaps or unnecessary information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and both parameters are already described with sources (appId from vibekit_list_apps, deployId from vibekit_list_deploys). The description merely echoes the deployId hint, adding no new semantic information beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('roll an app back to a previous deploy') and the resource ('app'), distinguishing it from siblings like vibekit_deploy and vibekit_redeploy by specifying the source of deployId. However, it does not explicitly differentiate from vibekit_restart_app, which also restarts containers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear usage guidance: use to rollback to a previous deploy, with instruction to obtain deployId from vibekit_list_deploys. It implies the tool is for rollback only, but does not explicitly state when not to use it or mention alternatives beyond the source command.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_run_qaVibeKit Run QABInspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds some context beyond annotations by specifying headless-browser checks, but it does not disclose other important behaviors such as resource impact, error handling, or expected duration. Given that annotations only provide readOnlyHint and destructiveHint, more detail is needed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with two short sentences that front-load the key action and provide a follow-up instruction. Every word adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema and the description does not specify what the tool returns (e.g., a task ID or status), which is critical for chaining. The mention of polling partially compensates, but the lack of return value information is a significant gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the single parameter appId is well described in the schema as 'App ID (from vibekit_list_apps)'. The description adds no additional semantics beyond the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool initiates an automated QA run with headless-browser checks against a hosted app. The verb 'kick off' and resource 'QA run' are specific, and it distinguishes from the sibling 'vibekit_qa_status' by mentioning polling for results.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage by stating to poll vibekit_qa_status for results, but it does not explicitly provide when-to-use or when-not-to-use guidance, nor does it mention prerequisites or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_set_envVibeKit Set Env VarsA
Idempotent
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
varsYesKey-value pairs to set as environment variables, e.g. { "API_KEY": "...", "NODE_ENV": "production" }
appIdYesApp ID (from vibekit_list_apps)
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations provide idempotentHint and destructiveHint, and the description adds crucial behavior: 'merges with existing' and the requirement to restart/redeploy for changes to take effect. This goes beyond the annotations and helps the agent understand side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences: the first states the core purpose, the second adds a critical usage note. No extraneous words, front-loaded, and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema, so the description appropriately focuses on input and side effects. The restart/redeploy note is a key behavioral detail. However, it does not describe the response format or error handling, which could be useful but is not critical for a set operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already describes both parameters with 100% coverage. The description does not add new parameter-level details beyond the schema, so it meets the baseline without exceeding it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Set or update environment variables for an app (merges with existing)', which clearly defines the action and resource. The note about merging distinguishes it from a simple overwrite, and the tool name and title align with the description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the use case (setting env vars for an app) but does not explicitly mention when not to use or provide alternatives. The sibling tool vibekit_app_env exists for viewing env vars, but no reference is made, leaving the agent to infer context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_start_appVibeKit Start AppA
Idempotent
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, idempotentHint=true, and destructiveHint=false. The description adds that the app must be 'stopped' and that the tool brings it 'back online,' which provides context beyond annotations but does not elaborate on permission or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences that front-load the action and purpose. Every word is necessary and there is no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple nature of the tool (one parameter, no output schema, annotations cover key traits), the description is complete. It explains when to use the tool and what it does, leaving no significant gaps for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage with a clear description for appId: 'App ID (from vibekit_list_apps).' The description does not add additional parameter semantics beyond what the schema provides, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Start a stopped hosted app's container' which specifies the verb (start) and resource (hosted app container). It also distinguishes from sibling vibekit_stop_app by mentioning bringing a stopped app back online.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'Use to bring an app stopped via vibekit_stop_app back online,' providing clear context for when to use this tool. It does not include explicit when-not-to-use or alternatives, but the complementary relationship with stop_app is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_stop_appVibeKit Stop AppA
Idempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdYesApp ID (from vibekit_list_apps)
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide idempotentHint=true and destructiveHint=false. Description adds context that the operation is non-destructive and reversible, which aligns with annotations. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences, front-loaded with the action, no redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter and no output schema, the description fully explains the effect and reversibility. No missing information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description covers appId adequately (links to vibekit_list_apps). Description does not add extra parameter semantics, but schema coverage is 100%, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the action (stop a hosted app's container) and distinguishes from deletion by noting the app stays and can be restarted with vibekit_start_app. Differentiates from sibling tools like vibekit_delete_app.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says when to use ('take an app offline without deleting it') and provides the alternative for restarting (vibekit_start_app). No ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_submit_taskVibeKit Submit TaskAInspect

Submit an autonomous coding task. The AI writes the code, commits to GitHub, and (by default) deploys to .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.

ParametersJSON Schema
NameRequiredDescriptionDefault
repoNoGitHub repo as 'owner/repo'. Optional — uses the user's current repo if omitted.
taskYesWhat you want built or changed. Be specific about features, design, and behavior.
branchNoGit branch to work on (default 'main')
deployNoAuto-deploy to <subdomain>.vibekit.bot when done (default true)
callbackUrlNoOptional webhook URL to receive a task-completion notification.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate non-read-only, non-destructive, open-world. Description adds value by detailing that the AI writes code, commits, and deploys by default, and returns a taskId. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the core purpose, no redundant words. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers purpose, usage, return value, and sibling differentiation. With 5 parameters and no output schema, the description is sufficiently complete for an agent to decide and invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 100% coverage with clear descriptions. Description adds minimal parameter-specific info beyond schema, but mentions default deploy behavior and return value (taskId). Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it submits an autonomous coding task with specifics (AI writes code, commits to GitHub, deploys). Distinguishes from siblings by mentioning polling/blocking tools and typical use cases 'build X' or 'change X'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides context for when to use (building/changing code) and explicitly names alternatives for polling and blocking (vibekit_get_task, vibekit_wait_for_task). Does not list explicit when-not-to-use scenarios, but the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vibekit_wait_for_taskVibeKit Wait for TaskA
Read-only
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskIdYesTask ID to wait for (from vibekit_submit_task)
timeoutSecondsNoMax seconds to wait (default 300; the remote connector caps this at 120)
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=true, which is consistent. The description adds polling interval (5 seconds), blocking behavior, timeout defaults and caps. It doesn't specify error handling on timeout, but overall clear.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no fluff, all information earns its place. Front-loaded with action and outcome.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description could be more explicit about the result format, but 'return its result' is reasonable for a blocking wait. The tool is simple, and the polling behavior is fully described.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description does not add new parameter details beyond what the schema already provides (e.g., timeoutSeconds description already includes cap and default).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool blocks until a task finishes, polls every 5 seconds, and returns the result. It explicitly names the verb-resource pair and differentiates from siblings like vibekit_get_task by indicating it's a blocking wait, and suggests usage after vibekit_submit_task.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear guidance: 'Use right after vibekit_submit_task when you want the final result inline.' This implies when to use, though it does not explicitly state when not to use (e.g., for non-blocking polling).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources