Sentry MCP Server
srcgrp
README
Sentry MCP 服务器
使用此模型上下文协议 (MCP) 服务器将 Sentry 错误跟踪直接集成到您的开发工作流程中。
通过访问 Sentry 发布健康数据和问题详情,无需离开启用 MCP 的环境(例如带有 Cline 扩展的 VS Code),即可深入了解应用程序的稳定性。
主要特性
- 发布监控: 列出最近的发布版本并查看与其关联的新问题计数。
- 发布健康: 获取特定发布版本的详细统计信息,包括无崩溃率和会话计数。
- 问题调查: 通过 ID 获取有关特定 Sentry 问题的详细信息。
- 目标问题列表: 检索与特定发布版本关联的所有问题。
- 灵活连接: 适用于 Sentry.io(云)和自托管 Sentry 实例。
- 服务器检查: 包含一个用于验证配置和服务器状态的工具。
设置
-
克隆存储库: 将此存储库克隆到您的本地计算机:
git clone https://github.com/srcgrp/sentry-mcp-server.git cd sentry-mcp-server
-
安装依赖项并构建: 安装必要的依赖项并构建服务器:
npm install npm run build
这将在
build/
目录中创建可执行的服务器脚本。 -
配置 MCP 客户端: 将服务器添加到 MCP 客户端的配置文件中(例如,Cline 的
cline_mcp_settings.json
)。请务必使用到构建的index.js
文件的绝对路径:{ "mcpServers": { "sentry-local": { // 您可以在此处选择任何名称 "command": "node", "args": [ "/path/to/your/cloned/sentry-mcp-server/build/index.js" // <-- 重要提示:此处使用绝对路径 ], "env": { // 环境变量可以在此处设置,也可以从 .env 文件加载(请参阅下一步) }, "disabled": false, // 确保已启用 "autoApprove": [] } // ... 其他服务器 } }
修改设置后,重新启动 MCP 客户端(例如,重新加载 VS Code)。
-
创建
.env
文件: 在克隆的sentry-mcp-server
项目的根目录中,创建一个包含以下必需变量的.env
文件:# 必需的 Sentry 凭据和配置 SENTRY_AUTH_TOKEN="YOUR_SENTRY_AUTH_TOKEN" # 从 Sentry > 用户设置 > API 密钥生成 SENTRY_BASE_URL="YOUR_SENTRY_API_ENDPOINT" # 例如,https://sentry.io/api/0/ 或 https://your-sentry-instance.com/api/0/ SENTRY_ORG_SLUG="your-organization-slug" # 您的 Sentry 组织 slug
将占位符值替换为您的实际 Sentry 详细信息。
配置详情
服务器依赖于这些环境变量(通常在 .env
文件中设置):
SENTRY_AUTH_TOKEN
(必需): 您的 Sentry API 身份验证令牌。授予服务器访问您的 Sentry 数据的权限。SENTRY_BASE_URL
(必需): Sentry API 的基本 URL。对于 Sentry.io 云用户,通常为https://sentry.io/api/0/
。对于自托管实例,请使用您的实例的 API 端点。SENTRY_ORG_SLUG
(必需): 您的组织在 Sentry 中的唯一标识符 (slug)。除非在特定工具参数中覆盖,否则它将用作 API 调用的默认组织。
可用工具
以下是此服务器提供的工具的细分,以及使用示例:
1. inspect_sentry
- 描述: 检查服务器的当前配置,验证与 Sentry 的连接(使用提供的令牌和 URL),列出可用的功能,并显示基本的环境详细信息。对于调试设置问题很有用。
- 输入模式: 无(不需要参数)。
- 使用示例 (MCP 客户端):
{ "tool_name": "inspect_sentry", "arguments": {} }
- 示例输出:
{ "configuration": { "baseUrl": "https://sentry.io/api/0/", "authTokenConfigured": true, "defaultOrg": "your-organization-slug" }, "capabilities": [ "list_recent_releases", "get_releases", "get_release_health", "get_issue", "get_release_issues" // inspect_sentry is excluded from this list ], "environment": { "nodeVersion": "v18.12.0", "platform": "linux", "memoryUsage": { /* ... */ } } }
2. list_recent_releases
- 描述: 检索指定项目的最新发布版本列表,按日期排序(最新在前)。包括每个版本中引入的新问题数量。
- 输入模式:
project_slug
(字符串, 必需): Sentry 项目的 slug。org_slug
(字符串, 可选): 组织 slug。默认为.env
中的SENTRY_ORG_SLUG
。count
(数字, 可选): 要返回的最大发布版本数。默认为 5。
- 使用示例 (MCP 客户端):
{ "tool_name": "list_recent_releases", "arguments": { "project_slug": "your-frontend-project", "count": 3 } }
- 示例输出:
[ { "version": "frontend@2.5.1", "date": "2023-10-27T10:30:00Z", "new_issues": 2, "type": "desktop" }, { "version": "frontend@2.5.0", "date": "2023-10-26T15:00:00Z", "new_issues": 0, "type": "desktop" }, { "version": "mobile-app@1.2.0-beta", "date": "2023-10-25T09:00:00Z", "new_issues": 5, "type": "mobile" } ]
3. get_releases
- 描述: 获取项目的所有发布版本,按日期排序(最新在前)。
- 输入模式:
project_slug
(字符串, 必需): Sentry 项目的 slug。org_slug
(字符串, 可选): 组织 slug。默认为SENTRY_ORG_SLUG
。
- 使用示例 (MCP 客户端):
{ "tool_name": "get_releases", "arguments": { "project_slug": "your-backend-service" } }
- 示例输出: (与
list_recent_releases
类似的结构,但可能包含更多条目)
4. get_release_health
- 描述: 提供特定发布版本的健康统计信息(如果未指定版本,则为最新版本)。包括无崩溃率、会话计数和新问题计数。
- 输入模式:
project_slug
(字符串, 必需): Sentry 项目的 slug。org_slug
(字符串, 可选): 组织 slug。默认为SENTRY_ORG_SLUG
。release_version
(字符串, 可选): 特定的发布版本字符串。如果省略,则获取最新版本的数据。
- 使用示例 (MCP 客户端):
{ "tool_name": "get_release_health", "arguments": { "project_slug": "your-frontend-project", "release_version": "frontend@2.5.1" } }
- 示例输出:
{ "version": "frontend@2.5.1", "new_issues": 2, "crash_free_rate": 99.5, // 示例值 "sessions": 15000, // 示例值 "stats": { /* Detailed Sentry stats object */ } }
5. get_issue
- 描述: 使用其 ID 检索特定 Sentry 问题的基本详细信息(ID、标题、永久链接)。
- 输入模式:
issue_id
(字符串, 必需): Sentry 问题的数字 ID。org_slug
(字符串, 必需): 问题所在的组织 slug。project_slug
(字符串, 必需): 问题所在的项目的 slug。
- 使用示例 (MCP 客户端):
{ "tool_name": "get_issue", "arguments": { "issue_id": "123456789", "org_slug": "your-organization-slug", "project_slug": "your-frontend-project" } }
- 示例输出:
{ "id": "123456789", "title": "TypeError: Cannot read properties of undefined (reading 'map')", "permalink": "https://your-organization-slug.sentry.io/issues/123456789/" }
6. get_release_issues
- 描述: 获取与特定发布版本关联的所有问题的列表(如果未指定版本,则为最新版本)。
- 输入模式:
project_slug
(字符串, 必需): Sentry 项目的 slug。org_slug
(字符串, 可选): 组织 slug。默认为SENTRY_ORG_SLUG
。release_version
(字符串, 可选): 特定的发布版本字符串。如果省略,则获取最新版本的问题。
- 使用示例 (MCP 客户端):
{ "tool_name": "get_release_issues", "arguments": { "project_slug": "your-backend-service", "release_version": "backend@v1.1.0" } }
- 示例输出: (问题对象列表,与
get_issue
的输出结构类似)[ { "id": "987654321", "title": "Database connection timeout", "permalink": "..." }, { "id": "987654322", "title": "NullPointerException in UserServic", "permalink": "..." } // ... 更多问题 ]
许可证
本项目已获得 MIT 许可证的许可 - 有关详细信息,请参阅 LICENSE 文件(假设您将添加 MIT 许可证文件)。
支持与贡献
对于问题、疑问或功能请求,请在 GitHub 存储库 上打开一个 issue。
欢迎贡献!请遵循标准的 fork-and-pull-request 工作流程。
推荐服务器
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
MCP Package Docs Server
促进大型语言模型高效访问和获取 Go、Python 和 NPM 包的结构化文档,通过多语言支持和性能优化来增强软件开发。
Claude Code MCP
一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。
@kazuph/mcp-taskmanager
用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。
mermaid-mcp-server
一个模型上下文协议 (MCP) 服务器,用于将 Mermaid 图表转换为 PNG 图像。
Jira-Context-MCP
MCP 服务器向 AI 编码助手(如 Cursor)提供 Jira 工单信息。

Linear MCP Server
一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。

Sequential Thinking MCP Server
这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。
Curri MCP Server
通过管理文本笔记、提供笔记创建工具以及使用结构化提示生成摘要,从而实现与 Curri API 的交互。