io.github.vola-trebla/ast-impact-mapper-mcp
MCP server that uses TypeScript AST to find which tests are affected by a code change
Versions
0.1.1latestTools 15
differentiate_type_impact Classifies each changed file as type-only or runtime, then splits affected tests into
analyze_api_surface_mutation Compares a file against its HEAD version and classifies the change as
get_rename_aware_diff Like get_affected_tests_by_branch, but correctly handles renamed and moved files.
refresh_project Clears the cached AST for a project root, forcing a full re-parse on the next call.
get_symbol_dependency_graph Retrieves a bidirectional or directed dependency graph mapped to individual declarations, functions, and variables.
detect_architectural_cycles Detects circular import dependencies — A imports B which imports C which imports A.
get_affected_tests Given a list of changed source files, returns which test files are affected —
explain_impact Finds the exact import chain that connects a changed source file to a test file.
get_affected_tests_by_branch Runs `git diff --name-only <base_branch>...HEAD` internally and returns affected test files.
get_dependency_graph Returns the direct import graph for a specific file:
get_coverage_gaps Finds source files that are not reachable from any test file through the import graph —
get_test_summary Returns a bird's-eye view of the project's test structure: coverage rate,
identify_unreachable_modules Finds source files that are never imported by any other file — dead code candidates safe to delete.
generate_skeleton_view Generates a token-optimized representation of a source file by stripping function and method bodies, keeping only JSDocs and declarations with line numbers.
generate_test_command Outputs the optimal test execution command for Jest, Vitest, or Playwright based on changed files.
Permissions 2
filesystem low shell high