Skip to main content
Glama
getsentry

Sentry MCP

Official
by getsentry

sentry-mcp

Sentry 的 MCP 服务主要为“人在回路”(human-in-the-loop) 的编码代理而设计。我们的工具选择和优先级侧重于开发人员的工作流程和调试用例,而不是提供一个适用于所有 Sentry 功能的通用 MCP 服务器。

此远程 MCP 服务器充当上游 Sentry API 的中间件,针对 Cursor、Claude Code 等编码助手及类似的开发工具进行了优化。它基于 Cloudflare 在远程 MCP 方面的工作

入门指南

您可以通过访问生产环境中部署的服务来了解所需的一切信息:

https://mcp.sentry.dev

如果您希望做出贡献、了解其工作原理或为自托管的 Sentry 运行此服务,请继续阅读下文。

Claude Code 插件

安装为 Claude Code 插件以实现自动子代理委派:

claude plugin marketplace add getsentry/sentry-mcp
claude plugin install sentry-mcp@sentry-mcp

这提供了一个 sentry-mcp 子代理,当您询问有关 Sentry 错误、问题、追踪或性能的信息时,Claude 会自动将其委派给该代理。

对于前瞻性的工具变体和功能:

claude plugin install sentry-mcp@sentry-mcp-experimental

Stdio 与远程模式

虽然此存储库专注于充当 MCP 服务,但我们也支持 stdio 传输。这目前仍在开发中,但它是使 MCP 适配自托管 Sentry 安装的最简单方法。

注意: AI 驱动的搜索工具(search_eventssearch_issues 等)需要 LLM 提供商(OpenAI 或 Anthropic)。这些工具使用自然语言处理将查询转换为 Sentry 的查询语法。如果没有配置提供商,这些特定工具将不可用,但所有其他工具将正常运行。

要使用 stdio 传输,您需要在 Sentry 中创建一个具有必要作用域的用户身份验证令牌。截至撰写本文时,所需作用域为:

org:read
project:read
project:write
team:read
team:write
event:write

启动传输:

npx @sentry/mcp-server@latest --access-token=sentry-user-token

需要连接到自托管部署?运行命令时添加 --host(仅主机名,例如 --host=sentry.example.com)。

某些功能(如 Seer)在自托管实例上可能不可用。您可以禁用特定技能以防止暴露不支持的工具:

npx @sentry/mcp-server@latest --access-token=TOKEN --host=sentry.example.com --disable-skills=seer

环境变量

SENTRY_ACCESS_TOKEN=         # Required: Your Sentry auth token

# LLM Provider Configuration (required for AI-powered search tools)
EMBEDDED_AGENT_PROVIDER=     # Required: 'openai' or 'anthropic'
OPENAI_API_KEY=              # Required if using OpenAI
ANTHROPIC_API_KEY=           # Required if using Anthropic

# Optional overrides
SENTRY_HOST=                 # For self-hosted deployments
MCP_DISABLE_SKILLS=          # Disable specific skills (comma-separated, e.g. 'seer')

重要: 请务必设置 EMBEDDED_AGENT_PROVIDER 以明确指定您的 LLM 提供商。仅基于 API 密钥的自动检测已被弃用,并将在未来的版本中移除。有关详细的配置选项,请参阅 docs/embedded-agents.md

MCP 配置示例

{
  "mcpServers": {
    "sentry": {
      "command": "npx",
      "args": ["@sentry/mcp-server"],
      "env": {
        "SENTRY_ACCESS_TOKEN": "your-token",
        "EMBEDDED_AGENT_PROVIDER": "openai",
        "OPENAI_API_KEY": "sk-..."
      }
    }
  }
}

如果您不设置 host 变量,CLI 会自动指向 Sentry SaaS 服务。仅在操作自托管 Sentry 时设置此覆盖项。

对于不支持 Seer 的自托管实例:

{
  "mcpServers": {
    "sentry": {
      "command": "npx",
      "args": ["@sentry/mcp-server"],
      "env": {
        "SENTRY_ACCESS_TOKEN": "your-token",
        "SENTRY_HOST": "sentry.example.com",
        "MCP_DISABLE_SKILLS": "seer"
      }
    }
  }
}

