源码映射调试MCP服务器

这是一个MCP服务器,用于从生产网站获取、检查、查找并提取源代码映射,帮助AI助手定位生产错误、分析堆栈跟踪并查看实际部署代码。

  • by BartWaardenburg
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 BartWaardenburg/srcmap-mcp

使用说明

srcmap-mcp

MCP server for source map debugging. Fetch, inspect, look up, and extract original sources from any production website — directly from your AI assistant.

Add To Your Editor

Claude Code

claude mcp add srcmap-mcp -- npx srcmap-mcp

Codex CLI

codex --mcp-config '{"srcmap-mcp":{"command":"npx","args":["srcmap-mcp"]}}'

Gemini CLI

gemini --mcp-config '{"srcmap-mcp":{"command":"npx","args":["srcmap-mcp"]}}'

VS Code

Add to .vscode/mcp.json:

{
  "servers": {
    "srcmap-mcp": {
      "command": "npx",
      "args": ["srcmap-mcp"]
    }
  }
}
Claude Desktop / Windsurf / Cline / Zed / Docker

Claude Desktop / Windsurf / Cline

Add to your MCP config file:

{
  "mcpServers": {
    "srcmap-mcp": {
      "command": "npx",
      "args": ["srcmap-mcp"]
    }
  }
}

Zed

Add to Zed settings:

{
  "context_servers": {
    "srcmap-mcp": {
      "command": {
        "path": "npx",
        "args": ["srcmap-mcp"]
      }
    }
  }
}

Docker

docker run -i --rm ghcr.io/bartwaardenburg/srcmap-mcp

Prerequisites

Node.js >= 20 and the srcmap CLI:

cargo install srcmap-cli

Features

8 tools across 3 categories for complete source map debugging:

Inspection (4 tools)

Tool Description
sourcemap_info Show source map metadata and statistics
sourcemap_validate Validate a source map file
sourcemap_sources List all original source files in a source map
sourcemap_mappings List mappings with pagination and source filtering

Lookup (2 tools)

Tool Description
sourcemap_lookup Find original position for a generated position, with source context
sourcemap_resolve Reverse lookup: find generated position for an original position

Fetch (2 tools)

Tool Description
sourcemap_fetch Download a bundle and its source map from a URL
sourcemap_extract_sources Extract all embedded original sources to disk

Configuration

Variable Required Default Description
SRCMAP_BINARY No srcmap Path to the srcmap CLI binary
SRCMAP_CACHE_TTL No 300 Cache TTL in seconds (0 to disable)
SRCMAP_TOOLSETS No all Comma-separated toolsets to enable

Toolset names match the Features categories: SRCMAP_TOOLSETS=lookup,fetch enables only the lookup and fetch tools.

Example Usage

Debug a production error

Sentry is showing TypeError: Cannot read property 'items' of undefined at main-2f8a.js:1:34291 on https://app.example.com — what's the original source?

The assistant fetches the bundle and source map, looks up the position, and shows you the exact original file and line causing the error — with surrounding context.

Investigate what's deployed

What code is actually running on https://app.example.com? Extract the source tree so we can look around.

The assistant pulls the production bundles, extracts all original sources, and gives you the full project structure to explore.

Trace a bug from a stack trace

Users are reporting a crash on our checkout page. Here's the minified stack trace — can you trace each frame back to the original source?

at https://cdn.example.com/checkout-a3f2.js:1:48293
at https://cdn.example.com/checkout-a3f2.js:1:51007
at https://cdn.example.com/vendor-9b1e.js:1:12844

The assistant resolves each frame to the original file, function name, and line number — turning a wall of minified positions into a readable stack trace.

Development

pnpm install      # Install dependencies
pnpm dev          # Run in development mode
pnpm build        # Compile TypeScript
pnpm test         # Run tests
pnpm typecheck    # Type check without emitting

License

MIT