Vibe Engineering MCP
Click on "Deploy 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., "@Vibe Engineering MCP start a new project for a URL shortener and show the next ready task"
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.
VIBE ENGINEERING MCP
An Agentic Software-Engineering Operating System & Control Plane that manages requirements, architecture, tasks, workspaces, execution, verification, integration, and checkpoints for autonomous software development.
π‘ Core Philosophy
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β WORKER INTELLIGENCE (LLM) β
β (Claude Code, Cursor, Gemini, GPT, Custom Agent) β
ββββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ
β JSON-RPC / MCP Protocol
ββββββββββββββββββββββββββββββββΌββββββββββββββββββββββββββββββββ
β ENGINEERING CONTROL PLANE (MCP) β
β Vibe Engineering MCP β
ββββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ
β
βββββββββββββββββββββββββββββΌββββββββββββββββββββββββββββ
β β β
ββββββΌββββββββββββββββββ βββββββΌβββββββββββββββββ ββββββββΌββββββββββββββββββ
β Task DAG Scheduler β β Completion Gate β β Checkpoint & Resumptionβ
β Cycle Detection β β Observable Harness β β Git Commit Snapshots β
β Topological Ordering β β Contract Verifier β β Worker Continuation β
ββββββ¬ββββββββββββββββββ βββββββ¬βββββββββββββββββ ββββββββ¬ββββββββββββββββββ
β β β
βββββββββββββββββββββββββββββΌββββββββββββββββββββββββββββ
β
ββββββββββββββββββββββββββββββββΌββββββββββββββββββββββββββββββββ
β ISOLATION & EXECUTION POLICIES β
β Git Worktrees Β· Command Policy Β· Path Policy Β· Observer β
ββββββββββββββββββββββββββββββββ¬ββββββββββββββββββββββββββββββββ
β
ββββββββββββββββββββββββββββββββ΄ββββββββββββββββββββββββββββββββ
β DUAL-LAYER STATE STORAGE β
β SQLite (ACID Operational DB) Β· .vibe/ (YAML Specs) β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββThe LLM is NOT the source of truth for project state.
The MCP server is the engineering operating system.
A task cannot become
VERIFIEDmerely because an LLM claims it is finished.A capability is complete only when: $$\text{Implementation} + \text{Runnable Harness} + \text{Observable Output} + \text{Contract Verification} + \text{Integration Compatibility} + \text{Checkpoint}$$ have all passed with reproducible evidence.
Related MCP server: agent-tasks
π Task State Machine & Completion Gate
Tasks progress through strict state machine transitions:
$$\text{BLOCKED} \longrightarrow \text{READY} \longrightarrow \text{CLAIMED} \longrightarrow \text{BUILDING} \longrightarrow \text{VERIFYING} \longrightarrow \text{VERIFIED} \longrightarrow \text{INTEGRATING} \longrightarrow \text{VERIFIED}$$
The Completion Gate (task_complete)
When task_complete is invoked by a worker:
Inspects the task and active workspace.
Inspects Git working tree and modified files.
Inspects Git diff.
Executes unit and component tests.
Runs the module's registered Observable Harness (CLI, HTTP, DB, AI, UI).
Captures standard output, standard error, exit code, and execution time.
Evaluates contract rules (exit codes, regex patterns, JSON schema verification, artifact existence).
Checks cross-module integration requirements.
On Pass: Transitions task to
VERIFIED, updates DAG readiness for dependent tasks, and records state.On Fail: Rejects completion, transitions task to
FAILED, and automatically schedules an Automated Repair Task in stateREADYpopulated with:Original task ID
Failure reason
Failing command
Relevant stdout/stderr
Affected files
Suggested remediation action
π‘οΈ Git Worktree Workspace Isolation
Unlike naive implementations that share or pollute the project root directory, Vibe Engineering MCP provisions dedicated Git worktrees for each worker/task:
Worktrees are created under
.worktrees/ws-<workerId>-<taskId>on isolated Git branches (worker/<workerId>/task-<taskId>).The system never silently falls back to the project root. If worktree provisioning fails, it throws an explicit diagnostic error.
Worktree metadata is fully tracked (
workspaceId,taskId,branch,worktreePath,repositoryPath,status,createdAt).Worktrees can be safely cleaned up with
cleanupWorkspace(git worktree remove --force).
π Security Model
Command Policy (src/security/command-policy.ts)
Scopes terminal command execution to the project or designated worktree.
Blocks destructive commands (
rm -rf /, formatting disks viamkfs, overwrite viadd, fork bombs:(){ :|:& };:, unauthorizedsudo).Requires execution inside valid workspace boundaries.
Every command execution records: execution ID, command, cwd, timestamp, exit code, stdout, stderr, and duration to SQLite.
Path Policy (src/security/path-policy.ts)
Enforces strict containment within project/worktree root.
Resolves symlinks and prevents directory traversal attacks (e.g.
../../etc/passwd).
π οΈ Registered MCP Tools (28 Tools)
Migrated to the current MCP TypeScript SDK V2 (@modelcontextprotocol/server):
Category | Tool | Description |
PROJECT |
| Initializes or connects to a project with SQLite state & |
| Full operational snapshot (DAG counts, git status, active workers) | |
| High-density context briefing for cold model resumption | |
REQUIREMENTS |
| Compiles human specifications into structured capabilities & criteria |
ARCHITECTURE |
| Records modular boundaries, entrypoints, and contracts |
| Validates DAG acyclicity and interface consistency | |
TASKS |
| Creates a new task with dependencies and observable contract specification |
| Returns next highest priority | |
| Assigns a | |
| Evaluates task through Completion Gate with auto-repair synthesis | |
| Explicitly marks a task as | |
WORKSPACE |
| Creates isolated Git worktree and branch for a worker |
| Inspects all active worker workspaces | |
REPOSITORY |
| Safe file read bounded by workspace containment |
| Safe atomic file write bounded by workspace root | |
| Safe workspace file deletion | |
TERMINAL |
| Policy-checked scoped terminal command execution |
GIT |
| Returns working tree status, staged, modified, and untracked files |
| Returns working tree or cached diff | |
| Stages changes and creates git commit | |
| Creates and checks out branch | |
| Merges branch with | |
MODULES |
| Executes module runnable harness and captures metrics |
| Records reproducible observable evidence | |
VERIFICATION |
| Evaluates evidence against contract rules |
| Executes cross-module integration test harness | |
CHECKPOINTS |
| Records comprehensive snapshot (SHA, capabilities, DAG, decisions) |
| Loads historic milestone checkpoint |
π Getting Started
Prerequisites
Node.js:
v20.0.0or higher (Tested on Node 22 with built-innode:sqlite)Git:
2.30+with worktree support
Installation
git clone https://github.com/prabhurajvardhan/Dev-MCP.git
cd Dev-MCP
npm ciTypecheck & Test Suite
npm run typecheck
npm testThe test suite includes:
4 Unit test suites: Task DAG scheduler, SQLite state store, command security policy, contract engine.
4 Integration test suites: Real MCP client protocol over stdio (
@modelcontextprotocol/client), 19-step autonomous engineering loop, task completion gate & repair generation, MCP server tools interface.
Build Project
npm run buildCompiles TypeScript into ./dist.
π Running the MCP Server (Stdio)
The MCP server uses pure stdio JSON-RPC transport (serveStdio).
Standard output (
stdout) is strictly reserved for JSON-RPC messages.All logging and diagnostic outputs are routed to
stderr.
npm run mcp
# or
npx tsx src/server/index.tsConfiguration in Claude Code / Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"vibe-engineering": {
"command": "npx",
"args": ["-y", "tsx", "/path/to/Dev-MCP/src/server/index.ts"]
}
}
}Configuration in Cursor
In Cursor Settings $\to$ Features $\to$ MCP Servers:
Name:
vibe-engineeringType:
commandCommand:
npx -y tsx /path/to/Dev-MCP/src/server/index.ts
π .vibe/ Inspectable Project State
In addition to SQLite operational ACID storage, human-readable YAML state is maintained under .vibe/:
.vibe/
βββ architecture.yaml # System design, modular boundaries, contracts
βββ requirements.yaml # Product goals & acceptance criteria
βββ modules.yaml # Registered modules & runnable harnesses
βββ tasks.yaml # Task DAG and execution status
βββ checkpoints/ # Frozen capability snapshots (latest.yaml + chk-*.yaml)
βββ contracts/ # Interface contracts
βββ observations/ # Reproducible evidence logs (evd-*.yaml)
βββ decisions/ # Architectural decision recordsβ οΈ Current Scope & Limitations (V0)
Local Focus: V0 is optimized for single-machine local development using Git worktrees and SQLite.
No Remote Workers: Distributed worker pools or cloud message brokers are deferred to V1.
Synchronous Worktree Operations: Worktree allocation is local to the filesystem where the MCP server runs.
π License
Licensed under the Apache License, Version 2.0. See LICENSE for details.
Available Tools
28 toolsarchitecture_generateC
Synthesizes and records system design, modular boundaries, observable entrypoints, and contracts
Inputs: modules (required), projectId (required), interfaces (required), dependencies (required), +1 more.
architecture_validateB
Validates architecture DAG consistency, cycle prevention, and interface completeness
Inputs: projectId (required).
checkpoint_createA
Creates a persistent checkpoint recording complete engineering state (git commit SHA, verified capabilities, tasks, failures, observations) for cold resumption
Inputs: projectId (required), cwd, summary.
checkpoint_loadB
Loads a specific checkpoint by ID to inspect prior milestone state
Inputs: checkpointId (required).
contract_verifyC
Validates collected observable evidence against contract rules (exit codes, output regex, JSON schema, artifacts)
Inputs: contractId (required), taskId, evidenceId.
git_branchC
Creates and checks out a new branch
Inputs: branchName (required), cwd, startPoint.
git_commitB
Stages changes and creates a git commit with structured message
Inputs: message (required), cwd, files.
git_diffC
Returns git diff of modified files or staged changes
Inputs: cwd, file, staged.
git_mergeB
Merges specified branch into current branch with --no-ff
Inputs: branchName (required), cwd.
git_statusB
Returns git working tree status, staged files, modified files, untracked files, and current branch
Inputs: cwd.
integration_verifyC
Executes end-to-end integration harness across multiple modules to verify complete system behavior
Inputs: name (required), projectId (required), description (required), modulesInvolved (required), +3 more.
module_observeC
Captures and records reproducible observable evidence from an executed command or system state
Inputs: stderr (required), stdout (required), command (required), exitCode (required), +5 more.
module_runC
Executes a module through its registered runnable harness, capturing full execution output and telemetry
Inputs: moduleId (required), cwd, taskId, inputArgs, +1 more.
project_initializeB
Initializes or connects to a Vibe Engineering Project with SQLite operational state and .vibe/ directory
Inputs: name (required), description (required), rootPath, initialPhase.
project_inspectB
Returns a full high-density status report of the engineering control plane (tasks, modules, git state, checkpoint)
Inputs: projectId (required).
project_resumeB
Provides complete, high-density continuation context for a fresh worker model resuming development
Inputs: projectId (required).
repo_delete_fileC
Safely deletes a file within the project workspace.
Inputs: filePath (required), workspaceRoot.
repo_read_fileB
Safely reads a file within the project workspace. Traversal outside workspace is blocked.
Inputs: filePath (required), workspaceRoot.
repo_write_fileB
Safely writes or updates a file within the project workspace, ensuring parent directories exist.
Inputs: content (required), filePath (required), workspaceRoot.
requirements_compileC
Compiles human-level product specifications into structured engineering capabilities and acceptance criteria
Inputs: goals (required), title (required), projectId (required), capabilities (required).
task_claimB
Claims a READY task for execution by a specific worker model
Inputs: taskId (required), workerId (required).
task_completeA
Submits a task for verification through the Completion Gate. Runs tests, executes the observable harness, inspects git diff, and enforces contract rules. If verification fails, an automatic repair task is created.
Inputs: taskId (required), cwd, workerId, customTestCommand.
task_createC
Creates a new engineering task with dependencies and optional observable contract specification
Inputs: title (required), projectId (required), description (required), moduleId, +3 more.
task_failC
Explicitly marks a task as FAILED and records reason
Inputs: reason (required), taskId (required).
task_nextA
Returns the next READY task in the dependency DAG for a worker to claim (prioritizing repair tasks and high priority tasks)
Inputs: projectId (required), workerId.
terminal_execA
Executes a terminal command safely scoped to the project workspace. Evaluates security policies, logs execution history, and captures stdout, stderr, exit code, and execution time.
Inputs: command (required), cwd, projectId, timeoutMs.
workspace_createB
Creates an isolated workspace and branch for a worker to implement a specific task safely
Inputs: taskId (required), workerId (required).
workspace_statusB
Returns status of all active worker workspaces
Inputs: no named parameters.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogβ¦
TDQS
Scored across 28 tools
Most tools have clearly distinct resource-action purposes, with prefixes and descriptions that separate tasks, git, repo, workspace, architecture, and verification concerns. Some overlap exists among status/context tools such as project_inspect, project_resume, workspace_status, and checkpoint_load, but their descriptions make the intended use reasonably clear.
All tool names use consistent snake_case with predictable domain prefixes such as task_, git_, repo_, workspace_, architecture_, and checkpoint_. The verb/noun ordering is not perfectly uniform, but the convention is highly readable and consistent across the set.
28 tools is heavy and exceeds the ideal 3-15 range for a single MCP server. The complex engineering lifecycle justifies many of them, but there is likely room to consolidate status/context tools, making the surface borderline rather than well-scoped.
The set covers the major lifecycle stages: project setup, requirements, architecture, task DAGs, workspaces, file operations, terminal execution, git, modules, contracts, integration verification, and checkpoints. Minor gaps include no explicit task_update/task_list, checkpoint_list, or workspace_cleanup, but agents can work around these through project_inspect and terminal_exec.
Related MCP Connectors
Control plane for autonomous software labor. Agents claim objectives over MCP with audit trail.
Design, build and run teams of AI agents with checked handoffs between them.
Autonomous and governed SRE & MLOps control plane for AI agent platforms.
Governed autonomous-agent platform: HITL approvals, budget gates, audit chain, effect ledger.
Related MCP Servers
- FlicenseBqualityBmaintenanceEnables AI coding assistants to run a machine-verified DESIGNβPLANβEXECUTEβVERIFYβCOMPLETE workflow with human approval gates, state integrity checks, and DAG task scheduling.7-
- AlicenseNot gradedqualityCmaintenanceEnables pipeline-driven task management for AI coding agents, with stage-gated workflows, dependency tracking, artifact versioning, and multi-agent collaboration.178 npm23MIT
- AlicenseAqualityCmaintenanceEnables coding agents to run persistent, budgeted work sessions with dependency graphs, human decision queues, required validation, and clean handoffs for autonomous or human-in-the-loop execution.16MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI coding providers to run structured multi-agent workflows with specs, tracked tasks, handoffs, health gates, and audited repair mode.29 npmMIT