Vibe Shipped
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Sourced directory of real apps built with AI coding tools, plus build tools, harnesses, what is new.
| Author | io.github.sorindecu |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 2323 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"Vibe Shipped": {
"url": "https://vibeshipped.io/api/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (16)
whats_newread-onlyDated changelog of the Vibe Shipped directory: apps built with AI, AI build tools, Agent Toolbox entries and agent harnesses that were added or updated, newest first. Use when: the user asks what changed recently in AI coding tools, or you want to refresh earlier results since a date. Do not use for: keyword search (search_apps) or full lists (list_tools, list_harnesses). Returns: items[] with type, slug, name, change (added|updated), date (YYYY-MM-DD), url to cite, source. Limits: since is inclusive; type takes app, tool, agent-tool, harness (comma-separated); limit 1-500, default 20. Example: {"since":"2026-10-15","type":"harness,agent-tool","limit":20}
Parameters:
type— string — Entry type filter: app, tool, agent-tool or harness. Comma-separate several, e.g. "harness,agent-tool".limit— integer — Max items to return.since— string — Only changes on or after this date, format YYYY-MM-DD.
Hints: read-only yes · destructive no · idempotent yes · open-world no
search_appsread-onlyFind real, shipped apps built with AI coding tools (Cursor, Claude Code, Lovable, Bolt, Replit, v0, Windsurf, Rork, Base44). Every app links to a public source showing which tool built it. Use when: the user wants real examples of apps built with a tool, in a category, or matching keywords. Do not use for: one known slug (get_app), newest apps without filters (latest_apps), revenue rankings (get_vibe50), general coding help. Returns: total and apps[] with slug, title, one_liner, tools, category, revenue_stated, monthly_usd, evidence_tier (verified|documented|claim), revenue_date, source_url, link (cite this). get_app has the evidence basis. Limits: q is AND keyword match over title, one-liner, category, builder, tools and stack; limit 1-50, default 10. Revenue is as stated, not audited. Example: {"tool":"lovable","q":"saas","limit":5}
Parameters:
q— string — Keywords; every word must match.tool— string — Tool id: cursor, claude-code, lovable, bolt, replit, v0, windsurf, rork, base44, grok-bot, other.limit— integer — Max results.category— string — Category id as listed by the site, e.g. consumer, saas, dev-tools, mobile-app.
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_appread-onlyFull record for one listed app by slug. Use when: you have a slug from search_apps, latest_apps or get_vibe50 and need its source, website, builder, stack, stated revenue or evidence tier. Do not use for: discovering apps (search_apps). Returns: the app record, including evidence_tier, evidence_basis, evidence_checked_at and link; or isError code not_found. Limits: Only live listings are returned. Example: {"slug":"stella"}
Parameters:
slug(required) — string — App slug, e.g. "stella".
Hints: read-only yes · destructive no · idempotent yes · open-world no
list_toolsread-onlyEvery AI build tool Vibe Shipped tracks (Cursor, Claude Code, Lovable, Bolt, Replit, v0, Windsurf, Rork, Base44) with official pricing and app stats. Use when: the user asks which AI build tools exist or what they cost, or you need tool ids for other calls. Do not use for: a ranking (top_tools), 2-4 side by side (compare_tools), coding-agent harnesses (list_harnesses). Returns: per tool: what, best_for, pricing (copied from the official page), pricing_url, pricing_checked (date), app count, stated revenue total and median, top apps, new_last_30d. Limits: No parameters. pricing null means no clear price on the official page; cite pricing_checked. Example: {}
Hints: read-only yes · destructive no · idempotent yes · open-world no
compare_toolsread-onlySide-by-side sourced facts for 2-4 slugs, mixing AI build tools, agent harnesses and Agent Toolbox entries. Answers "X vs Y" questions such as Cursor vs Claude Code. Use when: the user is choosing between specific named tools. Do not use for: open-ended "what should I use to build X" (recommend_stack); a single tool (get_tool). Returns: per slug: pricing with checked date and source, free tier, lowest stated $/mo, apps on Vibe Shipped, licence, interface, GitHub stars with date, MCP/subagents/headless/sandboxing (null = not stated). Limits: 2-4 slugs; isError bad_input if fewer than 2 resolve. Example: {"tools":["claude-code","openai-codex-cli","aider"]}
Parameters:
tools(required) — array — 2-4 slugs from list_tools, list_harnesses or list_agent_tools.
Hints: read-only yes · destructive no · idempotent yes · open-world no
recommend_stackread-onlyRank AI build tools and coding-agent harnesses for an app idea with deterministic, documented scoring (no LLM). Use when: the user describes what they want to build and asks which AI tool to use. Do not use for: the user already named the tools to choose between (compare_tools). Returns: ranked results with score breakdown, pricing with checked date and source, and example apps with links. Limits: Scores use shipped-app counts, idea match, platform, experience, budget vs stated pricing and preferred harness. limit 1-10, default 5. Example: {"idea":"habit tracker mobile app","platform":"mobile","experience":"beginner","budget_usd_month":25}
Parameters:
idea(required) — string — The app idea in plain text.limit— integer — Number of recommendations.platform— string — Target platform.experience— string — The user's coding experience.budget_usd_month— number — Monthly tool budget in USD; 0 = free tiers only.preferred_harness— string — Slug or name the user prefers, e.g. claude-code.
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_toolread-onlyFull sourced facts for one AI build tool, agent harness or Agent Toolbox entry. Use when: you need pricing, licence, features or app stats for a single slug. Do not use for: several tools at once (compare_tools). Returns: pricing with pricing_checked and source, last_checked, app stats and Vibe Shipped links; or isError not_found. Limits: Slugs come from list_tools, list_harnesses or list_agent_tools. Example: {"slug":"lovable"}
Parameters:
slug(required) — string — Tool, harness or Agent Toolbox slug, e.g. cursor, claude-code, cline.
Hints: read-only yes · destructive no · idempotent yes · open-world no
top_toolsread-onlyRank AI build tools by one metric computed from Vibe Shipped listings. Use when: the user asks which AI tool has the most shipped apps, the most stated revenue, or is trending. Do not use for: full stats without a ranking (list_tools). Returns: tools[] ordered by the metric, with the same fields as list_tools. Limits: by = count | revenue (total stated monthly USD) | median | trending (new listings in the last 30 days); limit 1-20. Revenue is as stated, not audited. Example: {"by":"revenue","limit":5}
Parameters:
by— string — Ranking metric.limit— integer — Number of tools.
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_vibe50read-onlyThe Vibe Shipped 50: apps built with AI coding tools, ranked by stated, sourced monthly USD revenue. Use when: the user asks how much vibe-coded apps earn, or for the top earners built with a tool. Do not use for: finding apps by keyword (search_apps). Returns: apps[] with rank, title, revenue_stated, monthly_usd, evidence_tier, revenue_date, stale flag, source_url, link; total_ranked. include_unranked adds notable unranked apps and the method. Limits: limit 1-50, default 20. Always say figures are as stated and give the evidence tier. Example: {"tool":"cursor","limit":10}
Parameters:
tool— string — Only apps built with this tool id, e.g. cursor.limit— integer — Number of ranked apps.include_unranked— boolean — Also return the unranked/notable list.
Hints: read-only yes · destructive no · idempotent yes · open-world no
list_agent_toolsread-onlyThe Agent Toolbox: agentic build tools (Cline, Aider, OpenHands, Codex CLI, Gemini CLI, Devin, Jules, Kiro, Amp, Warp, n8n, Browser Use and more) by category. Use when: the user wants agent options of a kind (CLI, IDE, autonomous SWE, browser, workflow), MCP servers, AI coding models, or stack pieces (hosting, database, auth, payments) with dated official pricing, or only open-source ones. Do not use for: harness features such as MCP or sandboxing (list_harnesses). Returns: per tool: what, best_for, licence (GitHub-checked, with date), pricing with source and pricing_checked, last_checked. Limits: category is one of the enum values; open_source true filters to open source; limit 1-100, default 20 (total says how many matched). Example: {"category":"CLI agent","open_source":true}
Parameters:
limit— integer — Max tools to return.category— string — Category (agents, plus MCP servers, AI coding models, hosting, databases, auth, payments).open_source— boolean — true = only open-source tools.
Hints: read-only yes · destructive no · idempotent yes · open-world no
list_harnessesread-onlyCoding-agent harnesses (Claude Code, Codex CLI, Gemini CLI, OpenCode, goose, Cline, Aider...) and agent frameworks (Claude Agent SDK, OpenAI Agents SDK, smolagents, Mastra, LangGraph) with docs-verified facts. Use when: the user is choosing a coding agent or agent framework by licence, interface, model support or features. Do not use for: one harness in depth (get_harness); app builders such as Lovable (list_tools). Returns: per harness: maker, interface, licence, GitHub stars with date, models, pricing with pricing_checked, features (MCP, subagents, headless, sandboxing) with features_checked, last_checked. Limits: Filters: kind, interface prefix, open_source, byo_model, mcp, q; limit 1-100, default 25. null means not stated or not verified, never 'no'. Sources per harness via get_harness. Example: {"kind":"coding agent","open_source":true,"mcp":true}
Parameters:
q— string — Substring match on name, maker or description.mcp— boolean — true = only harnesses with documented MCP support.kind— string — Harness kind.limit— integer — Max harnesses to return.byo_model— boolean — true = only harnesses documented to accept your own model/provider.interface— string — Interface prefix, e.g. CLI, IDE, desktop, SDK.open_source— boolean — true = only open source; false = only not open source.
Hints: read-only yes · destructive no · idempotent yes · open-world no
get_harnessread-onlyFull sourced record for one agent harness by slug. Use when: you have a harness slug and need its sources, caveats, pricing or feature evidence. Do not use for: listing or filtering harnesses (list_harnesses). Returns: the harness with source URLs, dated checks (pricing, features, stars, last_checked) and related Vibe Shipped pages; or isError not_found. Limits: Slugs come from list_harnesses. Example: {"slug":"openai-codex-cli"}
Parameters:
slug(required) — string — Harness slug, e.g. claude-code, openai-codex-cli, aider, langgraph.
Hints: read-only yes · destructive no · idempotent yes · open-world no
latest_appsread-onlyThe most recently added apps built with AI, newest first. Use when: the user asks what was shipped recently, with no filter. Do not use for: filtering by tool or keyword (search_apps); tool and harness changes (whats_new). Returns: apps[] with the same fields as search_apps. Limits: limit 1-50, default 10. Example: {"limit":5}
Parameters:
limit— integer — Number of apps.
Hints: read-only yes · destructive no · idempotent yes · open-world no
submit_appSend an app built with AI to the Vibe Shipped human review queue. Use when: the user explicitly asks to list their own app and gives a public source (post, launch page or interview) naming the AI tool used. Do not use for: apps the user did not ask to submit, or apps without a public source. Returns: status pending, or isError with the validation message. Limits: Write, not destructive: nothing is published automatically. Example: {"title":"Habitly","url":"https://habitly.app","source_url":"https://x.com/maker/status/123","one_liner":"Habit tracker","tools":["lovable"],"builder_name":"Ana"}
Parameters:
title(required) — string — App name.url(required) — string — App website.source_url(required) — string — Public post proving it was built with AI.tools— array — Tool ids used, e.g. ["cursor"].one_liner— string — One-sentence description.builder_name— string — Maker's name or handle.
Hints: read-only no · destructive no · idempotent no · open-world yes
subscribe_newsletterSubscribe the user's own email to a Vibe Shipped newsletter: daily (new apps built with AI) or agent-brief (weekly AI coding tools and harnesses). Use when: the user explicitly asks to subscribe and gives their own email. Do not use for: any address the user did not provide. Returns: a receipt usable to unsubscribe (DELETE /api/subscribe). Limits: Write; idempotent per email and list. Example: {"email":"[email protected]","list":"agent-brief"}
Parameters:
email(required) — string — The user's own email address.list— string — Which newsletter.
Hints: read-only no · destructive no · idempotent yes · open-world yes
get_sponsorship_inforead-onlyVibe Shipped sponsorship offers (featured listing, week sponsor, Weekly Top 10 presenting sponsor, month takeover) with prices and Stripe checkout links. Use when: the user asks about advertising or sponsoring on Vibe Shipped. Do not use for: paying on the user's behalf; hand the checkout URL to the human. Returns: offers[], a checkout object for the $300 Week Sponsor, contact email and sponsor page URL. Limits: No parameters. Sponsored placements are labeled; rankings are not for sale. Example: {}
Hints: read-only yes · destructive no · idempotent yes · open-world no
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.