MCP Inspector

MCP 包含一个 Inspector,可用于轻松测试该服务:

pnpm inspector

输入 MCP 服务器 URL (http://localhost:5173) 并点击连接。这应该会为您触发身份验证流程。

注意:如果您在 127.0.0.1 上访问 inspector 时遇到 OAuth 流程问题,请尝试通过访问 http://localhost:6274 使用 localhost

Related MCP server: Sentry MCP Server

本地开发

要贡献更改,您需要设置本地环境:

  1. 设置环境和代理技能:

    make setup-env  # Creates .env files and installs shared agent skills

    这也运行 npx @sentry/dotagents install 以将共享技能从 getsentry/skills 安装到 .agents/skills/ 中(符号链接到 .claude/skills.cursor/skills)。如果您以后需要更新技能,请直接运行:

    npx @sentry/dotagents install
  2. 在 Sentry 中创建 OAuth 应用(设置 => API => 应用程序):

    • 主页 URL: http://localhost:5173

    • 授权重定向 URI: http://localhost:5173/oauth/callback

    • 记下您的客户端 ID 并生成客户端密钥

  3. 配置您的凭据:

    • 编辑根目录下的 .env 并添加您的 OPENAI_API_KEY

    • 编辑 packages/mcp-cloudflare/.env 并添加:

      • SENTRY_CLIENT_ID=your_development_sentry_client_id

      • SENTRY_CLIENT_SECRET=your_development_sentry_client_secret

      • COOKIE_SECRET=my-super-secret-cookie

  4. 启动开发服务器:

    pnpm dev

验证

在本地运行服务器以使其在 http://localhost:5173 可用

pnpm dev

要测试本地服务器,请在 Inspector 中输入 http://localhost:5173/mcp 并点击连接。按照提示操作后,您将能够“列出工具”(List Tools)。

测试

包含三个测试套件:单元测试、评估和手动测试。

单元测试可以使用以下命令运行:

pnpm test

评估需要在项目根目录中有一个包含某些配置的 .env 文件:

# .env (in project root)
OPENAI_API_KEY=  # Also required for AI-powered search tools in production

注意:根目录的 .env 文件为所有包提供默认值。各个包可以在开发过程中拥有自己的 .env 文件来覆盖这些默认值。

完成后,您可以使用以下命令运行它们:

pnpm eval

手动测试(测试 MCP 更改的首选方式):

# Test with local dev server (default: http://localhost:5173)
pnpm -w run cli "who am I?"

# Test agent mode (use_sentry tool only)
pnpm -w run cli --agent "who am I?"

# Test against production
pnpm -w run cli --mcp-host=https://mcp.sentry.dev "query"

# Test with local stdio mode (requires SENTRY_ACCESS_TOKEN)
pnpm -w run cli --access-token=TOKEN "query"

注意:CLI 默认为 http://localhost:5173。使用 --mcp-host 覆盖或设置 MCP_URL 环境变量。

综合测试手册:

  • Stdio 测试: 请参阅 docs/testing-stdio.md 以获取构建、运行和测试 stdio 实现(IDE、MCP Inspector)的完整指南

  • 远程测试: 请参阅 docs/testing-remote.md 以获取测试远程服务器(OAuth、Web UI、CLI 客户端)的完整指南

开发说明

自动化代码审查

此存储库使用自动化代码审查工具(如 Cursor BugBot)来帮助识别拉取请求中的潜在问题。这些工具提供有用的反馈和建议,但我们不建议将这些检查设为强制要求,因为其准确性仍在不断发展,可能会产生误报。

自动化审查应被视为:

  • ✅ 代码审查期间可考虑的有益建议

  • ✅ 讨论和改进的起点

  • ❌ 合并 PR 的非阻塞性要求

  • 不能替代人工代码审查

在处理自动化反馈时,请关注潜在的问题,而不是严格遵循每一条建议。

贡献者文档

想要贡献或探索完整的文档地图?请参阅 CLAUDE.md(也可用作 AGENTS.md)以获取贡献者工作流程和完整的文档索引。docs/ 文件夹包含按主题划分的指南和工具集成的 .md 文件。

Available Tools

7 tools
create_projectB

Create a new project in Sentry, giving you access to a new SENTRY_DSN.

Use this tool when you need to:

  • Create a new project in a Sentry organization

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesThe name of the project to create. Typically this is commonly the name of the repository or service. It is only used as a visual label in Sentry.
organizationSlugNoThe organization's slug. This will default to the first org you have access to.
platformNoThe platform for the project (e.g., python, javascript, react, etc.)
teamSlugYesThe team's slug. This will default to the first team you have access to.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It mentions the outcome ('giving you access to a new SENTRY_DSN') but doesn't disclose behavioral traits such as required permissions, rate limits, whether the operation is idempotent, or error handling. This is a significant gap for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately sized with two sentences and a bullet point, front-loaded with the main purpose. It avoids redundancy, though the bullet point could be integrated more smoothly for better flow.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a mutation tool with no annotations and no output schema, the description is incomplete. It lacks details on behavioral aspects (e.g., permissions, side effects) and return values, leaving gaps for an AI agent to operate effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all 4 parameters. The description adds no parameter-specific information beyond what's in the schema, resulting in a baseline score of 3 as it doesn't compensate but doesn't detract either.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Create') and resource ('new project in Sentry'), specifying it provides access to a new SENTRY_DSN. However, it doesn't explicitly differentiate from sibling tools like 'create_team' beyond mentioning the resource type, missing a direct comparison.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a bullet point stating 'Use this tool when you need to: - Create a new project in a Sentry organization,' which implies context but lacks explicit guidance on when to use alternatives (e.g., 'list_projects' for viewing existing ones) or prerequisites like required permissions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_teamB

