business-overview
Extracts Angular route guards and frontend access-control rules from source code.
Extracts Django endpoints, ORM data models, access-control decorators and permission classes, and Django template rules.
Extracts data model definitions from Drizzle ORM schemas.
Extracts Express endpoints and access-control middleware.
Extracts FastAPI endpoints and follows dependency-based access-control chains.
Extracts Fastify endpoints.
Extracts Flask endpoints and access-control decorators.
Extracts Gin endpoints.
Parses GraphQL SDL to recover endpoints, data model types, and access-control information.
Extracts JPA/Hibernate entity data models.
Extracts Hono endpoints.
Extracts Koa endpoints.
Extracts Laravel endpoints, Eloquent data models, middleware/Spatie access control, and Blade template rules.
Extracts data models from Mongoose schemas.
Extracts NestJS controllers/resolvers, guards, and role access-control decorators.
Extracts ASP.NET Core endpoints and [Authorize] access-control attributes.
Detects Next.js route handlers and pages/api endpoints.
Extracts entities, fields, keys, and relations from Prisma schemas.
Reads React conditional rendering and RequireRole-style components for frontend access rules.
Extracts data model definitions from Sequelize models.
Extracts Spring MVC endpoints and @PreAuthorize or request-matcher access-control rules.
Extracts data models from SQLAlchemy models.
Extracts tRPC endpoints.
Extracts data models from TypeORM entities.
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., "@business-overview Scan /workspace/my-app and list the roles and their access."
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.
Business Overview MCP
Point it at a codebase. Get back what the software actually does, who is allowed to do it, and where the rules are missing.
An MCP server that reads source code and answers the questions a founder, a product owner, or a new engineer actually asks: what features exist, what can each role do, what data do we hold, and what did we build that nobody uses?
It was written for a specific problem. AI coding agents now ship features faster than anyone can keep track of them. The code works, but nobody holds the full picture any more: which roles exist, what each one can reach, which rules are enforced on the server and which only in the UI. This reads the code and rebuilds that picture, with a file and line number behind every claim.
No LLM is required. Everything below is extracted from source with parsers, so it is fast, free, and deterministic. Claude is optional, and only adds the narrative layer on top.
scan_project root=/path/to/project → features, roles, endpoints, data, stack
generate_report root=/path/to/project → a shareable HTML report
What you get
A role × feature access matrix. Who can reach what, at a glance. ● full access, ◐ partial, ○ none.

Findings that point at real problems, each with a file and line: rules enforced only in the browser, roles defined but never checked, write endpoints with no authentication, inconsistent rules on the same resource, tables nothing reads.

A data model you did not have to draw. Entities, fields, keys and relations, recovered from whichever ORM the project uses.

