项目简介

'stacktrace-mcp' 是一个基于 Model Context Protocol (MCP) 构建的简单服务器实现。它的主要功能是帮助开发者和LLM客户端(如VSCode Copilot)获取JavaScript在线bundle(非Source Map)中错误堆栈位置附近的源代码片段。这对于分析和调试生产环境中的错误非常有用。

主要功能点

  • 定位代码片段: 通过提供的URL、行号和列号,从在线的JavaScript bundle文件中提取指定位置附近的源代码文本。
  • 支持LLM分析: 提取的代码片段可以作为上下文信息提供给LLM,帮助LLM理解错误发生的具体代码环境,从而更好地辅助分析和调试。
  • 基于MCP协议: 实现符合MCP标准的Tool功能,可通过兼容的MCP客户端调用。

安装步骤

  1. 克隆仓库到本地:
    git clone https://github.com/antonybudianto/stacktrace-mcp.git
    cd stacktrace-mcp
  2. 安装项目依赖:
    pnpm i
    (如果未安装pnpm,请先安装:'npm install -g pnpm')
  3. 构建服务器代码:
    pnpm build
    构建完成后,将在 'dist' 目录下生成可执行的服务器文件 'mcp_server.cjs'。

服务器配置

该MCP服务器需要被一个支持MCP协议的客户端应用(如支持MCP功能的代码编辑器或工具)调用。您需要在客户端的MCP服务器配置中添加本服务器的信息。配置通常包括:

  • 服务器名称: 一个标识符,例如 'stacktrace-mcp-server'。
  • 传输类型 (type): 'stdio' (表示通过标准输入/输出进行通信)。
  • 启动命令 (command): 启动服务器的命令,例如 'node'。
  • 命令参数 (args): 传递给启动命令的参数列表,其中包含服务器文件的路径。例如,'["<您的本地路径>/stacktrace-mcp/dist/mcp_server.cjs"]'。请将 '<您的本地路径>' 替换为您实际克隆仓库的绝对路径。

请查阅您的MCP客户端应用的文档,了解如何在其设置中添加自定义MCP服务器。

基本使用方法

  1. 确保您已按照上述步骤完成安装和构建。
  2. 在您的MCP客户端应用中配置并启用 'stacktrace-mcp-server'。
  3. 当您遇到JavaScript错误堆栈时,复制完整的错误信息(通常包含URL、行号和列号)。
  4. 将错误堆栈信息粘贴到您使用的LLM客户端(例如,VSCode Copilot聊天界面)的Prompt中。
  5. LLM客户端识别到堆栈信息后,可能会自动调用此MCP服务器注册的 'check-stacktrace' 工具,并使用错误信息中的URL、行号和列号作为参数。
  6. MCP服务器执行Tool逻辑,返回错误位置附近的源代码片段给LLM客户端。
  7. LLM根据获取的代码片段和其他上下文信息,为您提供关于错误的分析和建议。

信息

分类

开发者工具