Skip to main content
Glama
mcp-server-ts-analysis

mcp-server-ts-analysis

by akshay-nm

mcp-server-ts-analysis

MCP server for TypeScript type resolution and dependency graph analysis. Uses ts-morph for type intelligence and madge for dependency graphs. Stdio transport.

Setup

1. Clone and build

git clone https://github.com/akshay-nm/mcp-server-ts-analysis.git
cd mcp-server-ts-analysis
npm install
npm run build

2. Add to Claude Code

Global (all projects) — add to ~/.claude.json:

{
  "mcpServers": {
    "ts-analysis": {
      "type": "stdio",
      "command": "node",
      "args": ["/absolute/path/to/mcp-server-ts-analysis/dist/bin/cli.js"]
    }
  }
}

Per project — add to .mcp.json in the project root:

{
  "mcpServers": {
    "ts-analysis": {
      "type": "stdio",
      "command": "node",
      "args": ["./path/to/mcp-server-ts-analysis/dist/bin/cli.js"]
    }
  }
}

3. Restart Claude Code

The server will appear in your MCP server list. No startup config needed — all paths (tsconfig, source_root, etc.) are passed per tool call, so one server instance works across all your projects.

Other MCP clients

Any MCP client that supports stdio transport can use this server. Point it at dist/bin/cli.js with Node.js as the command.

Related MCP server: agent-workspace-mcp

Tools

Type analysis

Tool

Description

resolve_type

Fully computed type at a source position

hover_info

Quick info similar to VS Code hover (type, docs, JSDoc tags)

type_diagnostics

TypeScript errors and warnings, optionally scoped to a file

Common parameters:

  • file — absolute path to the TypeScript file

  • line — line number (1-based)

  • col — column number (1-based)

  • tsconfig — path to tsconfig.json (optional, uses default compiler options if omitted)

Dependency analysis

Tool

Description

dep_graph

Full dependency tree as JSON

reverse_deps

All files that import a given file

forward_deps

All files that a given file imports

circular_deps

All circular dependency chains

import_path

Shortest import chain between two files

Common parameters:

  • source_root — source root directory to analyze (required)

  • tsconfig — path to tsconfig.json (optional)

  • exclude — directories to exclude (defaults to node_modules, dist, .git)

  • exclude_patterns — regex patterns to exclude files (e.g. ["\\.d\\.ts$"] to skip declaration files)

dep_graph extras:

  • entry — entry file to start traversal from (defaults to auto-detected root nodes)

  • max_depth — max traversal depth from entry/root nodes (omit for full graph)

Examples

Resolve the type of a variable at line 10, column 7:

{
  "tool": "resolve_type",
  "args": {
    "file": "/home/user/project/src/server.ts",
    "line": 10,
    "col": 7,
    "tsconfig": "/home/user/project/tsconfig.json"
  }
}

Get the top-level module boundaries (depth 1) without .d.ts files:

{
  "tool": "dep_graph",
  "args": {
    "source_root": "/home/user/project/src",
    "tsconfig": "/home/user/project/tsconfig.json",
    "exclude_patterns": ["\\.d\\.ts$"],
    "max_depth": 1
  }
}

Find how auth.ts reaches database.ts through imports:

{
  "tool": "import_path",
  "args": {
    "fileA": "auth.ts",
    "fileB": "database.ts",
    "source_root": "/home/user/project/src"
  }
}

Architecture

src/
  index.ts          — MCP server, tool registration, stdio transport
  type-analysis.ts  — ts-morph type resolution (cached by tsconfig path)
  dep-analysis.ts   — madge dependency graph analysis
  types.ts          — shared interfaces
  madge.d.ts        — type declarations for madge
bin/
  cli.ts            — entry point

License

MIT

Available Tools

8 tools
circular_depsB

Find all circular dependency chains

Inputs: source_root (required), exclude, tsconfig, exclude_patterns.

dep_graphC

Full dependency tree as JSON

Inputs: source_root (required), entry, exclude, tsconfig, +2 more.

forward_depsC

Find all files that a given file imports

Inputs: file (required), source_root (required), exclude, tsconfig, +1 more.

hover_infoC

Quick info at a source position, similar to VS Code hover

Inputs: col (required), file (required), line (required), tsconfig.

import_pathB

Find the shortest import chain between two files

Inputs: fileA (required), fileB (required), source_root (required), exclude, +2 more.

resolve_typeC

Fully computed type at a source position

Inputs: col (required), file (required), line (required), tsconfig.

reverse_depsA

Find all files that import a given file

Inputs: file (required), source_root (required), exclude, tsconfig, +1 more.

type_diagnosticsB

TypeScript errors and warnings, optionally scoped to a single file

Inputs: file, tsconfig.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.4/5.0

    Scored across 8 tools

    Disambiguation5/5

    Each tool targets a distinct aspect of TypeScript analysis: diagnostics, dependency graph operations, and source-position queries. Even the dependency-related tools are clearly separated by direction (reverse, forward, cycles, path) and scope.

    Naming Consistency3/5

    Tool names are readable and generally snake_case, but follow mixed conventions: some are noun phrases (type_diagnostics, dep_graph, hover_info), some are verb_noun (resolve_type), and dependency tools inconsistently use 'dep_graph' vs '_deps' suffix. This creates minor inconsistency though not chaotic.

    Tool Count5/5

    With 8 tools, the server is well-scoped for a TypeScript analysis domain. Each tool provides a distinct, non-redundant capability, and the count is in the sweet spot for usability without overwhelming agents.

    Completeness4/5

    The tool set covers the core analysis workflows: diagnostics, full dependency graph with query capabilities, type resolution, and hover info. Minor gaps like symbol search or find-references are absent, but the existing surface is sufficient for typical static-analysis tasks.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      A TypeScript-aware MCP server that provides coding agents with repository discovery, code intelligence, and web project context for local codebases. It enables deep symbol navigation, diagnostic reporting, and structural analysis of monorepos without requiring full IDE integration.
      7
      16 npm
      1
      MIT
    • A
      license
      A
      quality
      D
      maintenance
      An MCP server that indexes TypeScript/JavaScript codebases into precise call and import graphs using the TypeScript compiler API, allowing Claude or any MCP client to query definitions, callers, callees, and perform impact analysis.
      7
      MIT