Create a new team in Sentry.

Use this tool when you need to:

  • Create a new team in a Sentry organization

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesThe name of the team to create.
organizationSlugNoThe organization's slug. This will default to the first org you have access to.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but only states it 'creates' a new team. It lacks details on permissions required, whether the operation is idempotent, what happens on duplicate names, or error conditions. For a mutation tool with zero annotation coverage, this is insufficient behavioral disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is brief and front-loaded with the main purpose, followed by a usage guideline. Both sentences are relevant, though the second sentence could be more efficiently integrated. There's minimal waste, but it's not perfectly structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given this is a mutation tool with no annotations and no output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., team ID, success confirmation), error handling, or dependencies like required permissions. For a create operation, this leaves significant gaps for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters ('name' and 'organizationSlug') adequately. The description adds no additional parameter information beyond what's in the schema, meeting the baseline for high coverage but not enhancing understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Create a new team') and resource ('in Sentry'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'create_project' beyond mentioning 'team' vs 'project', which is implicit but not explicit about when to choose one over the other.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a bullet point stating 'Use this tool when you need to: Create a new team in a Sentry organization', which gives basic context. However, it doesn't specify when NOT to use it or mention alternatives like 'list_teams' for checking existing teams, leaving some ambiguity about usage scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_error_detailsA

Retrieve error details from Sentry for a specific Issue ID, including the stacktrace and error message. Either issueId or issueUrl MUST be provided.

Use this tool when you need to:

  • Investigate a specific production error

  • Access detailed error information and stacktraces from Sentry

