VibeRaven 是 AI Skill Hub 本期精选MCP工具之一。综合评分 8.0 分,整体质量较高。我们强烈推荐将其纳入你的 AI 工具库,帮助提升工作效率。
VibeRaven 是一款遵循 MCP(Model Context Protocol)标准协议的 AI 工具扩展。通过 MCP 协议,它可以让 Claude、Cursor 等主流 AI 客户端直接访问和操作外部工具、数据源和服务,实现 AI 能力的无缝扩展。无论是文件操作、数据库查询还是 API 调用,都可以通过自然语言在 AI 对话中直接触发,极大提升生产效率。
VibeRaven 是一款遵循 MCP(Model Context Protocol)标准协议的 AI 工具扩展。通过 MCP 协议,它可以让 Claude、Cursor 等主流 AI 客户端直接访问和操作外部工具、数据源和服务,实现 AI 能力的无缝扩展。无论是文件操作、数据库查询还是 API 调用,都可以通过自然语言在 AI 对话中直接触发,极大提升生产效率。
# 方式一:通过 Claude Code CLI 一键安装
claude skill install https://github.com/ohad6k/VibeRaven
# 方式二:手动配置 claude_desktop_config.json
{
"mcpServers": {
"viberaven": {
"command": "npx",
"args": ["-y", "viberaven"]
}
}
}
# 配置文件位置
# macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
# Windows: %APPDATA%/Claude/claude_desktop_config.json
# 安装后在 Claude 对话中直接使用 # 示例: 用户: 请帮我用 VibeRaven 执行以下任务... Claude: [自动调用 VibeRaven MCP 工具处理请求] # 查看可用工具列表 # 在 Claude 中输入:"列出所有可用的 MCP 工具"
// claude_desktop_config.json 配置示例
{
"mcpServers": {
"viberaven": {
"command": "npx",
"args": ["-y", "viberaven"],
"env": {
// "API_KEY": "your-api-key-here"
}
}
}
}
// 保存后重启 Claude Desktop 生效
VibeRaven checks AI-built apps on Vercel + Supabase for launch gaps before you ship: tables without RLS, permissive policies such as using (true), service_role keys in client code, anon-callable security definer functions, the wrong pooler port and unverified Stripe webhooks.
Run npx -y viberaven@1.6.12 check in your app's folder. It reads the repository on your machine, needs no account, and names the file and line for each gap.
<p> <a href="https://www.npmjs.com/package/viberaven"><img src="https://img.shields.io/badge/npm-viberaven-cb3837?style=for-the-badge&logo=npm&logoColor=white" height="40" alt="Install from npm" /></a> <a href="https://viberaven.dev/try"><img src="https://img.shields.io/badge/Try_it-viberaven.dev-e8c15a?style=for-the-badge&logoColor=black" height="40" alt="Try it on viberaven.dev" /></a> <a href="https://discord.gg/ZAJvazz63Y"><img src="https://img.shields.io/badge/Join-Discord-5865F2?style=for-the-badge&logo=discord&logoColor=white" height="40" alt="Join the Discord" /></a> </p>
<p> <a href="https://www.npmjs.com/package/viberaven"><img src="https://img.shields.io/npm/v/viberaven?color=e8c15a&label=npm" alt="npm version" /></a> <a href="https://www.npmjs.com/package/viberaven"><img src="https://img.shields.io/npm/dm/viberaven?color=e8c15a&label=downloads" alt="npm downloads" /></a> <a href="https://github.com/ohad6k/VibeRaven/stargazers"><img src="https://img.shields.io/github/stars/ohad6k/VibeRaven?style=flat&color=e8c15a&label=stars" alt="GitHub stars" /></a> <a href="./LICENSE"><img src="https://img.shields.io/badge/license-MIT-e8c15a" alt="MIT license" /></a> <a href="https://skills.sh"><img src="https://img.shields.io/badge/skills.sh-6--skill_pack-34d399" alt="skills.sh pack" /></a> <a href="https://x.com/VibeRavenStatio"><img src="https://img.shields.io/badge/X-follow-000000?logo=x&logoColor=white" alt="Follow on X" /></a> </p> <p> <a href="https://viberaven.dev">Website</a> · <a href="#what-it-checks">What it checks</a> · <a href="#when-to-use-it-and-when-not-to">When to use it</a> · <a href="#how-it-compares">How it compares</a> · <a href="#the-local-studio">Local Studio</a> · <a href="#agent-skills">Agent skills</a> · <a href="https://github.com/ohad6k/VibeRaven/releases">Releases</a> </p> </div>
Give coding agents the same context before they patch the repo:
npx -y viberaven@1.6.12 init --agents all --dry-run # preview
npx -y viberaven@1.6.12 init --agents all
npx -y viberaven@1.6.12 doctor --agents
This installs bounded rules (` ... `) into:
AGENTS.md, CLAUDE.md, GEMINI.md.cursor/rules/viberaven-core.mdc (plus scoped Supabase, deploy, and payments rules).github/copilot-instructions.md.viberaven/agent-context.md, .viberaven/mission-map.mdThe rules say when a pass helps (an AI-built app on Vercel + Supabase, before launch or handoff, or after a migration or policy change) and teach the loop: check, read .viberaven/, fix one gap, then check again once per batch of fixes. They are advice, not a gate: the user decides when to ship.
Requires Node.js 20 or newer. From your app's project root:
npx -y viberaven@1.6.12 check
npx -y viberaven@1.6.12 checknpx -y viberaven@1.6.12 --agent-modenpx.cmd if npx is blocked by the execution policy.It reads supabase/migrations, your client and server code, package.json and .env.example. It does not connect to your Supabase project or send requests to your app. It exits 1 when it finds a blocker, so it also works as a CI step.
From viberaven check 1.6.12 on a synthetic Next.js + Supabase app with one of each gap (project path shortened):
viberaven check · ~/my-app
🔴 No RLS policy proof in migrations (rls_disabled)
1 public table without row level security: public.profiles (supabase/migrations/20260301000000_init.sql:1). The Data API does not enforce row restrictions for roles and operations allowed by the table's grants. Verify those grants to determine who can read or change rows.
🔴 A policy lets anyone write every row (rls_policy_allows_all_write)
Policy "orders are editable" on public.orders (supabase/migrations/20260301000000_init.sql:13) lets anyone, signed in or not, update every row, to any values: using (true).
🔴 Service role key used in client code (service_role_key_in_client_code)
app/admin/page.tsx:4: creates a Supabase client with the service role key. This file ships to the browser, and the service role key skips RLS entirely. Move the call behind a server route or edge function and rotate the key.
🟡 Supabase connection is not using the pooler port (pooler_port_mismatch)
Found direct 5432 DATABASE_URL/POSTGRES_URL evidence. Vercel/serverless deployments should prefer Supabase transaction pooler port 6543.
🟡 Security definer function callable by the Data API roles (security_definer_function_executable)
public.grant_credits(uuid, integer) at supabase/migrations/20260301000000_init.sql:15 is security definer, so it runs with its owner's rights and RLS does not limit what it touches. No migration revokes EXECUTE from public, anon, authenticated, so anyone holding the anon key can call it at /rest/v1/rpc/grant_credits. If only the server calls it, add: revoke execute on function public.grant_credits(uuid, integer) from public, anon, authenticated; Fix: revoke execute on function public.grant_credits(uuid, integer) from public, anon, authenticated;
🟡 Stripe webhook does not verify the signature (unverified_stripe_webhook)
1 Stripe webhook handler without signature verification over the raw body: app/api/stripe/webhook/route.ts (no signature check (constructEvent), no stripe-signature header, no raw body). Anyone who finds the URL can post a fake event, for example a paid checkout.
🟡 Env vars used in code but missing from .env.example (env_var_drift)
Code reads 1 environment variable that .env.example does not document (NEXT_PUBLIC_SUPABASE_SERVICE_ROLE_KEY). Fresh clones, CI, and the production deploy can silently run without them.
🟡 Database queries with no row limit (unbounded_query)
1 file run Supabase selects or Prisma findMany with no .limit()/.range()/take bound (app\admin\page.tsx). These work with 50 test rows and melt with 50,000 production rows.
⚪ No error monitoring detected (missing_monitoring)
No Sentry/PostHog (or similar) instrumentation was found. Production errors will only surface when users complain.
Verdict: ❌ 3 blockers, 5 warnings · score 5
Fix: viberaven fix · Details: ~/my-app\.viberaven\agent-tasklist.md
Every result also lands in .viberaven/ as markdown and JSON (agent-tasklist.md, gate-result.json, context-map.json), so a coding agent and your git history can read it.
These tools answer different questions, and most launches need more than one of them.
| Tool | What it checks | Where it runs | How it fits with VibeRaven |
|---|---|---|---|
| [Supabase Security Advisor](https://supabase.com/docs/guides/observability/advisors) | Lints on the live database: RLS disabled, security definer views and functions, mutable search_path and more | Supabase dashboard, against the deployed project | Advisor sees what is live. VibeRaven reads the migrations before they are applied, plus the client code and env files the database never sees. |
| [OWASP ZAP](https://www.zaproxy.org/) | Dynamic scan of a running web app over HTTP: injection, XSS, headers, cookies | Against a deployed or local URL | ZAP tests the app from outside. VibeRaven reads the repo and knows Supabase grants, policies and keys. |
| [Semgrep](https://semgrep.dev/), [Snyk](https://snyk.io/), [CodeQL](https://codeql.github.com/) | General static analysis and dependency vulnerabilities across many languages | CI or locally, on source code | Broad code rules and CVEs. VibeRaven is narrow: Supabase RLS and grants, service_role exposure, the pooler port and Stripe webhooks. |
| [Playwright](https://playwright.dev/) | End-to-end tests you write, driving a real browser | Locally or in CI, against a running app | Playwright proves the flows you test. A test that signs in as user A and tries to read user B's rows is the live check that VibeRaven's RLS findings point to. |
一个有趣的开源MCP项目,具有较高的潜力
AI Skill Hub 为第三方内容聚合平台,本页面信息基于公开数据整理,不对工具功能和质量作任何法律背书。
建议在沙箱或测试环境中充分验证后,再部署至生产环境,并做好必要的安全评估。
✅ MIT 协议 — 最宽松的开源协议之一,可自由商用、修改、分发,仅需保留版权声明。
经综合评估,VibeRaven 在MCP工具赛道中表现稳健,质量优秀。如果你已有明确的使用需求,可以直接上手体验;如果还在评估阶段,建议对比同类工具后再做决策。
| 原始名称 | VibeRaven |
| 原始描述 | 开源MCP工具:The open-source cockpit for AI coding agents. Map your repo, control what your a。⭐20 · JavaScript |
| Topics | aiai-agentsjavascript |
| GitHub | https://github.com/ohad6k/VibeRaven |
| License | MIT |
| 语言 | JavaScript |
收录时间:2026-07-03 · 更新时间:2026-07-04 · License:MIT · AI Skill Hub 不对第三方内容的准确性作法律背书。
选择 Agent 类型,复制安装指令后粘贴到对应客户端