Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Metacognitive AI agent oversight: adaptive CPI interrupts for alignment, reflection and safety
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
YOUR_API_KEYValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"vibe-check": {
"command": "npx",
"args": [
"-y",
"@pv-bhat/vibe-check-mcp"
],
"env": {
"YOUR_API_KEY": "your-value"
}
}
}
}Run this in your terminal
claude mcp add vibe-check --env YOUR_API_KEY=your-value -- npx -y @pv-bhat/vibe-check-mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"vibe-check": {
"command": "npx",
"args": [
"-y",
"@pv-bhat/vibe-check-mcp"
],
"env": {
"YOUR_API_KEY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"vibe-check": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@pv-bhat/vibe-check-mcp"
],
"env": {
"YOUR_API_KEY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 8, 2026
The registry name was verified with the GitHub account PV-Bhat, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: YOUR_API_KEY
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (1.0.0) reached the registry 14 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, Aiterm MCP
Servers in the same category from other makers, sorted by stars.
Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Persistent terminals and one launcher for Claude, Codex, Grok, Cursor, and Antigravity harnesses.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
This project is in maintenance mode. Active feature development has ended; only maintenance patches (security and bug fixes) are published. v2.9.0 is the latest maintenance release. The server remains fully functional. Community forks and contributions are welcome under the MIT license.
KISS overzealous agents goodbye. Plug & play agent oversight tool.
Based on research:
In our study agents calling Vibe Check improved success +27% and halved harmful actions -41%
Featured on PulseMCP “Most Popular (This Week)” • 5k+ monthly calls on Smithery.ai • research-backed oversight • STDIO + streamable HTTP transport
*Plug-and-play mentor layer that stops agents from over-engineering and keeps them on the minimal viable path — research-backed MCP server keeping LLMs aligned, reflective and safe.*
Trusted by developers across MCP platforms and registries
Run the server directly from npm without a local installation. Requires Node >=20. Choose a transport:
npx -y @pv-bhat/vibe-check-mcp start --stdio
[MCP] stdio transport connected indicates the process is waiting for the client.{
"mcpServers": { "vibe-check-mcp": { "command": "npx", "args": ["-y", "@pv-bhat/vibe-check-mcp", "start", "--stdio"] } } }
npx -y @pv-bhat/vibe-check-mcp start --http --port 2091
curl http://127.0.0.1:2091/healthz to confirm the service is live.http://127.0.0.1:2091/mcp.npx downloads the package on demand for both options. For detailed client setup and other commands like install and doctor, see the documentation below.
Vibe Check MCP keeps agents on the minimal viable path and escalates complexity only when evidence demands it. Vibe Check MCP is a lightweight server implementing Anthropic's Model Context Protocol. It acts as an AI meta-mentor for your agents, interrupting pattern inertia with Chain-Pattern Interrupts (CPI) to prevent Reasoning Lock-In (RLI). Think of it as a rubber-duck debugger for LLMs – a quick sanity check before your agent goes down the wrong path.
Vibe Check MCP pairs a metacognitive signal layer with CPI so agents can pause when risk spikes. Vibe Check surfaces traits, uncertainty, and risk scores; CPI consumes those triggers and enforces an intervention policy before the agent resumes. See the CPI integration guide and the CPI repo at https://github.com/PV-Bhat/cpi for wiring details.
Vibe Check invokes a second LLM to give meta-cognitive feedback to your main agent. Integrating vibe_check calls into agent system prompts and instructing tool calls before irreversible actions significantly improves agent alignment and common-sense. The high-level component map: docs/architecture.md, while the CPI handoff diagram and example shim are captured in docs/integrations/cpi.md.
Large language models can confidently follow flawed plans. Without an external nudge they may spiral into overengineering or misalignment. Vibe Check provides that nudge through short reflective pauses, improving reliability and safety.
| Feature | Description | Benefits |
|---|---|---|
| CPI Adaptive Interrupts | Phase-aware prompts that challenge assumptions | alignment, robustness |
| Multi-provider LLM | Gemini 3.6, Claude 5, GPT-5.6, and OpenRouter support | flexibility |
| History Continuity | Summarizes prior advice when sessionId is supplied | context retention |
| Optional vibe_learn | Log mistakes and fixes for future reflection | self-improvement |
Maintenance Notice: This project is in maintenance mode and is no longer under active feature development. It remains fully functional and available under the MIT license. Community forks are welcome. For details, see the Changelog.
src/utils/models.ts)@google/generative-ai package to the unified @google/genai SDK*, Host headers are validated to block DNS rebinding, and the JSON body cap is explicit and validatednpm audit is clean — 10 advisories resolved across axios, the MCP SDK's Hono stack, form-data, fast-uri, postcss and the test toolchainbody-parser direct dependency was droppedUse a lightweight “constitution” to enforce rules per sessionId that CPI will honor. Eg. constitution rules: “no external network calls,” “prefer unit tests before refactors,” “never write secrets to disk.”
API (tools):
update_constitution({ sessionId, rules }) → merges/sets rule set for the sessionreset_constitution({ sessionId }) → clears session rulescheck_constitution({ sessionId }) → returns effective rules for the session# Clone and install
git clone https://github.com/PV-Bhat/vibe-check-mcp-server.git cd vibe-check-mcp-server npm ci npm run build npm test
Use **npm** for all workflows (`npm ci`, `npm run build`, `npm test`). This project targets Node **>=20**.
Create a .env file with the API keys you plan to use:
# Gemini (default)
GEMINI_API_KEY=your_gemini_api_key
OPENAI_API_KEY=your_openai_api_key OPENROUTER_API_KEY=your_openrouter_api_key ANTHROPIC_API_KEY=your_anthropic_api_key ANTHROPIC_AUTH_TOKEN=your_proxy_bearer_token ANTHROPIC_BASE_URL=https://api.anthropic.com ANTHROPIC_VERSION=2023-06-01
DEFAULT_LLM_PROVIDER=gemini
Gemini runs natively against Google AI Studio (the Gemini Developer API) through the unified @google/genai SDK. Any model ID the provider accepts will work — the table lists the defaults and the suggestions surfaced to agents in the vibe_check tool schema.
| Provider | Default model | Also supported |
|---|---|---|
gemini | gemini-3.6-flash | gemini-3.5-flash, gemini-3.5-flash-lite, gemini-2.5-pro, gemini-2.5-flash |
anthropic | claude-sonnet-5 | claude-opus-5, claude-fable-5, claude-haiku-4-5-20251001 |
openai | gpt-5.6-terra | gpt-5.6-sol, gpt-5.6-luna |
openrouter | *(none — required)* | any OpenRouter slug, e.g. google/gemini-3.6-flash |
Set the default globally with DEFAULT_LLM_PROVIDER / DEFAULT_MODEL, or per call with modelOverride. DEFAULT_MODEL names a model of DEFAULT_LLM_PROVIDER; a call that overrides the provider without naming a model falls through to that provider's default rather than re
Only the beginning is shown; read the rest in the repo