ParametersJSON Schema
NameRequiredDescriptionDefault
issueIdNoThe Issue ID. e.g. `PROJECT-1Z43`
issueUrlNoThe URL of the issue to retrieve details for.
organizationSlugNoThe organization's slug. This will default to the first org you have access to.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly indicates this is a read operation ('Retrieve'), which is helpful. However, it doesn't mention important behavioral aspects like authentication requirements, rate limits, error handling, or what happens when neither issueId nor issueUrl is provided despite stating one MUST be provided.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is perfectly structured with a clear purpose statement followed by a bulleted list of usage scenarios. Every sentence earns its place, with no redundant information. The constraint about required parameters is efficiently integrated into the first sentence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 3 parameters, no annotations, and no output schema, the description provides adequate but incomplete coverage. It clearly explains the purpose and usage scenarios, but lacks details about authentication, error responses, rate limits, and the format/structure of the returned error details. The absence of an output schema means the description should ideally provide more information about what the tool returns.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all three parameters thoroughly. The description adds the critical constraint that 'Either issueId or issueUrl MUST be provided,' which provides important semantic context beyond the schema. However, it doesn't explain the relationship between these parameters or provide additional context about the organizationSlug default behavior beyond what's in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Retrieve error details'), resource ('from Sentry'), and scope ('for a specific Issue ID'). It explicitly mentions what information is included ('stacktrace and error message'), distinguishing it from sibling tools like search_errors_in_file which appears to search rather than retrieve details for a specific issue.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear usage scenarios ('when you need to investigate a specific production error' and 'access detailed error information and stacktraces from Sentry'), giving good context for when to use this tool. However, it doesn't explicitly state when NOT to use it or directly compare it to alternatives like search_errors_in_file, which would be needed for a perfect score.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_organizationsB

List all organizations that the user has access to in Sentry.

Use this tool when you need to:

  • View all organizations in Sentry

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It mentions the scope ('all organizations that the user has access to'), which is useful, but lacks details on behavioral traits like pagination, rate limits, authentication needs, or response format. For a tool with zero annotation coverage, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the main purpose in the first sentence, followed by a bullet point for usage. It's efficient with minimal waste, though the bullet point could be integrated more seamlessly into the flow.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and 0 parameters, the description is adequate for a simple list tool but lacks completeness. It doesn't explain what the return value looks like (e.g., list of objects with fields) or any constraints, which could hinder agent effectiveness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add param info, which is appropriate here, but since there are no params, it doesn't compensate for any gaps. Baseline is 4 as per rules for 0 parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('List') and resource ('organizations'), specifying that it returns all organizations the user has access to in Sentry. It distinguishes from siblings like 'list_projects' and 'list_teams' by focusing on organizations, but doesn't explicitly contrast with them in the text.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a usage scenario ('when you need to view all organizations in Sentry'), which gives implied context. However, it doesn't explicitly state when NOT to use this tool or name alternatives (e.g., when to use 'list_projects' instead), leaving some guidance gaps.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_projectsB

Retrieve a list of projects in Sentry.

Use this tool when you need to:

  • View all projects in a Sentry organization

ParametersJSON Schema
NameRequiredDescriptionDefault
organizationSlugNoThe organization's slug. This will default to the first org you have access to.

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. While it indicates this is a retrieval/read operation, it doesn't mention important behavioral aspects like pagination, rate limits, authentication requirements, or what happens when organizationSlug isn't provided. The description is insufficient for a tool with no annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately concise with two sentences that directly address purpose and usage. It's front-loaded with the core purpose and follows with specific usage scenarios. There's minimal wasted verbiage.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no annotations and no output schema, the description is incomplete. It doesn't explain what the return format looks like, whether results are paginated, or what authentication context is required. Given the lack of structured metadata, the description should provide more operational context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents the single parameter. The description doesn't add any additional semantic context about the parameter beyond what's in the schema. This meets the baseline expectation when schema coverage is high.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Retrieve' and resource 'list of projects in Sentry', making the purpose unambiguous. However, it doesn't explicitly distinguish this tool from sibling tools like 'list_organizations' or 'list_teams' beyond mentioning projects specifically.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use this tool ('when you need to view all projects in a Sentry organization'), which is helpful. However, it doesn't mention when NOT to use it or provide alternatives for more specific project queries that might be needed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_teamsA

List all teams in an organization in Sentry.

Use this tool when you need to:

  • View all teams in a Sentry organization

