vibe-check-mcp-server
The definitive Vibe Coder's sanity check MCP server: Prevent cascading errors in AI workflows by implementing strategic pattern interrupts. Uses tool call "Vibe Check" with LearnLM 2.0 Flash, fine-tuned for pedagogy and metacognition to enhance complex workflow strategy, and prevents tunnel vision errors.
- β’ Core MCP protocol features implemented (29/40)
- β’ GitHub community is not mature yet (12/20)
- β’ Optimal dependency management (20/20)
- β’ Full deployment maturity (10/10)
- β’ Documentation (8/8)
- β’ Archestra MCP Trust badge (2/2)
{
"vibe-check-mcp-server": {
"command": "npm",
"args": [
"start"
],
"env": {}
},
"vibe-check-mcp-docker": {
"command": "docker",
"args": [
"run",
"-e",
"GEMINI_API_KEY=your_gemini_api_key",
"-p",
"3000:3000",
"vibe-check-mcp"
],
"env": {
"GEMINI_API_KEY": "your_gemini_api_key"
}
},
"vibe-check-mcp-with-config": {
"command": "node",
"args": [
"/path/to/vibe-check-mcp/build/index.js"
],
"env": {
"GEMINI_API_KEY": "YOUR_GEMINI_API_KEY"
}
}
}
π§ VibeCheck MCP v2.5.0
CPI Γ Vibe Check
Vibe Check uses CPI (Chain-Pattern Interrupt) for the runtime oversight. Across 153 runs in the study, success increased from ~27% β 54% and harm dropped from ~83% β 42% when CPI was applied.
Adaptive metacognitive oversight for autonomous AI agents β a research-backed MCP server keeping LLMs aligned, reflective and safe.
The Most Widely-Deployed Feedback Layer in the MCP Ecosystem
~17k+ downloads on PulseMCP and counting.
Over 1k monthly tool calls via Smithery.
Listed on 12+ MCP platforms.
Security rating 4.3 on MSEEP.ai.
Table of Contents
- What is VibeCheck MCP?
- The Problem: Pattern Inertia & Reasoning Lock-In
- Key Features
- What's New in v2.5.0
- Quickstart & Installation
- Usage Examples
- Adaptive Metacognitive Interrupts (CPI)
- Agent Prompting Essentials
- When to Use Each Tool
- Documentation
- Research & Philosophy
- Security
- Roadmap
- Contributing & Community
- FAQ
- Find VibeCheck MCP on
- Credits & License
What is VibeCheck MCP?
VibeCheck 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.
The Problem: Pattern Inertia & Reasoning Lock-In
Large language models can confidently follow flawed plans. Without an external nudge they may spiral into overengineering or misalignment. VibeCheck provides that nudge through short reflective pauses, improving reliability and safety.
Key Features
Feature | Description | Benefits |
---|---|---|
CPI Adaptive Interrupts | Phase-aware prompts that challenge assumptions | alignment, robustness |
Multi-provider LLM | Gemini, OpenAI 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 |
What's New in v2.5.0
- Transport β Streamable HTTP (JSON-RPC over HTTP; SSE optional). No more STDIO coupling; concurrent clients supported.
- Session βConstitutionβ: three tool calls to configure user rules per
sessionId
βupdate_constitution
,reset_constitution
,check_constitution
. - Research surfaced: banner + concise CPI summary and links (RG + Git + Zenodo).
Quickstart & Installation
# Clone and install
git clone https://github.com/PV-Bhat/vibe-check-mcp-server.git
cd vibe-check-mcp-server
npm install
npm run build
This project targets Node 20+. If you see a TypeScript error about a duplicate require
declaration when building with Node 20.19.3, ensure your dependencies are up to date (npm install
) or use the Docker setup below which handles the build automatically.
Create a .env
file with the API keys you plan to use:
# Gemini (default)
GEMINI_API_KEY=your_gemini_api_key
# Optional providers
OPENAI_API_KEY=your_openai_api_key
OPENROUTER_API_KEY=your_openrouter_api_key
# Optional overrides
DEFAULT_LLM_PROVIDER=gemini
DEFAULT_MODEL=gemini-2.5-pro
Start the server:
npm start
See docs/TESTING.md for instructions on how to run tests.
Docker
The repository includes a helper script for one-command setup. It builds the image, saves your GEMINI_API_KEY
and configures the container to start automatically whenever you log in:
bash scripts/docker-setup.sh
This script:
- Creates
~/vibe-check-mcp
for persistent data - Builds the Docker image and sets up
docker-compose.yml
- Prompts for your API key and writes
~/vibe-check-mcp/.env
- Installs a systemd service (Linux) or LaunchAgent (macOS) so the container starts at login
- Generates
vibe-check-tcp-wrapper.sh
which proxies Cursor IDE to the server
After running it, open Cursor IDE β Settings β MCP and add a new server of type Command pointing to:
~/vibe-check-mcp/vibe-check-tcp-wrapper.sh
See Automatic Docker Setup for full details.
If you prefer to run the commands manually:
docker build -t vibe-check-mcp .
docker run -e GEMINI_API_KEY=your_gemini_api_key -p 3000:3000 vibe-check-mcp
Integrating with Claude Desktop
Add to claude_desktop_config.json
:
"vibe-check": {
"command": "node",
"args": ["/path/to/vibe-check-mcp/build/index.js"],
"env": { "GEMINI_API_KEY": "YOUR_GEMINI_API_KEY" }
}
Research & Philosophy
CPI (Chain-Pattern Interrupt) is the research-backed oversight method behind Vibe Check. It injects brief, well-timed βpause pointsβ at risk inflection moments to re-align the agent to the userβs true priority, preventing destructive cascades and reasoning lock-in (RLI). In pooled evaluation across 153 runs, CPI nearly doubles success (~27%β54%) and roughly halves harmful actions (~83%β42%). Optimal interrupt dosage is ~10β20% of steps. Vibe Check MCP implements CPI as an external mentor layer at test time.
Links:
- π CPI Paper (ResearchGate) β primary canonical link (banner above).
- π CPI Reference Implementation (GitHub): https://github.com/PV-Bhat/cpi
- π MURST Zenodo DOI (RSRC archival): https://doi.org/10.5281/zenodo.14851363
Usage Examples
import { vibe_check } from 'vibe-check-mcp';
const result = await vibe_check({
goal: 'Write unit tests',
plan: 'Use vitest for coverage',
sessionId: 'demo1'
});
console.log(result.questions);
flowchart TD
A[Agent Phase] --> B{Monitor Progress}
B -- high risk --> C[CPI Interrupt]
C --> D[Reflect & Adjust]
B -- smooth --> E[Continue]
Adaptive Metacognitive Interrupts (CPI)
Advanced CPI Details
The CPI architecture monitors planning, implementation and review phases. When uncertainty spikes, VibeCheck pauses execution, poses clarifying questions and resumes once the agent acknowledges the feedback.Agent Prompting Essentials
In your agent's system prompt, make it clear that vibe_check
is a mandatory tool for reflection. Always pass the full user request and other relevant context. After correcting a mistake, you can optionally log it with vibe_learn
to build a history for future analysis.
Example snippet:
As an autonomous agent you will:
1. Call vibe_check after planning and before major actions.
2. Provide the full user request and your current plan.
3. Optionally, record resolved issues with vibe_learn.
When to Use Each Tool
Tool | Purpose |
---|---|
π vibe_check | Challenge assumptions and prevent tunnel vision |
π vibe_learn | Capture mistakes, preferences and successes |
Documentation
- Agent Prompting Strategies
- Advanced Integration
- Technical Reference
- Automatic Docker Setup
- Philosophy
- Case Studies
- Changelog
Security
This repository includes a CI-based security scan that runs on every pull request. It checks dependencies with npm audit
and scans the source for risky patterns. See SECURITY.md for details and how to report issues.
Roadmap
- Benchmarks and latency profiling
- Adaptive tuning based on agent performance
- Multi-agent cooperation support
- Optional human-in-the-loop review
Contributing & Community
Contributions are welcome! See CONTRIBUTING.md.
FAQ
- Does it increase latency? A single CPI call typically adds ~1 second depending on the provider.
- Can I disable logging? Yes,
vibe_learn
is optional.
Find VibeCheck MCP on
- π MSEEP
- π‘ MCP Servers
- π§ MCP.so
- π οΈ Creati.ai
- π‘ Pulse MCP
- π Playbooks.com
- π§° MCPHub.tools
- π MCP Directory
- π§ MagicSlides
- ποΈ AIAgentsList
Star History
Credits & License
VibeCheck MCP is released under the MIT License. Built for reliable, enterprise-ready AI agents.
[](https://archestra.ai/mcp-catalog/pv-bhat__vibe-check-mcp-server)
π§ VibeCheck MCP v2.5.0
CPI Γ Vibe Check
Vibe Check uses CPI (Chain-Pattern Interrupt) for the runtime oversight. Across 153 runs in the study, success increased from ~27% β 54% and harm dropped from ~83% β 42% when CPI was applied.
Adaptive metacognitive oversight for autonomous AI agents β a research-backed MCP server keeping LLMs aligned, reflective and safe.
The Most Widely-Deployed Feedback Layer in the MCP Ecosystem
~17k+ downloads on PulseMCP and counting.
Over 1k monthly tool calls via Smithery.
Listed on 12+ MCP platforms.
Security rating 4.3 on MSEEP.ai.
Table of Contents
- What is VibeCheck MCP?
- The Problem: Pattern Inertia & Reasoning Lock-In
- Key Features
- What's New in v2.5.0
- Quickstart & Installation
- Usage Examples
- Adaptive Metacognitive Interrupts (CPI)
- Agent Prompting Essentials
- When to Use Each Tool
- Documentation
- Research & Philosophy
- Security
- Roadmap
- Contributing & Community
- FAQ
- Find VibeCheck MCP on
- Credits & License
What is VibeCheck MCP?
VibeCheck 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.
The Problem: Pattern Inertia & Reasoning Lock-In
Large language models can confidently follow flawed plans. Without an external nudge they may spiral into overengineering or misalignment. VibeCheck provides that nudge through short reflective pauses, improving reliability and safety.
Key Features
Feature | Description | Benefits |
---|---|---|
CPI Adaptive Interrupts | Phase-aware prompts that challenge assumptions | alignment, robustness |
Multi-provider LLM | Gemini, OpenAI 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 |
What's New in v2.5.0
- Transport β Streamable HTTP (JSON-RPC over HTTP; SSE optional). No more STDIO coupling; concurrent clients supported.
- Session βConstitutionβ: three tool calls to configure user rules per
sessionId
βupdate_constitution
,reset_constitution
,check_constitution
. - Research surfaced: banner + concise CPI summary and links (RG + Git + Zenodo).
Quickstart & Installation
# Clone and install
git clone https://github.com/PV-Bhat/vibe-check-mcp-server.git
cd vibe-check-mcp-server
npm install
npm run build
This project targets Node 20+. If you see a TypeScript error about a duplicate require
declaration when building with Node 20.19.3, ensure your dependencies are up to date (npm install
) or use the Docker setup below which handles the build automatically.
Create a .env
file with the API keys you plan to use:
# Gemini (default)
GEMINI_API_KEY=your_gemini_api_key
# Optional providers
OPENAI_API_KEY=your_openai_api_key
OPENROUTER_API_KEY=your_openrouter_api_key
# Optional overrides
DEFAULT_LLM_PROVIDER=gemini
DEFAULT_MODEL=gemini-2.5-pro
Start the server:
npm start
See docs/TESTING.md for instructions on how to run tests.
Docker
The repository includes a helper script for one-command setup. It builds the image, saves your GEMINI_API_KEY
and configures the container to start automatically whenever you log in:
bash scripts/docker-setup.sh
This script:
- Creates
~/vibe-check-mcp
for persistent data - Builds the Docker image and sets up
docker-compose.yml
- Prompts for your API key and writes
~/vibe-check-mcp/.env
- Installs a systemd service (Linux) or LaunchAgent (macOS) so the container starts at login
- Generates
vibe-check-tcp-wrapper.sh
which proxies Cursor IDE to the server
After running it, open Cursor IDE β Settings β MCP and add a new server of type Command pointing to:
~/vibe-check-mcp/vibe-check-tcp-wrapper.sh
See Automatic Docker Setup for full details.
If you prefer to run the commands manually:
docker build -t vibe-check-mcp .
docker run -e GEMINI_API_KEY=your_gemini_api_key -p 3000:3000 vibe-check-mcp
Integrating with Claude Desktop
Add to claude_desktop_config.json
:
"vibe-check": {
"command": "node",
"args": ["/path/to/vibe-check-mcp/build/index.js"],
"env": { "GEMINI_API_KEY": "YOUR_GEMINI_API_KEY" }
}
Research & Philosophy
CPI (Chain-Pattern Interrupt) is the research-backed oversight method behind Vibe Check. It injects brief, well-timed βpause pointsβ at risk inflection moments to re-align the agent to the userβs true priority, preventing destructive cascades and reasoning lock-in (RLI). In pooled evaluation across 153 runs, CPI nearly doubles success (~27%β54%) and roughly halves harmful actions (~83%β42%). Optimal interrupt dosage is ~10β20% of steps. Vibe Check MCP implements CPI as an external mentor layer at test time.
Links:
- π CPI Paper (ResearchGate) β primary canonical link (banner above).
- π CPI Reference Implementation (GitHub): https://github.com/PV-Bhat/cpi
- π MURST Zenodo DOI (RSRC archival): https://doi.org/10.5281/zenodo.14851363
Usage Examples
import { vibe_check } from 'vibe-check-mcp';
const result = await vibe_check({
goal: 'Write unit tests',
plan: 'Use vitest for coverage',
sessionId: 'demo1'
});
console.log(result.questions);
flowchart TD
A[Agent Phase] --> B{Monitor Progress}
B -- high risk --> C[CPI Interrupt]
C --> D[Reflect & Adjust]
B -- smooth --> E[Continue]
Adaptive Metacognitive Interrupts (CPI)
Advanced CPI Details
The CPI architecture monitors planning, implementation and review phases. When uncertainty spikes, VibeCheck pauses execution, poses clarifying questions and resumes once the agent acknowledges the feedback.Agent Prompting Essentials
In your agent's system prompt, make it clear that vibe_check
is a mandatory tool for reflection. Always pass the full user request and other relevant context. After correcting a mistake, you can optionally log it with vibe_learn
to build a history for future analysis.
Example snippet:
As an autonomous agent you will:
1. Call vibe_check after planning and before major actions.
2. Provide the full user request and your current plan.
3. Optionally, record resolved issues with vibe_learn.
When to Use Each Tool
Tool | Purpose |
---|---|
π vibe_check | Challenge assumptions and prevent tunnel vision |
π vibe_learn | Capture mistakes, preferences and successes |
Documentation
- Agent Prompting Strategies
- Advanced Integration
- Technical Reference
- Automatic Docker Setup
- Philosophy
- Case Studies
- Changelog
Security
This repository includes a CI-based security scan that runs on every pull request. It checks dependencies with npm audit
and scans the source for risky patterns. See SECURITY.md for details and how to report issues.
Roadmap
- Benchmarks and latency profiling
- Adaptive tuning based on agent performance
- Multi-agent cooperation support
- Optional human-in-the-loop review
Contributing & Community
Contributions are welcome! See CONTRIBUTING.md.
FAQ
- Does it increase latency? A single CPI call typically adds ~1 second depending on the provider.
- Can I disable logging? Yes,
vibe_learn
is optional.
Find VibeCheck MCP on
- π MSEEP
- π‘ MCP Servers
- π§ MCP.so
- π οΈ Creati.ai
- π‘ Pulse MCP
- π Playbooks.com
- π§° MCPHub.tools
- π MCP Directory
- π§ MagicSlides
- ποΈ AIAgentsList
Star History
Credits & License
VibeCheck MCP is released under the MIT License. Built for reliable, enterprise-ready AI agents.