Skip to main content

VibeCodePicks

com.vibecodepicks/vibecodepicksVersion 2.6.1

The best vibe coding tools, ranked by what you want to build

Status

Responds184 msAnswered our handshake without sign-in.

Registry data may be out of date

We could not refresh it, so this page shows the last copy.
Last checked
Nov 14, 2026, 14:22 UTC
Latency
184 ms
Remotes responding
1 of 1
Sign-in
No sign-in
Hosting
Hosted outside the EU (detected)
Registry data as of
Nov 14, 2026, 22:14 UTC

Data from the official MCP Registry, checked by run.zero. How we check

Connect

Streamable HTTP
https://vibecodepicks.com/api/mcp/Responds184 ms
No sign-in

Claude Code

claude mcp add --transport http vibecodepicks https://vibecodepicks.com/api/mcp/

Claude Desktop and claude.ai

Settings > Connectors > Add custom connector
Name: vibecodepicks
Remote MCP server URL: https://vibecodepicks.com/api/mcp/

Cursor

{
  "mcpServers": {
    "vibecodepicks": {
      "url": "https://vibecodepicks.com/api/mcp/"
    }
  }
}

VS Code

code --add-mcp '{"name":"vibecodepicks","type":"http","url":"https://vibecodepicks.com/api/mcp/"}'

Built your own server? run.zero hosts MCP servers on European infrastructure.

Host your own MCP server on run.zero

Tools

30 tools