ParametersJSON Schema
NameRequiredDescriptionDefault
organizationSlugNoThe organization's slug. This will default to the first org you have access to.

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the basic action ('List all teams') without mentioning behavioral traits like pagination, rate limits, authentication needs, or what happens if no organization slug is provided (defaulting to the first org). This leaves significant gaps for a tool that likely interacts with an API.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately sized and front-loaded, with the core purpose stated first followed by concise usage guidelines in bullet points. Every sentence earns its place without redundancy, making it efficient and easy to scan.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's low complexity (1 parameter, no output schema, no annotations), the description is minimally complete for a basic list operation. However, it lacks details on output format, error handling, or dependencies (e.g., needing an organization slug from 'list_organizations'), which could be helpful for an agent in this context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the parameter 'organizationSlug' clearly documented in the schema. The description doesn't add any parameter-specific information beyond what's in the schema, so it meets the baseline of 3 for high schema coverage without compensating value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with a specific verb ('List') and resource ('all teams in an organization in Sentry'), making it immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'list_organizations' or 'list_projects' beyond the resource type, which prevents a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit usage guidelines with bullet points specifying when to use this tool ('View all teams in a Sentry organization'), which gives clear context. However, it doesn't mention when not to use it or name alternatives (e.g., using 'list_organizations' first to get the organization slug), so it falls short of a perfect score.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_errors_in_fileA

Search for errors recently occurring in a specific file. This is a suffix based search, so only using the filename or the direct parent folder of the file. The parent folder is preferred when the filename is in a subfolder or a common filename.

Use this tool when you need to:

  • Search for production errors in a specific file

  • Analyze error patterns and frequencies

  • Find recent or frequently occurring errors.

ParametersJSON Schema
NameRequiredDescriptionDefault
filenameYesThe filename to search for errors in.
organizationSlugNoThe organization's slug. This will default to the first org you have access to.
sortByNoSort the results either by the last time they occurred or the count of occurrences.last_seen

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It adds valuable context about the search being 'suffix based' and preferring parent folders for subfolders/common filenames, which helps the agent understand how to structure queries. However, it doesn't mention rate limits, authentication needs, or pagination behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a clear opening sentence explaining the tool's function, followed by a usage guidelines section. It's appropriately sized and front-loaded, though the bulleted list could be slightly more concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (3 parameters, no output schema, no annotations), the description provides good contextual completeness. It explains the search behavior and usage scenarios well, though it could benefit from mentioning what the output looks like since there's no output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all three parameters thoroughly. The description doesn't add any parameter-specific information beyond what's in the schema, maintaining the baseline score of 3 where the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with specific verbs ('search for errors') and resources ('in a specific file'), and distinguishes it from siblings by focusing on file-based error searching rather than project/team management or general listing operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit usage guidelines with a bulleted list of when to use this tool ('search for production errors in a specific file', 'analyze error patterns', 'find recent/frequent errors'), though it doesn't explicitly state when not to use it or name alternatives among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A3.5/5.0
Disambiguation4/5

Most tools have distinct purposes, such as create_project vs. list_projects, but get_error_details and search_errors_in_file could potentially overlap in error investigation scenarios, which might cause slight confusion. Overall, the boundaries are clear with only minor ambiguity.

Naming Consistency5/5

All tools follow a consistent verb_noun naming pattern using snake_case, such as create_project, list_organizations, and search_errors_in_file. This uniformity makes the tool set predictable and easy to understand.

Tool Count4/5

With 7 tools, the count is reasonable for a Sentry-focused server, covering core operations like project, team, and error management. However, it feels slightly thin as it lacks update or delete operations, which are common in such domains.

Completeness3/5

The tool set covers creation and listing for projects, teams, and organizations, plus error retrieval and search, but it has notable gaps. Missing update/delete tools for projects and teams, and no error resolution or comment features, limit full lifecycle coverage for Sentry's domain.

Maintenance

ActivityActive
ResponsivenessResponsive

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    B
    quality
    D
    maintenance
    A Model Context Protocol server that retrieves and analyzes Sentry.io issues, allowing users to inspect error reports, stacktraces, and debugging information from their Sentry account.
    2
    22
  • F
    license
    B
    quality
    F
    maintenance
    A Model Context Protocol server that enables AI assistants to interact with Sentry for error tracking and monitoring, allowing retrieval and analysis of error data, project management, and performance monitoring through the Sentry API.
    11
    21
  • F
    license
    Not graded
    quality
    D
    maintenance
    A TypeScript implementation of a Model Context Protocol server that connects to Sentry error tracking service, allowing AI models to query and analyze error reports and events.
    31

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/getsentry/sentry-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server