Tsconfig Inheritance Flattener MCP server
Resolves TypeScript config inheritance chains and returns effective compiler options per file.
0 stars
Reviews
Write oneNobody has reviewed Tsconfig Inheritance Flattener yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Tsconfig Inheritance Flattener tools (6, 1 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
analyze_project_referencesInspect a tsconfig.json's project references array and validate that each referenced package has composite:true enabled. Detects missing or broken cross-package references in TypeScript monorepos that would cause silent build failures.
detect_config_overlapsFind source files compiled by more than one tsconfig simultaneously and surface option conflicts (strict, module, target, etc.) between them. Essential for monorepos where tsconfig.app.json and tsconfig.spec.json share the same src/ tree with incompatible settings.
explain_emission_structureBuild a virtual tree of what TypeScript will emit for each source file — compiled JS, declaration (.d.ts), and source map paths — without running the compiler. Useful when an agent needs to predict where output files will land or debug rootDir/outDir misconfigurations.
get_effective_compiler_optionsResolve the full tsconfig.json inheritance chain and return the final merged compiler options that actually apply — including options inherited from extended base configs in node_modules or monorepo packages. Eliminates agent hallucinations about strict mode, moduleResolution, paths, and target.
resolve_module_aliasMap a TypeScript path alias (e.g. @/components/Button or @utils/format) to its physical file location on disk, using the paths and baseUrl from the resolved tsconfig. Useful when an agent needs to navigate to the actual file behind an import.
simulate_module_resolutionwrite actionRun TypeScript's exact module resolution algorithm for a given import and return the resolved file path plus every candidate path that was tried and rejected. Eliminates guesswork about why an import resolves (or fails to resolve) under Node16/NodeNext/Bundler strategies.
Public scan report
scanner v0.1.9 · 2026-09-27 · same rubric, same numbers if you re-run it
- Code scan8 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 130 days ago8/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How Tsconfig Inheritance Flattener compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 82/100
- higher than 63% of 48,273 servers
- Tools
- 6
- the typical server has 7
- Tools that change things
- 17%
- typical: 0%. Fewer write tools means less an agent can break
What its tools let an agent do: 5 read · 1 change
Install Tsconfig Inheritance Flattener in Claude Code, Cursor or VS Code
Runs npx -y tsconfig-inheritance-flattener-mcp on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add tsconfig-inheritance-flattener-mcp -- npx -y tsconfig-inheritance-flattener-mcp
What the publisher says
From the Tsconfig Inheritance Flattener repository's README, as published. We do not edit it. Read it on GitHub
🔍 tsconfig-inheritance-flattener-mcp
Your AI agent reads tsconfig.json. It has no idea what it actually means.
MCP server that resolves the full TypeScript config inheritance chain and returns the effective compiler options that actually apply — including everything inherited from extended base configs, monorepo packages, and node_modules presets.
🤔 The problem
Your agent reads tsconfig.json and sees:
{ "extends": "@tsconfig/strictest", "compilerOptions": { "paths": { "@/*": ["./src/*"] } } }It has no idea that @tsconfig/strictest sets strict: true, noUncheckedIndexedAccess: true, exactOptionalPropertyTypes: true. It doesn't know that baseUrl is defined two levels up in your monorepo base config. So it:
- Suggests code that would fail noUncheckedIndexedAccess
- Gets confused about what @/ resolves to
- Doesn't know your target is ES2022, not ES5
- Gives wrong answers about module resolution
The TypeScript compiler API already resolves all of this. This MCP just exposes it.
🛠️ Tools
geteffectivecompiler_options
Resolves the full extends chain and returns the merged compiler options that actually apply to a given tsconfig.json. Shows the inheritance chain, all merged options (with enums as readable strings, not magic numbers), and include/exclude patterns.
Effective TypeScript Configuration
Config: /project/apps/web/tsconfig.json
Inheritance chain: /project/apps/web/tsconfig.json
→ /project/tsconfig.base.json
→ node_modules/@tsconfig/strictest/tsconfig.json
Compiler Options (merged):
target: "ES2022"
module: "NodeNext"
moduleResolution: "NodeNext"
strict: true
noUncheckedIndexedAccess: true
exactOptionalPropertyTypes: true
baseUrl: "/project"
paths: { "@/*": ["apps/web/src/*"] }resolvemodulealias
Maps a TypeScript path alias (e.g. @/hooks/useAuth) to its physical file location on disk, using the resolved paths and baseUrl from the tsconfig. Returns all existing candidates with extension probing.
Alias Resolution: @/hooks/useAuth
Config: /project/apps/web/tsconfig.json
Base URL: /project
Resolved physical paths:
/project/apps/web/src/hooks/useAuth.ts ✓ existsanalyzeprojectreferences
Inspects the references array in a root tsconfig.json and validates that each referenced package has composite: true. Catches broken cross-package dependencies in TypeScript monorepos before they cause silent build failures.
Project References Analysis
Config: /project/tsconfig.json
References found: 2
[✓] packages/shared → /project/packages/shared/tsconfig.json
[✗ NOT FOUND] packages/deprecated → /project/packages/deprecated/tsconfig.json
Violations:
✗ packages/shared is referenced but does not have composite: true
Fix: add "composite": true to packages/shared/tsconfig.json🧪 What it looks like in practice
Agent is helping debug a TypeScript error and asks:
"What compiler options are actually active in this project?"
Without this MCP, the agent guesses based on what it sees in tsconfig.json. With it:
get_effective_compiler_options("/project/apps/web/tsconfig.json")
→ strict: true, noUncheckedIndexedAccess: true, target: "ES2022", module: "NodeNext"Now the agent knows exactly why arr[0] has type string | undefined and not just string. No more wrong suggestions.
⚡ Setup
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Tsconfig Inheritance Flattener: common questions
- Is Tsconfig Inheritance Flattener MCP server safe?
- Mostly: it is graded B (82/100). Read the Tsconfig Inheritance Flattener safety report
- How do I install Tsconfig Inheritance Flattener?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Tsconfig Inheritance Flattener need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Tsconfig Inheritance Flattener maintained?
- The last commit was 166 days ago (2026-05-20). The latest release is v0.2.0.
- How does Tsconfig Inheritance Flattener compare with other MCP servers?
- safety score 82/100 (higher than 63% of 48,273 servers); tools 6 (the typical server has 7); tools that change things 17% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.