项目简介
'stacktrace-mcp' 是一个基于 Model Context Protocol (MCP) 构建的简单服务器实现。它的主要功能是帮助开发者和LLM客户端(如VSCode Copilot)获取JavaScript在线bundle(非Source Map)中错误堆栈位置附近的源代码片段。这对于分析和调试生产环境中的错误非常有用。
主要功能点
- 定位代码片段: 通过提供的URL、行号和列号,从在线的JavaScript bundle文件中提取指定位置附近的源代码文本。
- 支持LLM分析: 提取的代码片段可以作为上下文信息提供给LLM,帮助LLM理解错误发生的具体代码环境,从而更好地辅助分析和调试。
- 基于MCP协议: 实现符合MCP标准的Tool功能,可通过兼容的MCP客户端调用。
安装步骤
- 克隆仓库到本地:
git clone https://github.com/antonybudianto/stacktrace-mcp.git cd stacktrace-mcp - 安装项目依赖:
(如果未安装pnpm,请先安装:'npm install -g pnpm')pnpm i - 构建服务器代码:
构建完成后,将在 'dist' 目录下生成可执行的服务器文件 'mcp_server.cjs'。pnpm build
服务器配置
该MCP服务器需要被一个支持MCP协议的客户端应用(如支持MCP功能的代码编辑器或工具)调用。您需要在客户端的MCP服务器配置中添加本服务器的信息。配置通常包括:
- 服务器名称: 一个标识符,例如 'stacktrace-mcp-server'。
- 传输类型 (type): 'stdio' (表示通过标准输入/输出进行通信)。
- 启动命令 (command): 启动服务器的命令,例如 'node'。
- 命令参数 (args): 传递给启动命令的参数列表,其中包含服务器文件的路径。例如,'["<您的本地路径>/stacktrace-mcp/dist/mcp_server.cjs"]'。请将 '<您的本地路径>' 替换为您实际克隆仓库的绝对路径。
请查阅您的MCP客户端应用的文档,了解如何在其设置中添加自定义MCP服务器。
基本使用方法
- 确保您已按照上述步骤完成安装和构建。
- 在您的MCP客户端应用中配置并启用 'stacktrace-mcp-server'。
- 当您遇到JavaScript错误堆栈时,复制完整的错误信息(通常包含URL、行号和列号)。
- 将错误堆栈信息粘贴到您使用的LLM客户端(例如,VSCode Copilot聊天界面)的Prompt中。
- LLM客户端识别到堆栈信息后,可能会自动调用此MCP服务器注册的 'check-stacktrace' 工具,并使用错误信息中的URL、行号和列号作为参数。
- MCP服务器执行Tool逻辑,返回错误位置附近的源代码片段给LLM客户端。
- LLM根据获取的代码片段和其他上下文信息,为您提供关于错误的分析和建议。
信息
分类
开发者工具