/ 目录 / 演练场 / Sentry
● 官方 getsentry 🔑 需要你的密钥

Sentry

作者 getsentry · getsentry/sentry-mcp

让你的 AI 代理在每次 Sentry 调查中完成前 5 分钟的工作——找到问题、获取堆栈跟踪、确定引入问题的发布版本。

Sentry 的官方 MCP 服务器。按新旧程度/发布版本/环境拉取问题、获取完整堆栈跟踪和面包屑、与发布版本交叉参考。能把一条'有东西坏了'的 Slack 消息在 1 分钟内转化为分级事件。

为什么要用

核心特性

实时演示

实际使用效果

sentry.replay ▶ 就绪
0/0

安装

选择你的客户端

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "sentry": {
      "command": "npx",
      "args": [
        "-y",
        "@sentry/mcp-server"
      ]
    }
  }
}

打开 Claude Desktop → Settings → Developer → Edit Config。保存后重启应用。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "sentry": {
      "command": "npx",
      "args": [
        "-y",
        "@sentry/mcp-server"
      ]
    }
  }
}

Cursor 使用与 Claude Desktop 相同的 mcpServers 格式。项目级配置优先于全局。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "sentry": {
      "command": "npx",
      "args": [
        "-y",
        "@sentry/mcp-server"
      ]
    }
  }
}

点击 Cline 侧栏中的 MCP Servers 图标,然后选 "Edit Configuration"。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "sentry": {
      "command": "npx",
      "args": [
        "-y",
        "@sentry/mcp-server"
      ]
    }
  }
}

格式与 Claude Desktop 相同。重启 Windsurf 生效。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "sentry",
      "command": "npx",
      "args": [
        "-y",
        "@sentry/mcp-server"
      ]
    }
  ]
}

Continue 使用服务器对象数组,而非映射。

~/.config/zed/settings.json
{
  "context_servers": {
    "sentry": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "@sentry/mcp-server"
        ]
      }
    }
  }
}

加入 context_servers。Zed 保存后热重载。

claude mcp add sentry -- npx -y @sentry/mcp-server

一行命令搞定。用 claude mcp list 验证,claude mcp remove 卸载。

使用场景

实战用法: Sentry

在 5 分钟内对生产环境新事件进行分级

👤 值班工程师 ⏱ ~5 min intermediate

何时使用: PagerDuty 刚把你叫醒。Sentry 显示错误数量激增。你需要快速知道发生了什么、为什么发生,以及是否需要回滚。

前置条件
  • Sentry 组织 slug + 项目 slug — 查看任何 Sentry URL:sentry.io/organizations/<ORG>/issues/?project=<ID>
  • 具有 event:readproject:read 权限的 Sentry 用户认证 token — sentry.io/settings/account/api/auth-tokens/
步骤
  1. 找到过去一小时内排名最靠前的新问题
    我们 web-prod 项目在过去一小时内排名最靠前的新问题是什么?按事件数量排序。✓ 已复制
    → 单个问题,包含标题、事件数量、受影响用户、首次出现的时间戳
  2. 获取最新事件的完整堆栈跟踪 + 面包屑
    获取该问题的最新事件。展示堆栈跟踪、发布版本和崩溃前的最后 5 条面包屑。✓ 已复制
    → 触发错误的函数的文件:行号 + 错误前用户操作的顺序
  3. 确定引入问题的发布版本
    这个问题是在首次出现时的同一个发布版本中首次看到的,还是从之前的版本遗留下来的?比较发布版本标签。✓ 已复制
    → 是/否,并提供置信度——驱动回滚决策

结果: 一个 3 行的事件摘要,可以粘贴到 Slack:什么坏了、谁受影响了、哪个发布版本导致了它、推荐操作。

注意事项
  • 如果你的发布版本标签没有接上,你就无法分辨哪次部署引入了这个 bug — 在依赖此功能前,在 CI 中设置 sentry-cli releases——没有它,你只能猜测
  • 堆栈跟踪是压缩后的 JS,无法读取 — 验证 sourcemap 已上传——sentry-cli sourcemaps upload 应该在你的构建流水线中
搭配使用: github · linear

交叉参考 Sentry 错误和导致它们的 GitHub commit

👤 调试重复问题的资深工程师 ⏱ ~30 min advanced

何时使用: 一个错误在每次发布后都重新出现。你怀疑是某个特定的代码路径,但想确认一下。

前置条件
  • 安装了 Sentry MCP 和 GitHub MCP — 参考 github 指南了解设置方法
  • Sentry 中用 git SHA 标记的发布版本 — 在 CI 中使用 sentry-cli releases new $SHA
步骤
  1. 列出问题在各个发布版本中的历史记录
    对于 Sentry 问题 WEB-3a91,列出它出现过的每个发布版本和每个发布版本的事件数。✓ 已复制
    → 表格显示问题在特定部署后激增
  2. 对每个激增的地方获取 diff
    对于事件数最多的 3 个发布版本,使用 GitHub MCP 获取 commit diff。每个发布版本改了哪些文件?✓ 已复制
    → 跨越多个激增的共同文件——确凿证据
  3. 形成根本原因假设
    根据这些 diff,最有可能的根本原因是什么?要具体——指出具体的行号。✓ 已复制
    → 行级别的理论,可以通过检查代码来验证

结果: 一个具体的代码级假设,有来自 Sentry 事件和 GitHub diff 的证据支持。

