使用说明

项目简介

sentry-issue-server 是一个基于 Model Context Protocol (MCP) 构建的服务器,它作为一个桥梁连接 LLM 客户端和 Sentry 错误监控平台。通过此服务器,LLM 可以获取 Sentry 上的项目和 Issue 信息,从而在对话或任务中利用这些上下文数据。

主要功能点

  • 查看Sentry项目列表: 允许 LLM 获取 Sentry 组织下的所有项目信息。
  • 搜索Sentry项目Issue: 允许 LLM 根据项目ID或Slug,以及关键词、用户ID、URL、Issue状态和优先级等条件搜索 Sentry 上的 Issues。
  • 读取Sentry Issue详情: 允许 LLM 获取指定 Issue ID 的完整详细信息。

安装步骤

  1. 安装 Node.js 和 npm: 确保你的系统已安装 Node.js 和 npm (Node 包管理器)。
  2. 下载仓库代码: 从 GitHub 仓库 https://github.com/ueki-tomohiro/sentry-issue-server 下载代码到本地。
  3. 安装依赖: 打开终端,进入仓库代码根目录,运行以下命令安装项目依赖:
    npm install
  4. 构建项目: 运行以下命令构建项目,将 TypeScript 代码编译为 JavaScript:
    npm run build

服务器配置

MCP 服务器需要配置到 MCP 客户端中才能使用。以下是 Claude Desktop 客户端的配置示例,你需要将配置信息添加到 'claude_desktop_config.json' 文件中。

配置文件路径:

  • MacOS: '~/Library/Application Support/Claude/claude_desktop_config.json'
  • Windows: '%APPDATA%/Claude/claude_desktop_config.json'

配置内容 (请根据实际情况修改以下参数):

{
  "mcpServers": {
    "sentry-issue-server": {  // 服务器名称,可以自定义
      "command": "node",      // 运行服务器的命令,通常为 node
      "args": [               // 命令参数
        "/path/to/sentry-issue-server/build/index.js" //  index.js 文件的绝对路径,请替换为你的实际路径
       ],
      "env": {                // 环境变量
        "SENTRY_AUTH_TOKEN": "<<YOUR_SENTRY_AUTH_TOKEN>>",        // 你的 Sentry 认证 Token,用于 API 鉴权,请替换为你的实际 Token
        "ORGANIZATION_ID_OR_SLUG": "<<YOUR_SENTRY_ORGANIZATION_ID_OR_SLUG>>" // 你的 Sentry 组织 ID 或 Slug,请替换为你的实际组织 ID 或 Slug
      }
    }
  }
}

注意:

  • 请将 '"/path/to/sentry-issue-server/build/index.js"' 替换为 'index.js' 文件在你的系统中的实际绝对路径。
  • 请将 '"<<YOUR_SENTRY_AUTH_TOKEN>>"' 替换为你的 Sentry 认证 Token。你需要在 Sentry 后台生成一个 API Token。
  • 请将 '"<<YOUR_SENTRY_ORGANIZATION_ID_OR_SLUG>>"' 替换为你的 Sentry 组织 ID 或 Slug。可以在 Sentry 的组织设置中找到。

基本使用方法

  1. 启动 MCP 服务器: 配置完成后,MCP 服务器会在 Claude Desktop (或其他 MCP 客户端) 启动时自动启动。无需手动运行服务器,它会在后台运行并监听来自客户端的请求。

  2. 在 MCP 客户端中使用: 在 Claude Desktop 或其他支持 MCP 的 LLM 客户端中,你可以通过以下方式使用该服务器提供的功能:

    • 列出 Sentry 项目 (Resource): 在客户端中,可以使用 'sentry://project' URI 来访问 Sentry 项目列表资源。客户端会发送请求到 MCP 服务器,服务器会调用 Sentry API 获取项目列表并返回给客户端。
    • 搜索 Sentry Issues (Tool): 客户端可以调用 'sentry_find_project_issues' 工具来搜索 Issue。你需要提供项目 ID 或 Slug 以及其他可选的搜索参数(如关键词、用户ID等)。
    • 读取 Sentry Issue 详情 (Tool): 客户端可以调用 'sentry_read_issue' 工具来获取指定 Issue ID 的详细信息。你需要提供 Issue ID 作为参数。

    具体如何在 LLM 客户端中调用 Resource 和 Tool,请参考你使用的 MCP 客户端的文档或操作指南。通常,客户端会提供某种方式让你指定要使用的 Resource URI 或 Tool 名称,并提供相应的参数。

调试

如果遇到问题,可以使用仓库 README 中提到的 MCP Inspector 进行调试。运行 'npm run inspector' 命令可以启动 Inspector,它提供了一个 Web 界面来查看 MCP 服务器和客户端之间的通信。

信息

分类

开发者工具