vibecompass-mcp
The vibecompass-mcp server connects AI coding tools (Claude Code, Cursor, Codex, etc.) to a VibeCompass project, enabling AI sessions to read project context and write back decisions, conflicts, and session notes. It operates in hosted, local, or hybrid mode.
Read Tools (available in all modes):
get_project_context– Full project overview including domains, features, statuses, recent decisions, and open conflicts; intended to be called at the start of every sessionget_feature_context– Detailed info about a specific feature: description, components, files, ownership, decisions, and conflictsget_decision_log– Past architectural decisions to avoid re-debating settled choices; filterable by feature and countget_conflicts– Lists open conflicts where code changes contradicted prior decisions or patterns collidedget_file_context– Identifies which feature/component owns a given file before modifying it, preventing accidental cross-feature changeslist_pending_proposals– (Hybrid mode) Read hosted proposal summaries filtered by status (open, stale, dismissed, applied)
Write Tools (require VIBECOMPASS_API_KEY; disabled in pure local mode):
log_decision– Permanently record significant architectural decisions, including rationale and alternatives consideredupdate_feature_status– Update a feature's status (draft,in_progress,complete,blocked,deprecated) with optional notesflag_conflict– Report contradictory patterns, duplicated logic, or disagreements with past decisions for developer resolutionadd_session_summary– Write an end-of-session handoff note summarizing accomplishments, remaining tasks, and features touched, so the next AI session can continue seamlessly
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@vibecompass-mcplog decision: use Redis for caching"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
vibecompass-mcp
MCP stdio server for VibeCompass.
It connects Claude Code, Codex, Cursor, and similar MCP-capable tools to a VibeCompass project so sessions can read project context and write back decisions, conflicts, and session handoff notes.
Requirements
Node.js 20+
One of:
VIBECOMPASS_API_KEYfor hosted modeVIBECOMPASS_ROOTfor local read mode
Local mode uses the bundled
@vibecompass/vibecompasscore dependency for file-backed reads
Related MCP server: kb
Environment
Hosted mode:
VIBECOMPASS_API_KEYVIBECOMPASS_API_URLDefaults tohttps://vibecompass.dev
Local mode:
VIBECOMPASS_ROOTAbsolute path to the canonical local project-memory root (project.yaml,architecture/,decisions/,sessions/,state/manifest.json)
Hybrid mode:
If both
VIBECOMPASS_ROOTandVIBECOMPASS_API_KEYare set, read tools resolve from the local root, while write tools and hosted conflict reads remain enabled through the API client
Install
npm
Run the public scoped package:
npx -y @vibecompass/vibecompass-mcpDevelopment
npm test uses Node's t.mock.timers for timeout coverage. Node 20 prints an
experimental MockTimers warning; the warning is expected and does not indicate a
test failure.
Known upstream client issues: Codex 0.33 issue #3426 and Claude Code 2.0.76's
internal effortLevel failure. See
https://github.com/jack-whimvy/vibecompass-docs/blob/main/architecture/mcp-server/context-delivery/resilience.md
for current dogfood status.
Example config
Hosted mode
Claude Code (claude mcp add)
claude mcp add --transport stdio vibecompass \
--env VIBECOMPASS_API_KEY='your-api-key' \
--env VIBECOMPASS_API_URL='https://vibecompass.dev' \
-- npx -y @vibecompass/vibecompass-mcpClaude Code (claude mcp add-json)
claude mcp add-json vibecompass '{"type":"stdio","command":"npx","args":["-y","@vibecompass/vibecompass-mcp"],"env":{"VIBECOMPASS_API_KEY":"your-api-key","VIBECOMPASS_API_URL":"https://vibecompass.dev"}}'Claude Code project config (.mcp.json)
{
"mcpServers": {
"vibecompass": {
"command": "npx",
"args": ["-y", "@vibecompass/vibecompass-mcp"],
"env": {
"VIBECOMPASS_API_KEY": "your-api-key",
"VIBECOMPASS_API_URL": "https://vibecompass.dev"
}
}
}
}Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"vibecompass": {
"command": "npx",
"args": ["-y", "@vibecompass/vibecompass-mcp"],
"env": {
"VIBECOMPASS_API_KEY": "your-api-key",
"VIBECOMPASS_API_URL": "https://vibecompass.dev"
}
}
}
}Codex
Add this to ~/.codex/config.toml:
[mcp_servers.vibecompass]
command = "npx"
args = ["-y", "@vibecompass/vibecompass-mcp"]
env = { VIBECOMPASS_API_KEY = "your-api-key", VIBECOMPASS_API_URL = "https://vibecompass.dev" }Keep the repo-level AGENTS.md file committed so Codex knows when to call the
VibeCompass tools.
Local read mode
Example env:
{
"VIBECOMPASS_ROOT": "/absolute/path/to/project-memory-root"
}Claude Code local-mode command:
claude mcp add --transport stdio vibecompass \
--env VIBECOMPASS_ROOT='/absolute/path/to/project-memory-root' \
-- npx -y @vibecompass/vibecompass-mcpHybrid mode
Example env:
{
"VIBECOMPASS_ROOT": "/absolute/path/to/project-memory-root",
"VIBECOMPASS_API_KEY": "your-api-key",
"VIBECOMPASS_API_URL": "https://vibecompass.dev"
}Hybrid asymmetry, by design: reads prefer the local root (conflicts and
pending proposals still come from hosted — they are collaboration metadata),
while ALL write tools (log_decision, add_session_summary,
update_feature_status, flag_conflict) go to the hosted project only.
A decision logged over MCP lands in the hosted structured tables and does
NOT appear in your local canonical decisions/*.md unless it comes back
through the proposal flow. Local file writes stay with the
@vibecompass/vibecompass package.
Changing a project's hosting mode
Environment variables are read once at startup — after moving a project between modes, update the variables and restart the MCP server:
Promoted to hosted-only (
vibecompass promote-hosted): setVIBECOMPASS_API_KEY(create a key on the hosted Setup page) and removeVIBECOMPASS_ROOT.Demoted to local-primary (
vibecompass demote-hosted): setVIBECOMPASS_ROOTback to the local root; keep the API key for hybrid writes if you want them.
Local development
npm install
npm run build
npm test
VIBECOMPASS_API_KEY=your-api-key npm run startLocal-only read development:
VIBECOMPASS_ROOT=/absolute/path/to/project-memory-root npm run startTools
Read tools work in hosted mode or local mode:
get_project_contextget_feature_contextget_decision_logget_conflictsget_file_context
Write tools require VIBECOMPASS_API_KEY and are disabled in pure local mode:
log_decisionupdate_feature_statusflag_conflictadd_session_summary
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/jack-whimvy/vibecompass-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server