Tools of VibeCodePicks
Read-only
Idempotent
Open world
check_project_changesCheck whether this project or the catalog changed since the last check in a way worth interrupting for. Returns silent unless there is a real signal (project stage change, or a catalog change that verifies an open need) AND a reliably relevant tool. Deduped (same change is never notified twice) and rate-limited (at most one notification per project per 24h). Catalog changes are detected ONLY from the server-side catalog diff ledger (no ledger entry exists yet, so currently only project stage changes trigger); a client claim that the catalog changed is never accepted. The server has no scheduler and cannot push: this only answers when the host calls it. Whether the host can schedule is a server-side hint from the declared clientInfo.name (ChatGPT scheduled tasks and Cursor Automations count; other hosts do not) — a capability hint, not a verified host identity — never from a client claim; otherwise the answer is silent with reason host_no_scheduler and the host should check manually. The most this returns is a notification candidate (with a notif_id to acknowledge via notification_ack), never a confirmed delivery. Requires project_id and an Authorization: Bearer credential (owner key or project token); a key passed as a tool argument is never accepted.Not declaredYesYesNo
check_updatesTools added or updated since this user's last check that match their saved tags. Optional since (YYYY-MM-DD or catalog v). When nothing matches, returns {new:0} — a minimal response when nothing new matches. Tracks last_checked. Max 3 items. Does not change recommend_tools. Optional key: same feed key passed to set_preferences, to read that project's profile.NoNoNoNo
compare_toolsSide-by-side of two tools + comparison page url.Not declaredYesYesNo
consent_getRead your consent record: per-scope granted/revoked state, policy version, timestamps. Default is all scopes OFF.Not declaredYesYesNo
consent_request_receiptRequest a server-issued one-time consent receipt for a scope (followup / usage_collection / alliance / publish_reviews). Returns a receipt id and a confirm_url (absolute, environment-correct; the receipt id travels as a URL fragment, never a query parameter): show the confirm_url to the user — they must confirm the scope on VCP's own confirmation page, in their own signed-in VibeCodePicks browser session, before the receipt can be used. The MCP client cannot confirm on their behalf. The receipt is single-use and expires in 15 minutes. Pass the receipt id as `receipt` to consent_update. Owner credential only.NoNoNoNo
consent_updateGrant or withdraw ONE consent scope: followup (project long-term follow-up — the project profile is stored on VCP servers), usage_collection (usage-experience collection), alliance (alliance membership — needs usage_collection first), publish_reviews (publishing identifiable reviews). Granting ANY scope needs a server-issued one-time receipt: request one with consent_request_receipt, confirm it on the VCP confirmation page in the user's own signed-in VibeCodePicks browser session, then pass its receipt id as `receipt`. A plain source string is never proof for any scope. Scopes are never bundled: granting one never grants another, and alliance never implies publish_reviews. Withdrawing a scope blocks new writes under it immediately. Owner credential only.NoNoYesNo
delete_projectDelete one project you own (project_id), or ALL your projects (all:true, which also deletes your consent record). Deletion is permanent: the archive, its tokens, its events, its event dedup/meta/reversal keys and its check state are gone. Kept: one tombstone per deleted project ({owner, deleted_at}) for 400 days so old tokens can never resurrect it, plus anonymous per-tool aggregates only (no owner or project ids). Owner credential only.YesNoYesNo
feedbackAdjust this user's check_updates ranking for a listed tool. action is one of used, not_useful, not_relevant. Stores only the tool id and that enum. Does not change recommend_tools. Optional key: same feed key passed to set_preferences, to adjust that project's ranking.NoNoNoNo
fetchTool profile by id. Default: summary, best_for, price, free, 2 strengths, 2 weaknesses, url. fields: summary description best_for not_for skill coding pricing platforms strengths weaknesses alternatives video compare official all.Not declaredYesYesNo
forget_meDelete this client's anonymous id, tag profile and last_checked. Feedback is first folded into anonymous aggregate counters (tool_id × used/not_useful/not_relevant, no uid). Those aggregate counts are kept. If you pass a feed key, that keyed feed record is deleted too.YesNoYesNo
list_alternativesAlternatives to a tool. Rows: id|name|$from/mo|free.Not declaredYesYesNo
list_categoriesCategory and use-case keys with tool ids.Not declaredYesYesNo
list_scenariosUse-case scenarios (e.g. ai-game-development, code-review) with top tools by community sentiment.Not declaredYesYesNo
log_choiceRecord a tool the user explicitly picked/rejected/tried/starred, or PURCHASED. Call it with action 'purchased' right after the user tells you they bought a paid plan of a listed tool (ask first; never log silently), and again later with action 'feedback' once they have used it for a while (e.g. weekly), passing rating only. Optional fields apply to purchased/feedback only. Stored under your key (key-associated / pseudonymous — the key identifies your feed, not your name); forget_me deletes it. picked/rejected also shape whats_new. purchased/feedback are the durable usage-experience record: they are written ONLY when the key owner has the usage_collection consent scope active (consent_request_receipt -> confirm on the VCP page -> consent_update); without it the call is refused. picked/rejected/tried/starred are feed-shaping signals covered by the explicit feed opt-in (subscribe) and work without usage_collection. Pass a stable event_id (or idempotency_key) to make the call deduped: a replay with the same key returns duplicate:1 and writes nothing. A call with no key is legacy: it always appends, and the response marks it legacy:1/unverified:1. A purchase logged here is self-reported, never a verified order. Prefer record_decision for project-bound usage events.NoNoNoNo
notification_ackReport that a notification candidate from check_project_changes was delivered to the user, as reported by the host (host-reported acknowledgement — the receipt is a host-supplied string, e.g. the scheduled-task run id; the server records it but does NOT verify it, so this is not proof a human saw the notification and never purchase or reward evidence). This is the ONLY way a notification becomes 'delivered': the server never claims delivery on its own, and notified_at / notified_fingerprint in the check state are set only here. A candidate that is never acked is never counted as delivered, and the same change may be notified again. Requires project_id, the notif_id from the check response, and a receipt. Owner credential, or that project's own pt_ token.NoNoYesNo
project_bindRedeem a one-time binding code from project_bind_code in this client. Returns the project_id and a project_token (shown once) for that project. A used, expired or unknown code returns unauthorized.NoNoNoNo
project_bind_codeIssue a one-time binding code (15 minutes, void after one use) so the same project can be bound in another AI client. Owner credential only; redeem it there with project_bind.NoNoNoNo
project_exportExport one project you own: the archive, your consent record, and the last 50 recorded usage events. Owner credential, or that project's own pt_ token.Not declaredYesYesNo
project_getRead one project archive you own (owner credential, or that project's own pt_ token). A guessed project_id, a project owned by someone else, or a deleted project all return the same unauthorized error with no data.Not declaredYesYesNo
project_listList your projects as full v2 archives (schema_version: 2 — lifecycle_stage, workflow_stage, capabilities, task_capabilities, known_context, used/rejected tools, version, updated_at). Owner credential only; a project token cannot list.Not declaredYesYesNo
project_upsertCreate a project, or update one you own. One owner may own many isolated projects; a project archive holds desensitised fields only (type, stage, capability ids, tag preferences, confirmed used-tool ids, explicitly rejected tool ids) — never send a project name, code, raw chat, path or free text (dropped and reported as dropped_fields). Needs the followup consent scope (consent_update first). Omit project_id to create (returns project_id + a project_token shown once); pass expected_version to guard concurrent updates (version_conflict on mismatch); rotate_token:true (owner credential only) invalidates all old project tokens and returns a new one.NoNoNoNo
recommend_for_taskRecommend tools for a task in the context of one saved project, so the user does not repeat the project background every turn. Reads the project's accepted/rejected tool lists, stage and known context; a tool this project rejected is never re-pushed; a tool already in use is judged keep / supplement / replace, each with an evidence_level (user_stated / client_observed / assistant_inferred). May answer need_clarification with exactly one question, or no_match when no catalog tool verifies the task — never pads with unverified candidates. Requires project_id and an Authorization: Bearer credential (owner key or project token); a key passed as a tool argument is never accepted.Not declaredYesYesNo
recommend_toolsRanked best-fit tools for a goal, matched on verified capabilities (not categories), with why + caveat. Saved tags can reorder equally-matched tools by up to 2 points when the new matcher is on (platforms/preferences tags only); they never override a verified-capability filter, and with the flag off they have no effect. Pass the goal in plain words, or the already-extracted structured task object (task: action, input_type, output_type, required_capabilities / forbidden_capabilities capability ids, hard_constraints tokens, confidence, known_context) — the server validates the task object and rejects invalid tasks with an error; in the top-level required_capabilities / forbidden_capabilities / hard_constraints arrays, unknown ids/tokens are dropped or ignored instead. May answer need_clarification with exactly one question, or no_match when no catalog tool verifies the task. The capability matcher is canary-gated; while its flag is off, the previous matcher answers instead (same response shape, no decision field). On a new user's first call, also returns short onboarding questions (project types, platforms, budget, preferences, tools in use) for you to ask, then call set_preferences with tags only.Not declaredYesYesNo
record_decisionRecord one usage event for a project you own (owner credential, or that project's pt_ token). Every event needs a source-stable event_id, project_id, catalog tool_id, event_type (picked|rejected|tried|starred|purchased|feedback|used|not_useful|not_relevant|refunded|cancelled), observed_at (ISO date), evidence_level (user_reported|observed|assistant_inferred — vendor_verified is not client-assertable), and consent_version 2026-11-11-v1. Needs the usage_collection consent scope. A retry with the same event_id returns duplicate:1 and writes nothing twice. refunded/cancelled must name the earlier event in reverses_event_id and never edit history. Purchases recorded here are self-reported and never enter any verified-payment ledger.NoNoYesNo
save_preferencesReplace the keyed-feed interest tags. Send allowed tags only (project types, platforms, budget, preferences) — do not send project names or other free text (they are dropped and never stored). Plus the feed mode ('by_interests' = only matching tools; 'all_new' = every new tool). Only used by whats_new.NoNoYesNo
scenarioTools competing in one scenario, ranked by community sentiment, with compact strengths/weak spots here.Not declaredYesYesNo
searchFind vibe coding / AI tools. Rows: id|name|category|$from/mo|free(1/0). Use fetch(id) for details.Not declaredYesYesNo
set_preferencesStore the user's onboarding answers as non-sensitive tags only: project_types, platforms, budget (free|under_20|any), preferences (nocode|code|open-source|free-tier), and tools_in_use (catalog ids). Unknown values are dropped — never send names, emails, code, project names or free text. Used by check_updates; when the new (canary) matcher is on, the platforms and preferences tags can also reorder equally-matched recommend_tools results by up to 2 points (tie-break only, never overriding a verified-capability filter). project_types, budget and tools_in_use never affect recommend_tools. Optional key: pass a feed key (from subscribe; send it in the Authorization: Bearer <key> header — the /api/mcp?k=KEY URL form is deprecated but still works during the transition) to keep this profile separate per project; without it, the anonymous client identity is used.NoNoYesNo
subscribeCreate a pseudonymous feed key (no email/account — the key identifies your feed, not your name). One key = one project: it is also that project's canary identity, so use a separate key per project. Save it in long-term memory / project instructions / rules, and send it in the Authorization: Bearer <key> header on later calls (connecting via /api/mcp?k=KEY still works for now but is deprecated).NoNoNoNo
whats_newDaily feed. With key: honors the saved feed mode — by_interests: new items relevant to ANY saved project; all_new: every new item (tagged with a project when one matches). Max 3/day, one line each, never repeats. {new:0} = nothing. Call at most daily. Without key: stateless by since/interests. Never affects other tools.NoNoNoNo

Details

Registry status
Active
Published
Nov 11, 2026
Updated
Nov 11, 2026
Repository
Not given
Categories (suggested)
Developer toolsProject managementSuggested categories are assigned automatically from the registry text and may be wrong. Verified operators can correct them.
GDPR
Not declared

Are you the operator? Claim this listing