Source Map Parser

Source Map Parser

🚀 源映射文件解析器

该项目实现了一个基于 WebAssembly 的源映射文件解析器,可将 JavaScript 错误堆栈跟踪映射回源代码,并提取相关信息。开发者能借此快速定位和解决问题。本文档将帮助开发人员更好地理解和使用此工具。

🚀 快速开始

MCP 集成

⚠️ 重要提示

需要 Node.js 18+ 支持

选项 1:直接通过 NPX 运行

npx -y source-map-parser-mcp@latest

选项 2:下载构建产物

GitHub 发布 页面下载相应版本的构建产物,然后运行:

node dist/main.es.js

运行时参数配置

💡 使用建议

系统运行时参数可以通过环境变量灵活配置,以满足不同场景的需求。

属性 详情
SOURCE_MAP_PARSER_RESOURCE_CACHE_MAX_SIZE 设置资源缓存占用的最大内存空间,默认为 200MB。调整此值可以平衡性能和内存使用。
SOURCE_MAP_PARSER_CONTEXT_OFFSET_LINE 定义在错误位置周围显示的上下文代码行数,默认为 1 行。增加此值可提供更多上下文信息,便于问题诊断。

示例:

# 设置 500MB 缓存并显示 3 行上下文
export SOURCE_MAP_PARSER_RESOURCE_CACHE_MAX_SIZE=500
export SOURCE_MAP_PARSER_CONTEXT_OFFSET_LINE=3
npx -y source-map-parser-mcp@latest

🔧 技术细节

内部逻辑概述

1. 主文件描述

  • stack_parser_js_sdk.js:WebAssembly 模块的 JavaScript 包装器,提供核心堆栈解析功能。
  • parser.ts:解析器的主要实现,负责初始化 WebAssembly 模块、获取源映射内容以及解析堆栈信息。
  • server.ts:MCP 服务器的实现,提供 parse_stack 工具接口供外部调用。

2. 修改解析逻辑

要修改解析逻辑,请编辑 parser.ts 文件中的 getSourceToken 方法。

3. 添加新工具

server.ts 文件中,可以通过 server.tool 方法添加新的工具接口。

⚠️ 注意事项

  1. 源映射文件:请确保提供的源映射文件地址可访问且格式正确。
  2. 错误处理:在解析过程中可能会遇到网络错误、文件格式错误等问题;建议在调用时实现适当的错误处理机制。

🤝 贡献指南

欢迎通过 Issues 和 Pull Requests 为该项目做出贡献,以改进它。

📄 许可证

本项目采用 MIT 许可证。更多细节请参阅 LICENSE 文件。

  • 0 关注
  • 0 收藏,29 浏览
  • system 提出于 2025-10-06 17:21

相似服务问题

相关AI产品