Atlas / MCP servers / simonmak-ascent / vision-driven-design

vision-driven-designBLOCK

mcp/simonmak-ascent/vision-driven-design

Spec-driven development MCP server for AI coding agents — 8 phases, bi-directional traceability, and 7 quality gates, 15 tools over Streamable HTTP (MIT)

Verdict
BLOCK
Grade
D
Trust score
69 /100
Exposed tools
13 10r · 3w · 0d
Transport
stdio · streamable-http
License
MIT
Stars
1
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

From vision to verified impact — an AI-native, fully autonomous software development methodology.

[](https://github.com/simonmak-ascent/vision-driven-design/actions/workflows/vdd-quality-gates.yml) [](https://github.com/simonmak-ascent/vision-driven-design/actions/workflows/tdqs.yml) [](https://registry.modelcontextprotocol.io/v0/servers?search=io.github.simonmak-ascent/vision-driven-design) [](https://glama.ai/mcp/servers/simonmak-ascent/vision-driven-design) [](https://agentstatus.dev/mcp-index/vdd) [](https://github.com/simonmak-ascent/vision-driven-design/releases) [](https://vdd.simonmak.com/api/mcp) [](https://vdd.simonmak.com) [](LICENSE)

Overview

Provide a human vision statement. The AI autonomously researches, audits your codebase, generates specs and plans, implements, and validates — with bi-directional verification at every junction to ensure nothing is missed or invented.

graph LR
V[1. VisionHuman Input] -->|| S[2. StrategyAI Research]
S -->|| T[3. TacticsAI Audit]
T -->|| SP[4. SpecsSDD]
S
Read from source at commit c3ef01e38843OBSERVED · 2026-10-11
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.

claude-code (npm)
claude mcp add mcp -- npx -y @simonmak-ascent/[email protected]
03

Exposed tools (13)

10 read · 3 write · 0 destructive.

ToolRiskDescription
changereadThe requirement change, in plain language.
change_requirementwriteCascade a requirement change down the V→S→T→SP→PL→TK chain and re-run the affected gates.
clone_capture_sitereadCapture UI/UX, CSS design tokens, typography, and breakpoints from a target domain.
clone_generate_backendreadGenerate Payload collections, SQL migrations, and CRUD routes from the inferred model.
clone_infer_schemareadInfer a confidence-ranked entity model from captured evidence.
clone_record_evidencereadRecord network evidence (requests + JSON responses) to infer a schema.
clone_scaffold_sitereadScaffold a live Next.js + Payload + Postgres site from the clone manifest at the project root.
clone_verifyreadVerify the clone pipeline outputs are consistent and traceable.
featurereadSpec directory name under vdd/specs/ (kebab-case).
implement_next_taskreadPick the next uncompleted task for a feature, implement it test-first, and keep traceability.
projectRootwriteProject root to write constitution.md and vdd/ into (default \
start_vdd_projectwriteRun the VDD chain from a vision statement to a test-first task list, gate by gate.
visionreadFreeform 1-3 paragraph vision: who it is for, the change you want, how you will measure it.
04

Trust audit

BLOCKgrade D · trust 69/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeFAIL
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
none-observed
Network
declared (5 observation(s))
Shell
none-observed
Dependencies
not all pinned
Secrets in source
found

Findings (15)

HIGHHard-coded secrets · secret.db_uri · CWE-798, CWE-321
packages/vdd-engine/src/generate-manifest.ts:110
DATABASE_URI: 'postgres://clone:clone@postgres:5432/clone',
HIGHHard-coded secrets · secret.db_uri · CWE-798, CWE-321
scripts/vdd-clone-scaffold.mjs:564
DATABASE_URI: postgres://clone:clone@postgres:5432/clone
LOWInventory / provenance · inv.hidden_file · CWE-1104
.gitleaks.toml
.gitleaks.toml
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
packages/vdd-mcp/test/api-surface.test.ts:4
import { PARAM_RELATIONSHIP_NOTES, PHASE_META, PHASE_NAMES } from '../../vdd-engine/src/meta.js';
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
packages/vdd-mcp/test/api-surface.test.ts:8
const core = require('../../../api/_vdd-rpc.js') as {
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
packages/vdd-mcp/test/api-surface.test.ts:126
const hosted = require('../../../api/_vdd-rpc.js') as {
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
packages/vdd-mcp/test/api-surface.test.ts:172
const serverJson = require('../../../server.json') as { version: string };
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
packages/vdd-mcp/test/api-surface.test.ts:181
const { PHASES } = await import('../../vdd-engine/src/engine.js');
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
packages/vdd-mcp/test/http-transport.test.ts:42
base = `http://127.0.0.1:${addr.port}/`;
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
packages/vdd-cli/package.json
commander, zod, @types/node, typescript
Why it matters. 4 dependency range(s) float
Fix. pin exact versions or ship a lockfile
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
packages/vdd-engine/package.json
zod, @types/node, typescript, vitest, playwright
Why it matters. 5 dependency range(s) float
Fix. pin exact versions or ship a lockfile
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
packages/vdd-mcp/package.json
@modelcontextprotocol/server, zod, @types/node, typescript, vitest
Why it matters. 5 dependency range(s) float
Fix. pin exact versions or ship a lockfile
LOWPrompt injection · prompt.transfer_instruction · CWE-94, CWE-1427
SECURITY.md:40
send secrets. For confidential repositories use the local stdio server, which
Why it matters. an instruction to move sensitive data to an outside destination
Fix. remove; a skill never needs the user's secrets off the machine
INFOSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
README.md:65
curl -sSL https://raw.githubusercontent.com/simonmak-ascent/vision-driven-design/main/scripts/install.sh | bash
INFOSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
index.html:332
<pre>curl -sSL https://raw.githubusercontent.com/simonmak-ascent/vision-driven-design/main/scripts/install.sh | bash</pre>

Gates applied: no_behavioural_pass.

Audited 2026-10-11 · audit v0.4.1 · source sha c3ef01e38843full audit observations/trust-audit/mcp-server/simonmak-ascent__vision-driven-design.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-11c3ef01e38843BLOCKD69first audit
06

Questions

What is the vision-driven-design MCP server?

Spec-driven development MCP server for AI coding agents — 8 phases, bi-directional traceability, and 7 quality gates, 15 tools over Streamable HTTP (MIT)

What tools does vision-driven-design expose?

13 in total: 10 read-only, 3 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.

Is vision-driven-design safe to connect to an agent?

No — not without reading the findings first. The audit graded it D (69/100) and found 2 critical or high issues in the source. Each one is listed on this page with the file and line it is on.

What credentials does vision-driven-design need?

It reads BROWSERLESS_TOKEN and PAYLOAD_SECRET from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.

How does vision-driven-design run?

It speaks stdio and streamable-http, so it runs as a local process your client starts. It is published on npm as @simonmak-ascent/mcp at 1.9.2.

How current is this page?

The grade is for one exact copy of the source (c3ef01e38843), read on 2026-10-11. The repository is watched and re-audited when it changes.

Advertisement