注意事项
  • 一个发布版本中有多个 commit——很难隔离出哪一个有问题 — 使用 git bisect 风格:部署只包含一半 commit 的构建,检查错误率是否下降
搭配使用: github

从 Sentry 数据生成周度工程质量报告

👤 工程经理 ⏱ ~20 min intermediate

何时使用: 周五下午,在下周计划前。你想知道质量是在上升还是下降。

前置条件
  • 对 Sentry 中所有项目的读权限 — Token 权限范围为 org:read + project:read + event:read
步骤
  1. 获取本周的错误和无崩溃会话数
    对于我们的组织,给我本周和上周每个项目的无崩溃会话百分比。标记任何有所下降的项目。✓ 已复制
    → 每个项目的比较及变化值
  2. 确定导致错误量最多的前几个问题
    在所有项目中,哪 5 个问题导致了本周最多的事件?✓ 已复制
    → 具体的问题列表,包含事件数和链接
  3. 建议下周的关注重点
    根据这些数据,团队下周应该优先修复什么?同时考虑数量和用户影响。✓ 已复制
    → 3 个优先级建议及其理由

结果: 一份 1 页的报告,可以在周度工程评审中分享,包含具体的优先事项。

注意事项
  • 数量指标被一个噪声很大的问题主导,掩盖了其他问题 — 过滤掉该问题并重新排序——有时噪声最大的不一定最重要
搭配使用: linear · notion

在决定修复前量化已知 bug 的用户影响

👤 产品经理、技术主管在分级 bug 积压 ⏱ ~15 min beginner

何时使用: 有一个已知的 bug,团队在争论优先级。你需要数据,而不是观点。

步骤
  1. 获取问题的用户影响统计
    对于 Sentry 问题 WEB-3a91,过去 30 天有多少个独立用户遇到过,占活跃用户总数的百分之几?✓ 已复制
    → 绝对数量 + 百分比
  2. 分段统计受影响的用户
    在受影响的用户中,按浏览器、操作系统和账户等级(付费 vs 免费)的分布是什么?✓ 已复制
    → 分解数据,显示它是边界情况还是核心流程问题
  3. 与其他未解决的问题进行比较
    本月按受影响用户排序我们的前 10 个未解决的 bug。这个问题排名在哪里?✓ 已复制
    → 优先级排序的背景信息

结果: 数据驱动的优先级建议:现在修复、这个 sprint 修复,还是延后。

组合

与其他 MCP 搭配,撬动十倍杠杆

sentry + github

Sentry → 确定有问题的发布版本 → GitHub → 找到引入它的 commit → 起草回滚 PR

问题 WEB-3a91 在发布 [email protected] 后激增。在 GitHub 中找到该发布版本中的 commit,确定最可能的罪魁祸首,并起草一个回滚 PR。✓ 已复制
sentry + linear

从超过事件阈值的新 Sentry 问题自动创建 Linear 问题

找到过去 24 小时内有超过 100 个事件的任何新 Sentry 问题。对每一个,创建一个分配给值班工程师的 Linear bug ticket。✓ 已复制
sentry + notion

周度工程质量报告发布到 Notion

获取本周的 Sentry 统计数据,在工程/周报数据库中创建一个 Notion 页面。✓ 已复制

工具

此 MCP 暴露的能力

工具输入参数何时调用成本
list_issues organization, project, query?, sort?, limit? 按状态/发布版本/环境/问题年龄搜索问题流 1 API call
get_issue issue_id 获取特定问题的完整元数据,包括发布版本范围 1 API call
get_event issue_id, event_id? 拉取实际的堆栈跟踪和面包屑用于调试 1 API call
list_releases organization, project 查看部署时间线和哪个发布版本引入了什么 1 API call
list_projects organization 发现组织中存在的项目 1 API call

成本与限制

运行它的成本

API 配额
Sentry:每个 token 40 个请求/秒(非常慷慨)。API 本身没有日上限。
每次调用 Token 数
每个问题/事件响应 200–1000 个 token;大型堆栈跟踪可能达到 5k
费用
免费层:每月 5k 个错误。付费计划按事件量而非 API 使用量计费。
提示
API 是免费的;你真正付费的是事件摄取。使用 Sentry 本身的采样规则来保持摄取成本可预测。

安全

权限、密钥、影响范围

最小权限: org:read project:read event:read
凭据存储: Sentry 用户认证 token 在环境变量 SENTRY_AUTH_TOKEN
数据出站: 所有对 Sentry 实例的调用(sentry.io 或自托管)
切勿授予: org:write project:admin member:write

故障排查

常见错误与修复

401 Invalid token

Token 过期或没有请求的权限。在 sentry.io/settings/account/api/auth-tokens/ 重新创建

验证: curl -H "Authorization: Bearer $SENTRY_AUTH_TOKEN" https://sentry.io/api/0/organizations/
404 Project not found

项目 slug 区分大小写,必须与 URL 完全匹配。检查 sentry.io/settings/projects/

Empty stacktrace

Sourcemap 未上传。在构建流水线中运行 sentry-cli sourcemaps upload

替代方案

Sentry 对比其他方案

替代方案何时用它替代权衡
Datadog APM MCP你已经在使用 Datadog,想要统一的 APM + 错误更昂贵,较不专注于错误
Rollbar / Bugsnag MCP你已经为它们付费社区构建的 MCP 生态较小

更多

资源

📖 阅读 GitHub 上的官方 README

🐙 查看未解决的 issue

🔍 浏览全部 400+ MCP 服务器和 Skills