Plus a feature inventory, use cases per role, a C4 container diagram, a module dependency graph, and per-endpoint sequence diagrams. Diagrams come out as Mermaid or PlantUML, so they render in GitHub, VS Code, Notion and Confluence, and the report is a single self-contained HTML file you can email to someone non-technical.
Related MCP server: Codebase Insights MCP Server
Install
Node 20+, or Docker if you prefer not to install anything.
git clone https://github.com/fadiroot/business-overview-mcp.git
cd business-overview-mcp
npm install
npm run buildClaude Code
claude mcp add business-overview -- node /absolute/path/to/business-overview-mcp/dist/index.jsThen ask it in plain language:
Use business-overview to scan /path/to/my/project and tell me what each role can do.
Or run one of the bundled prompts: business_overview, feature_deep_dive, access_review.
Claude Desktop, Cursor, and other MCP clients
{
"mcpServers": {
"business-overview": {
"command": "node",
"args": ["/absolute/path/to/business-overview-mcp/dist/index.js"]
}
}
}Docker
docker build -t business-overview-mcp .
claude mcp add business-overview -- \
docker run -i --rm -v /path/to/your/projects:/workspace business-overview-mcpYour code is mounted at /workspace, so call the tools with root: "/workspace/my-project".
Try it in one minute
This repository ships a small demo application, examples/nimbus-lms, with a NestJS-style API, a Prisma schema, a React frontend, and five planted problems. Scan it and you should find every one of them:
scan_project root=<repo>/examples/nimbus-lms
audit_findings root=<repo>/examples/nimbus-lmsEvery screenshot above is that demo, unedited.
Tools
Tool | What it answers |
| What is this, what is it built with, what are the features? Start here. |
| Every endpoint with the guards, roles and permissions protecting it. Filter by feature, by role, or to unprotected ones only. |
| Roles, permissions, guards, path rules, backend and frontend checks, and the access matrix. |
| Entities, fields, relations and enums. |
| What each actor can accomplish, grouped by feature. |
| Over-build and access gaps, ranked by severity. |
| One feature end to end, with a sequence diagram of its main flow. |
|
|
| The full HTML and Markdown report. |
What it reads
Detection is heuristic, built on parsers rather than a language server, so it runs in seconds on a large repository and degrades gracefully when it meets something it does not recognise.
Supported | |
Endpoints | Express, Fastify, Koa, Hono, NestJS (controllers and resolvers), Next.js route handlers and |
Data model | Prisma, TypeORM, Mongoose, Drizzle, Sequelize, Knex, SQLAlchemy, SQLModel, Django ORM, Eloquent, Laravel migrations, JPA and Hibernate, GORM, raw SQL DDL, GraphQL types |
Access control | Role enums and constants, NestJS guards and decorators, Express middleware, FastAPI dependencies (followed through their own chains), Flask and Django decorators and permission classes, Laravel middleware and Spatie, Gates and Policies, Spring |
Frontend rules |
|
Optional: the narrative layer
list_use_cases and generate_report accept mode: "claude". With ANTHROPIC_API_KEY set, the extracted facts go to Claude, which merges raw endpoints into real business use cases and returns what each role can and cannot do, which features look questionable, and the questions the owner should answer. Without a key, both tools fall back to the deterministic output and say so.
claude mcp add business-overview -e ANTHROPIC_API_KEY=sk-ant-... -- \
node /absolute/path/to/business-overview-mcp/dist/index.jsLimitations
Worth knowing before you act on the output.
"Public" means no guard was recognised, not proof that an endpoint is open. Custom auth wrappers can be missed. Verify high-severity findings against the file and line given.
Role to permission mappings held in a database (Spatie tables, for example) cannot be resolved from source. Those cells show
?.Features are inferred from directory structure. Feature folders, layered and hexagonal layouts, and monorepos are handled; unusual layouts may group oddly.
Diagrams cap how much they draw to stay readable. Pass
featureto zoom into one area.
Development
npm run build
npm run smoke # analyse the test fixtures and print everything
npm test # drive the server over MCP and assert the resultsfixtures/ holds two small projects used by the tests, one NestJS and Prisma, one FastAPI and SQLAlchemy. examples/nimbus-lms is the larger demo.
Issues and pull requests are welcome, especially for frameworks that are not detected yet. A fixture that reproduces the gap is the most useful thing you can send.
License
MIT
Available Tools
9 toolsaudit_findingsAudit findingsC
Over-build and access-control gaps: unprotected writes, roles/permissions defined but never checked, orphan entities, UI-only restrictions, inconsistent restrictions, duplicate endpoints, size outliers, features without behaviour.
Inputs: root (required), format, refresh, severity.
explain_featureExplain featureA
Deep dive on one feature: purpose signals, endpoints, use cases, roles, entities, files, findings and a sequence diagram for its main write endpoint.
Inputs: root (required), feature (required), refresh.
extract_access_controlExtract access controlC
Roles, permissions, guards/policies, path-level rules, backend and frontend access checks, and the role × feature access matrix.
Inputs: root (required), format, refresh, include_checks.
extract_data_modelExtract data modelB
Entities, fields and relations from Prisma, TypeORM, Mongoose, Drizzle, Sequelize, Knex, SQLAlchemy, Django, Eloquent, Laravel migrations, JPA, GORM, SQL DDL and GraphQL SDL.
Inputs: root (required), format, feature, refresh.
extract_endpointsExtract endpointsB
HTTP/GraphQL/tRPC endpoints with the guards, roles and permissions that protect them. Supports Express-style routers, NestJS, Next.js, tRPC, FastAPI, Flask, Django (+DRF), Laravel, Spring, ASP.NET Core, Go routers, Rails and GraphQL SDL.
Inputs: root (required), role, format, feature, +2 more.
generate_diagramGenerate diagramA
Generate a diagram as Mermaid or PlantUML source. Types: erd (data model), use_case, architecture (C4 container), role_access (roles → features), overview (actors → features → data), module_dependencies (import graph between features), feature_map (mindmap), sequence (one endpoint's request flow). Writes .mmd/.puml + .html viewer to out_dir and returns instant preview links (mermaid.live, kroki.io, plantuml.com).
Inputs: root (required), type (required), write, format, +7 more.
generate_reportGenerate enterprise reportA
Write a self-contained HTML report (plus Markdown and optional JSON facts) with executive summary, feature inventory, actors & roles, use cases, role × feature access matrix, restrictions, ERD, C4 architecture, module dependencies, endpoint catalogue and findings. mode=claude adds Claude's narrative analysis and owner questions.
Inputs: root (required), mode, formats, out_dir, +1 more.
list_use_casesList use casesA
Business use cases derived from endpoints + roles. mode=heuristic is instant and deterministic; mode=claude asks Claude to merge/rename them into real business use cases with preconditions, flows, restrictions and a feature assessment (needs ANTHROPIC_API_KEY on the server).
Inputs: root (required), mode, actor, format, +2 more.
scan_projectScan projectA
Index a codebase: languages, frameworks, databases, external services, features (modules) and headline counts of endpoints, entities, roles and findings. Run this first.
Inputs: root (required), format, refresh.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 9 tools
Each tool targets a distinct phase or concern: scanning, extracting a specific artifact, explaining a feature, auditing, diagramming, and reporting. The only potential overlap is between extraction tools and diagram generation, but one extracts facts and the other visualizes them, so the boundaries are clear.
All tool names follow a consistent lowercase snake_case verb_noun pattern: scan_project, extract_data_model, explain_feature, generate_diagram, generate_report. The verbs are specific and match the action each tool performs, making the set predictable.
Nine tools is well-scoped for a codebase analysis and reporting server. Each tool earns its place, covering ingestion, analysis, and output generation without redundancy or bloat.
The tool surface covers the full analysis pipeline from initial project scan, through data model/endpoint/access control extraction, to use cases, findings, diagrams, and final reports. There are no obvious dead ends or missing capabilities for the stated business-overview purpose.
Related MCP Connectors
Code intelligence platform for AI agents. 20 tools for architecture, security & impact analysis.
AI-powered codebase analysis — call graphs, security, dead code, complexity. 150+ tools.
Code security scanner for founders and small teams: leaked secrets, missing RLS, injection, CVEs
Enterprise code intelligence for M&A, security audits, and tech debt. Hosted server with 200k free.
Related MCP Servers
- AlicenseAqualityDmaintenanceAnalyzes codebases to generate dependency graphs and architectural insights across multiple programming languages, helping developers understand code structure and validate against architectural rules.649 npm20MIT
- AlicenseNot gradedqualityCmaintenanceAnalyzes API codebases from GitHub and Bitbucket repositories to generate Postman collections, business reports, and detailed code insights. Supports multiple frameworks including FastAPI, Spring Boot, Flask, Express, and OpenAPI/Swagger specifications.MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI-powered security scanning of codebases through conversational analysis, allowing users to assess, threat model, code review, DAST test, and generate security reports using natural language with Claude.MIT
- AlicenseNot gradedqualityDmaintenanceProvides intelligent codebase analysis, dependency scanning, architecture detection, security vulnerability scanning, and automatic documentation generation for modern development teams.22 npmMIT