Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Architecture docs from a repo: overview, modules, API surface, routes, dependency graph, diffs.
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.
REPOLENS_WORKSPACEYou 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": {
"repolens": {
"command": "npx",
"args": [
"-y",
"@chappibunny/repolens"
],
"env": {
"REPOLENS_WORKSPACE": "your-value"
}
}
}
}Run this in your terminal
claude mcp add repolens --env REPOLENS_WORKSPACE=your-value -- npx -y @chappibunny/repolensFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"repolens": {
"command": "npx",
"args": [
"-y",
"@chappibunny/repolens"
],
"env": {
"REPOLENS_WORKSPACE": "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": {
"repolens": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@chappibunny/repolens"
],
"env": {
"REPOLENS_WORKSPACE": "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.
REPOLENS_WORKSPACE envThese 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 7, 2026
The registry name was verified with the GitHub account CHAPIBUNNY, 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.
The registry does not list a required key, though some servers ask you to sign in on first use.
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.16.2) reached the registry 4 days 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, OpenTakeoff
Servers in the same category from other makers, sorted by stars.
Reading a card:★ 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.
Construction takeoff for AI agents: load plans, set scale, measure, count, export with provenance.
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.
██████╗ ███████╗██████╗ ██████╗ ██╗ ███████╗███╗ ██╗███████╗
██╔══██╗██╔════╝██╔══██╗██╔═══██╗██║ ██╔════╝████╗ ██║██╔════╝ ██████╔╝█████╗ ██████╔╝██║ ██║██║ █████╗ ██╔██╗ ██║███████╗ ██╔══██╗██╔══╝ ██╔═══╝ ██║ ██║██║ ██╔══╝ ██║╚██╗██║╚════██║ ██║ ██║███████╗██║ ╚██████╔╝███████╗███████╗██║ ╚████║███████║ ╚═╝ ╚═╝╚══════╝╚═╝ ╚═════╝ ╚══════╝╚══════╝╚═╝ ╚═══╝╚══════╝ Repository Intelligence CLI
Links: Gallery · npm · MCP Registry · MCP Rush · VS Code extension · GitHub Action
Your architecture docs are already outdated. RepoLens fixes that.
RepoLens scans your repository, generates living architecture documentation, and publishes it to Notion, Confluence, GitHub Wiki, Obsidian, or Markdown — automatically on every push. Engineers get technical docs. Stakeholders get readable system overviews. Nobody writes a word.
Stable as of v1.0 — API guarantees · Security hardened · version from
package.json
Try it now — no installation required.
npx @chappibunny/repolens demopreviews the repository you point it at. It detects common languages (Python, Go, Rust, Java, JavaScript/TypeScript, and others). If the scan matches no source files, demo exits 2 and does not write empty docs. Code health scores JavaScript/TypeScript, Python, and Go.
[See it on real repos](https://chapibunny.github.io/repolens/) — architecture pages RepoLens generated for Express, FastAPI, Django, Gin, mdBook, and other public projects. Deterministic mode, no API keys.
🎬 [Watch Demo Video](https://www.loom.com/share/8e077624e69f41319fd93acbbe03871e) — See RepoLens generate docs in 60 seconds
Notion Confluence
🔍 Supported Languages (16 auto-detected)
JavaScript TypeScript Python Go Rust Java C C++ C# Ruby PHP Swift Kotlin Scala Shell SQL
Plus framework detection: Django · FastAPI · Flask · Gin · Echo · Fiber · Actix · Rocket — and all major JS frameworks (React, Next.js, Vue, Angular, Express, NestJS, Svelte, etc.)
Step 1: Install (Node.js 18+)
npm install @chappibunny/repolens
Step 2: Initialize (creates config + GitHub Actions workflow)
npx @chappibunny/repolens init
Step 3: Configure Publishing (optional, skip if using Markdown only)
For Notion:
# Edit .env and add:
NOTION_TOKEN=secret_xxx NOTION_PARENT_PAGE_ID=xxx
For Confluence:
# Edit .env and add:
CONFLUENCE_URL=https://your-company.atlassian.net/wiki CONFLUENCE_EMAIL=your-email@example.com CONFLUENCE_API_TOKEN=your-token CONFLUENCE_SPACE_KEY=DOCS
Step 4: Publish
npx @chappibunny/repolens publish
Done! Numbered notes and the Markdown publisher’s files are in .repolens/. Notion, Confluence, GitHub Wiki, and Obsidian publish only when you configure them. Obsidian needs obsidian.vault in .repolens.yml and does not use an API key.
🔄 Upgrading from v0.3.0 or earlier? Run npx @chappibunny/repolens migrate to automatically update your workflow files. See MIGRATION.md for details.
17 document types for three audiences — no manual writing required. Route Map and GraphQL Schema are skipped when the repository has no routes or GraphQL schema:
| Audience | Documents |
|---|---|
| Stakeholders | Executive Summary |
| Mixed | System Overview · Business Domains · Route Map · Data Flows · Change Impact · System Map · Architecture Drift · Code Health |
| Engineers | Architecture Overview · Module Catalog · API Surface · Developer Onboarding · GraphQL Schema · TypeScript Type Graph · Dependency Graph · Security Hotspots |
Two modes: Deterministic (free, fast, always works) or AI-Enhanced (optional — GitHub Models, OpenAI, Anthropic, Google, Azure, Ollama).
| 🤖 Autonomous | Runs on every push via GitHub Actions — docs stay evergreen |
| 👥 Multi-Audience | Technical docs + stakeholder-readable overviews from one scan |
| 📤 Multi-Publisher | Notion, Confluence, GitHub Wiki, Obsidian, Markdown — together or one at a time |
| 🗺️ Shows what you didn't ask | An LLM only answers the question it is given, and a newcomer doesn't know what to ask. RepoLens publishes the whole map (every module, cycle and hub) on every PR, the same way each time, with no tokens spent per question |
| 🧠 AI-Assisted | Optional AI with zero-hallucination policy (structured context only) |
| 🔍 Smart Detection | Frameworks, domains, data flows, dependencies, drift — all automatic |
| 🔌 Extensible | Plugin system for custom renderers, publishers, and hooks |
| 🛡️ Secure | Secret detection, injection prevention, rate limiting, supply chain hardening |
| ⚡ Fast | Handles repos up to 50k files with performance guardrails |
npm install @chappibunny/repolens
Or try instantly without installing: npx @chappibunny/repolens demo
For alternative methods, see INSTALLATION.md.
View your architecture directly in VS Code — browse modules, visualize dependencies, and explore your codebase structure without leaving the editor.
Install from Marketplace:
ext install repolensdox.repolensdox
→ Get it on Visual Studio Marketplace
Features:
The extension reads your .repolens.yml configuration and provides an interactive UI for exploring the documentation that RepoLens generates.
Step-by-step setup for publishers, AI features, Notion, Confluence, GitHub Wiki, Obsidian, Discord, and CI/CD automation.
[→ Full Onboarding Guide](docs/ONBOARDING.md)
| Command | Description |
|---|---|
npx @chappibunny/repolens | Show help. A bare invocation does not publish |
npx @chappibunny/repolens init | Interactive wizard — configure publishers, AI, credentials |
npx @chappibunny/repolens init --quick | Markdown-only setup. Globs follow the detected language |
npx @chappibunny/repolens init --help | Flags for that command. Same pattern for every command below |
npx @chappibunny/repolens publish | Scan, generate, and publish documentation |
npx @chappibunny/repolens publish --strict | Exit 2 when a configured publisher is missing credentials |
npx @chappibunny/repolens demo | Local preview — no API keys. Exits 2 when 0 files match |
npx @chappibunny/repolens doctor | Validate your setup, including that scan globs match files |
npx @chappibunny/repolens watch | Auto-regenerate docs on file changes. Exits 2 if module_roots are missing or scan.include matches no files |
npx @chappibunny/repolens migrate | Upgrade from v0.3.0 workflows (details) |
npx @chappibunny/repolens uninstall | Remove all RepoLens files (config, docs, workflow) |
npx @chappibunny/repolens uninstall --force | Remove without confirmation prompt |
npx @chappibunny/repolens feedback | Send feedback to the team |
npx @chappibunny/repolens mcp | Start the stdio MCP server (repolens-mcp is the same server) |
npx @chappibunny/repolens badge | shields.io code-health JSON, SVG, or markdown. Exits 2 when nothing is scored |
npx @chappibunny/repolens comment --base --head | Architecture diff (files, modules, dependencies, health delta, new hotspots) |
npx @chappibunny/repolens app | Self-host the GitHub App webhook. --manifest prints the manifest |
Note: If you installed globally with
npm install -g @chappibunny/repolens, you can use the shorterrepolensform. Init's next-steps text uses that shorter form when the command on your PATH is the global install.
Warning: Do not run bare
npx repolens— there is an unrelatedrepolens@0.0.1placeholder package on npm. Always use the scoped name@chappibunny/repolens.
| Code | Meaning |
|---|---|
0 | Success, including a cancelled wizard or help with no other work |
1 | Runtime error, or an unknown command |
2 | Invalid flags, missing config, target directory not found, a failed doctor check (including 0 files matched), demo or publish scanned 0 files, watch has nothing to watch (missing module_roots, or scan.include matches no files), badge scored 0 source files, comment is missing a base or head ref, publish --strict is missing publisher credentials, app is missing its id, webhook secret, or private key, or feedback has no terminal |
--target must already exist. A missing path exits 2 with Target directory not found: before any scan. repolens --help prints that command's flags. The ASCII banner is omitted when stdout is not a terminal or CI is set.
Cursor, Cline, Claude Desktop, Claude Code, and VS Code Copilot can call RepoLens over stdio. The server is read-only except for generate_docs, which writes Markdown inside the workspace. Deterministic mode does not use the network. Paths cannot leave the workspace root.
Only the beginning is shown; read the rest in the repo