Skip to main content
Glama
HieuAnh87

selfhosted-sentry-mcp

by HieuAnh87

selfhosted-sentry-mcp

npm version License: MIT Model Context Protocol Add to Cursor

MCP server for self-hosted Sentry instances with debugging-focused tools.

Overview

This server provides MCP tools for querying and triaging issues and events in self-hosted Sentry.

Key capabilities:

  • Issue and project listing with pagination and search.

  • Event inspection with stack frame extraction.

  • Grouping analysis via issue hashes.

  • Debug symbol (dSYM) checks for iOS/macOS crashes.

  • Raw Sentry API access for edge cases.

Related MCP server: Sentry MCP Server

Quickstart

Prerequisites

  • Node.js 20+

  • Self-hosted Sentry instance

Getting Sentry Credentials

You need 3 environment variables from your Sentry instance:

1. SENTRY_URL

https://your-sentry-instance.com

The base URL of your self-hosted Sentry.

2. SENTRY_AUTH_TOKEN

  1. Go to Settings > Auth Tokens

  2. Click Create New Token

  3. Select scopes: issue:read, project:read, event:read, issue:write, comment:write

  4. Copy the token

3. SENTRY_ORG_SLUG

  1. Go to Settings > General in your organization

  2. Find Organization Slug (e.g., my-org)

  3. Or check the URL: https://your-sentry.com/organizations/[slug]/

Install

Option 1: Install from npm (recommended)

npm install -g selfhosted-sentry-mcp

Option 2: Install from source

git clone https://github.com/HieuAnh87/sentry-selfhosted-mcp.git
cd sentry-selfhosted-mcp
npm install
npm run build

Tools

24 tools available across 6 categories:

Issue Tools

Tool

Purpose

Input

get_sentry_issue

Issue details by ID or URL

issue_id_or_url + optional filters

list_sentry_projects

List all projects in org

{}

list_sentry_issues

List issues in a project

project_slug + optional filters

list_issues

Search issues with Sentry query syntax

query, sort, limit, cursor

update_sentry_issue_status

Update issue status

issue_id, status

create_sentry_issue_comment

Add issue comment

issue_id, comment_text

get_issue_hashes

Get fingerprint hashes

issue_id, optional cursor

bulk_update_issues

Bulk resolve/ignore issues

project_slug + optional query, status, assigned_to, has_seen

Event Tools

Tool

Purpose

Input

get_sentry_event_details

Event details with entry filtering

project_slug, event_id

list_issue_events

List events for an issue

issue_id, optional limit, cursor, full

list_error_events

Search error events in a project

project_slug + optional filters

get_stack_frames

Extract structured stack frames

project_slug, event_id, in_app_only, max_frames

check_dsym_status

Check missing dSYM symbols

project_slug, optional event_id

list_breadcrumbs

Extract breadcrumbs from event

project_slug, event_id, optional limit, type

Release Tools

Tool

Purpose

Input

list_releases

List releases in org

query, date, limit, cursor, sort

get_release_details

Release details with health stats

version, optional full

Organization Tools

Tool

Purpose

Input

list_teams

List all teams in org

{}

get_issue_tags

List all tags for an issue

issue_id

get_issue_tag_values

Get tag value distribution

issue_id, tag_key, optional limit

list_activity

Issue activity log

issue_id, optional limit, cursor

Advanced Tools

Tool

Purpose

Input

get_trace_details

Distributed trace with spans

trace_id, optional max_spans

get_grouping_config

Fingerprinting rules

issue_id

merge_issues

Merge issues by hash

issue_id, target_ids

Raw API

Tool

Purpose

Input

raw_sentry_api

Any Sentry API endpoint

endpoint + optional method, params, body, grep_pattern

Configuration

Set environment variables:

  • SENTRY_URL: Base URL of your self-hosted Sentry instance.

  • SENTRY_AUTH_TOKEN: Sentry API token (recommended scopes: issue:read, project:read, event:read, issue:write, comment:write).

  • SENTRY_ORG_SLUG: Organization slug.

Claude Code / Cursor Configuration

Add to your MCP client configuration file:

  • Claude Code: ~/.claude/settings.json or project-level .claude/settings.json

  • Cursor: ~/.cursor/mcp.json (global) or .cursor/mcp.json (project-level)

Option 1: Using npx (recommended - simplest)

{
  "mcpServers": {
    "sentry-selfhosted-mcp": {
      "command": "npx",
      "args": ["-y", "selfhosted-sentry-mcp"],
      "env": {
        "SENTRY_URL": "https://your-sentry-instance.com",
        "SENTRY_AUTH_TOKEN": "your-auth-token",
        "SENTRY_ORG_SLUG": "your-org-slug"
      }
    }
  }
}

Option 2: Using global npm install

{
  "mcpServers": {
    "sentry-selfhosted-mcp": {
      "command": "selfhosted-sentry-mcp",
      "args": [],
      "env": {
        "SENTRY_URL": "https://your-sentry-instance.com",
        "SENTRY_AUTH_TOKEN": "your-auth-token",
        "SENTRY_ORG_SLUG": "your-org-slug"
      }
    }
  }
}

Option 3: From local source

{
  "mcpServers": {
    "sentry-selfhosted-mcp": {
      "command": "node",
      "args": ["<full/path/to/sentry-selfhosted-mcp/build/index.js>"],
      "env": {
        "SENTRY_URL": "https://your-sentry-instance.com",
        "SENTRY_AUTH_TOKEN": "your-auth-token",
        "SENTRY_ORG_SLUG": "your-org-slug"
      }
    }
  }
}

Docker

Build:

docker build -t sentry-selfhosted-mcp:latest .

Claude Code config:

{
  "mcpServers": {
    "sentry-selfhosted-mcp": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "-e", "SENTRY_URL",
        "-e", "SENTRY_AUTH_TOKEN",
        "-e", "SENTRY_ORG_SLUG",
        "sentry-selfhosted-mcp:latest"
      ],
      "env": {
        "SENTRY_URL": "https://your-sentry-instance.com",
        "SENTRY_AUTH_TOKEN": "your-auth-token",
        "SENTRY_ORG_SLUG": "your-org-slug"
      }
    }
  }
}

Use env file:

SENTRY_URL=https://your-sentry-instance.com
SENTRY_AUTH_TOKEN=your-auth-token
SENTRY_ORG_SLUG=your-org-slug
{
  "mcpServers": {
    "sentry-selfhosted-mcp": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "--env-file", "/path/to/.env",
        "sentry-selfhosted-mcp:latest"
      ]
    }
  }
}

Verify:

echo '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | docker run -i --rm \
  -e SENTRY_URL=https://example.com \
  -e SENTRY_AUTH_TOKEN=test \
  -e SENTRY_ORG_SLUG=test \
  sentry-selfhosted-mcp:latest

Development

npm install
npm run build

Run MCP inspector:

npx @modelcontextprotocol/inspector build/index.js

Security

  • Use least-privilege Sentry API tokens.

  • Avoid logging sensitive data in MCP client logs.

Troubleshooting

Server not starting or tools not showing:

  • Verify SENTRY_URL, SENTRY_AUTH_TOKEN, and SENTRY_ORG_SLUG are set correctly.

  • Check the token has required scopes (issue:read, project:read, event:read, issue:write, comment:write).

  • Ensure Node.js 20+ is installed: node --version.

"Unauthorized" or "403" errors:

  • Verify your Sentry API token is valid and not expired.

  • Check that the token has permissions for the organization specified in SENTRY_ORG_SLUG.

"Project not found" errors:

  • Confirm the project slug exists in your Sentry organization.

  • Use list_sentry_projects tool to see available projects.

Empty or truncated responses:

  • For event details, use limit parameter to paginate through large events.

  • For raw_sentry_api, use grep_pattern to filter responses from large endpoints.

Docker container exits immediately:

  • Ensure all three environment variables are passed: SENTRY_URL, SENTRY_AUTH_TOKEN, SENTRY_ORG_SLUG.

  • Check Docker logs: docker logs <container-id>.

FAQ

Q: Is this server self-hosted only? A: It is designed for self-hosted Sentry, but it should also work with Sentry SaaS if the API token and org slug are valid.

Q: Why use raw_sentry_api if other tools exist? A: It exposes any API endpoint for edge cases not covered by typed tools. Use grep_pattern on event endpoints to keep responses small.

License

MIT

Available Tools

24 tools
bulk_update_issuesB

Bulk update multiple issues at once (resolve, ignore, unresolve, assign). Useful for triaging many issues.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoSentry search query to select issues (e.g., "is:unresolved environment:staging").
statusNoNew status.
has_seenNoMark issues as seen.
assigned_toNoTeam or user to assign to.
project_slugYesProject slug.

TDQS

B3.4/5.0
Behavior2/5

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

No annotations provided. Description lists actions but does not disclose behavioral traits such as destructive nature, authentication needs, rate limits, or whether changes are reversible.

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?

Two sentences with no wasted words. Front-loaded with main purpose.

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?

Despite full schema coverage, description lacks completeness: doesn't explain that query selects issues for bulk update, or that assigned_to requires specific format. For a mutation tool, more context on scope and side effects would be needed.

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 coverage is 100%, so baseline 3. Description does not add significant meaning beyond schema descriptions; no extra context on query format or assignment syntax.

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?

Description clearly states 'Bulk update multiple issues at once' and lists actions: resolve, ignore, unresolve, assign. This distinguishes it from siblings like update_sentry_issue_status which likely updates a single issue.

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?

Says 'Useful for triaging many issues', implying when to use, but does not explicitly state when not to use or name alternatives like single update.

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

check_dsym_statusA

Check if debug symbols (dSYM files) are missing for iOS/macOS crashes.

ParametersJSON Schema
NameRequiredDescriptionDefault
event_idNoOptional: Specific event ID.
project_slugYesProject slug.

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 full burden. It only states the tool 'checks if debug symbols are missing' but does not disclose the output format (e.g., boolean, list of missing symbols), side effects (read-only), or any other behavioral details. This lack of transparency could hinder agent's understanding.

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?

A single sentence that is direct and to the point. No unnecessary words, making it efficient for quick parsing.

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 simplicity of tool (2 parameters, no nested objects, no output schema), the description is adequate but lacks information about return values. Agent may need to infer the response format from the tool name. For a simple check, this is acceptable but slightly incomplete.

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 both parameters are already documented. The description does not add additional semantic meaning beyond what the schema provides, hence baseline score of 3 is appropriate.

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?

Description clearly states verb 'check', resource 'debug symbols (dSYM files)', and context 'for iOS/macOS crashes'. It uniquely identifies the tool's purpose and distinguishes from sibling tools which deal with issues and releases.

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?

No explicit guidance on when to use this tool versus alternatives. While the tool is unique among siblings, the description does not provide context for when checking dSYM status is appropriate or mention any prerequisites.

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

create_sentry_issue_commentB

Add a comment to a Sentry issue.

ParametersJSON Schema
NameRequiredDescriptionDefault
issue_idYesIssue ID.
comment_textYesComment text.

TDQS

B3.2/5.0
Behavior2/5

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

The description does not disclose behavioral traits beyond the basic action. With no annotations, it fails to explain whether the comment is appended, overwrites, or has any side effects, nor does it mention authentication or error 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 a single, concise sentence that immediately conveys the tool's action. However, it could be slightly more descriptive without sacrificing brevity.

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 simplicity (2 parameters, no output schema), the description minimally covers the purpose. However, it lacks behavioral context and usage conditions, which would be valuable for an 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 coverage is 100%, so the baseline is 3. The description does not add any additional meaning or constraints beyond the parameter names and brief schema descriptions like 'Issue ID.' and 'Comment text.'

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 action ('Add a comment') and the resource ('to a Sentry issue'), making the tool's purpose unmistakable. It is distinct from sibling tools, which focus on listing, updating, or merging issues rather than adding comments.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives, such as updating the issue directly. The description does not mention any prerequisites, context, or exclusions.

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

get_grouping_configA

Get the fingerprinting rules and grouping configuration for an issue. Shows why events are grouped together.

ParametersJSON Schema
NameRequiredDescriptionDefault
issue_idYesIssue ID.

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description bears full burden. It indicates a read operation (get) and mentions the output (rules and config, explanation of grouping). However, it does not disclose aspects like required permissions, return format, or potential errors. The transparency is adequate but not thorough.

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?

Two concise sentences: first states the action and resource, second adds the value proposition. Front-loaded, every word earns its place.

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?

For a simple one-parameter getter without an output schema, the description adequately explains what is returned (configuration and rationale). It could hint at the structure of the configuration object, but given the tool's simplicity, the description is complete enough.

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 coverage is 100%: the only parameter 'issue_id' is fully described in the input schema. The description does not add extra meaning beyond what the schema provides, so it meets the baseline expectation.

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?

Clearly states the tool retrieves 'fingerprinting rules and grouping configuration', with the added value 'shows why events are grouped together'. This distinguishes it from sibling tools like 'get_issue_hashes' or 'get_issue_tags' which deal with different aspects of issues.

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 implies usage when understanding grouping behavior (e.g., to inspect why events are grouped), but does not explicitly state when not to use it or mention alternative tools. The context is clear enough for appropriate selection.

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

get_issue_hashesA

Get the fingerprint hashes for an issue. Useful for understanding why events are grouped together.

ParametersJSON Schema
NameRequiredDescriptionDefault
cursorNoPagination cursor.
issue_idYesIssue ID.

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description carries the burden. It states 'Get' implying read-only, but does not disclose any potential side effects, authentication needs, or error conditions. The behavior is minimal and adequately implied.

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?

Two short sentences with no redundant information. Every sentence adds value, making it highly concise and front-loaded.

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?

For a simple tool with two parameters and no output schema, the description covers the core purpose. It could briefly mention the return format (e.g., list of hashes), but the lack is minor given the simplicity.

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 coverage is 100%, and the description adds no extra meaning beyond what is already in the parameter descriptions. The description confirms issue_id is used but does not enhance understanding of cursor or issue_id formats.

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 uses the specific verb 'Get' and the resource 'fingerprint hashes for an issue', clearly differentiating it from sibling tools like get_issue_tags or get_grouping_config. The added 'Useful for understanding why events are grouped together' reinforces the purpose.

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 context for when to use the tool ('to understand grouping'), but does not explicitly mention when not to use it or provide alternatives among sibling tools.

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

get_issue_tagsB

List all tags captured for an issue. Tags help identify patterns (e.g., environment, OS, user segment affected).

ParametersJSON Schema
NameRequiredDescriptionDefault
issue_idYesIssue ID.

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are present, and the description does not disclose any behavioral traits such as authentication needs, rate limits, or side effects. It only states the basic output.

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 two sentences, front-loaded with the action and purpose. No unnecessary words, making it efficient and easy to parse.

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 low complexity (one parameter, no output schema), the description provides basic purpose and examples but lacks usage guidelines and behavioral transparency, leaving 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?

The single parameter 'issue_id' is described concisely in the schema. The description adds examples of tag categories but does not enhance the parameter meaning significantly. Schema description coverage is 100%, so baseline 3 is appropriate.

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 (list) and resource (tags captured for an issue), and provides examples of tag categories. However, it does not explicitly differentiate from the sibling tool 'get_issue_tag_values', which retrieves values for a specific tag key.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives or when not to use it. The description only states what it does, lacking contextual usage information.

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

get_issue_tag_valuesA

Get tag value distribution for a specific tag key. Shows which values occur most frequently for an issue.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax values to return (1-100, default: 10).
tag_keyYesTag key (e.g., "environment", "release", "user.email", "os.name").
issue_idYesIssue ID.

TDQS

A3.6/5.0
Behavior3/5

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

No annotations exist, so description carries full burden. It mentions 'most frequently' but lacks detail on sorting, counting basis (issues vs events), pagination, or rate limits. Adequate but minimal.

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?

Two sentences, front-loaded with action, no unnecessary words. Efficient and focused.

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?

Missing output format (what does the distribution look like?) and prerequisites (issue/tag must exist). Given no output schema, description should compensate but does not.

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 coverage is 100% with clear parameter descriptions. The description adds value by explaining the tool produces a distribution, but does not provide additional semantics beyond 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 it retrieves tag value distribution for a specific tag key, distinguishing it from sibling tool 'get_issue_tags' which likely lists all tags. The verb 'get' and resource 'issue tag values' are specific.

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 implies use for frequency analysis of tag values but does not explicitly state when to use vs. alternatives like 'get_issue_tags'. No exclusions or context provided.

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

get_release_detailsB

Get detailed information about a release including health stats, commits, and authors.

ParametersJSON Schema
NameRequiredDescriptionDefault
fullNoInclude full commit and author data (default: false).
versionYesRelease version (e.g., "1.2.3" or full commit SHA).

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description must fully disclose behavioral traits. However, it only describes the output content and does not explicitly state whether the operation is read-only, idempotent, or has side effects. It also lacks information about permissions, rate limits, or potential errors.

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 a single sentence with no superfluous words. It is front-loaded with the main purpose and key output elements. However, it could be slightly more structured (e.g., listing key fields) to improve scannability.

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?

The description mentions the main output categories (health stats, commits, authors) but does not specify the response format, pagination, or any constraints. Given the tool has no output schema and simple parameters (2), the description is minimally adequate but lacks details about error conditions or edge cases.

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, providing clear parameter meanings (version format, full flag purpose). The description adds no additional semantic value beyond what the schema already states, so the baseline score of 3 is appropriate.

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 'gets detailed information about a release' and lists specific content types (health stats, commits, authors). It uses a specific verb and resource, effectively distinguishing it from sibling tools like 'list_releases' which likely provides a summary list without details.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. There is no mention of when not to use it (e.g., for updating issues), nor any reference to sibling tools or prerequisites. The agent is left to infer usage solely from the description.

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

get_sentry_event_detailsB

Retrieve details for a specific event ID within a project. IMPORTANT: For large events, always use limit parameter (e.g., limit: 10) to avoid token limits.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoRECOMMENDED: Limit entries returned (default: 5).
offsetNoOffset for pagination through event entries.
event_idYesThe ID of the event.
entry_typeNoFilter to specific entry type ('exception', 'message', 'breadcrumbs', 'request', 'threads', 'debugmeta', 'contexts').
project_slugYesThe slug of the project.

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 the full burden of behavioral disclosure. It only hints at potential data volume issues (token limits) but does not state whether the tool is read-only, what authentication is required, rate limits, or other side effects. The word 'retrieve' implies read-only, but this is not explicit.

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 exceptionally concise: two sentences with no wasted words. The first sentence states the core purpose, and the second adds an important usage note. Information is front-loaded and easy to parse.

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 moderate complexity (5 parameters, no output schema, no annotations), the description covers the basic purpose and a key usage tip but lacks depth. It does not explain what 'details' include, error handling (e.g., event not found), or response structure. The schema handles parameter descriptions well, but the overall context for the agent is adequate but not comprehensive.

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 baseline is 3. The description adds marginal value by emphasizing the limit parameter for large events, but does not explain other parameters like offset or entry_type beyond what is in the schema. The warning about token limits is useful but does not significantly enhance parameter 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 that the tool retrieves details for a specific event ID within a project. This distinguishes it from siblings like list_issue_events which list events rather than fetch a single one. However, it does not explicitly differentiate from tools like get_sentry_issue, which retrieves an issue rather than an event.

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 an important usage tip: for large events, always use the limit parameter to avoid token limits. However, it does not provide guidance on when to use this tool versus siblings (e.g., when to use get_sentry_event_details vs list_issue_events or get_sentry_issue). No exclusions or alternatives are mentioned.

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

get_sentry_issueA

Retrieve details for a specific Sentry issue by ID or URL, including the stacktrace from the latest event. Supports filtering and automatic truncation to reduce response size.

ParametersJSON Schema
NameRequiredDescriptionDefault
grep_patternNoOptional: Regex pattern to filter response content.
exclude_fieldsNoOptional: List of fields to exclude (blacklist). Use dot notation for nested fields.
include_fieldsNoOptional: List of fields to include (whitelist). Use dot notation for nested fields (e.g., "latest_event.entries").
issue_id_or_urlYesSentry issue ID or full issue URL. Issue ID is a number e.g: 123456
max_stack_framesNoOptional: Maximum number of stack trace frames to return (default: all).
include_latest_eventNoInclude latest event details (default: false to reduce response size)

TDQS

A3.7/5.0
Behavior3/5

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

No annotations are provided, so the description must fully disclose behavior. It mentions filtering and automatic truncation to reduce response size, which is useful, but does not detail the truncation mechanism, error handling, or any side effects. It also notes that latest event details are only included if requested.

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 a single, well-structured sentence that conveys the core purpose, key features (stacktrace, filtering, truncation), and input method (ID or URL). Every part is informative and there is no redundancy.

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 has 6 parameters, no output schema, and no annotations, the description should provide more context about response structure, error cases, and the effect of filters. It mentions truncation but not how to control it. It is adequate but leaves several aspects unexplained.

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?

All six parameters have descriptions in the input schema, so schema coverage is 100%. The description adds the concept of 'filtering and automatic truncation' but does not materially extend meaning beyond the schema. Baseline 3 is appropriate.

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 that the tool retrieves details for a specific Sentry issue by ID or URL, including the stacktrace from the latest event. This distinguishes it from sibling tools like list_issues which list multiple issues, or get_sentry_event_details which focuses on events.

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 implies the tool is for fetching details of a known issue, but it does not explicitly state when to use this tool over alternatives like list_issues or get_sentry_event_details. No guidance on prerequisites or exclusions.

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

get_stack_framesB

Extract structured stack trace frames from an event. Optimized for debugging.

ParametersJSON Schema
NameRequiredDescriptionDefault
event_idYesThe event ID.
max_framesNoMax frames to return (default: 50).
in_app_onlyNoFilter to only application frames (default: false).
project_slugYesThe slug of the project.

TDQS

B3.1/5.0
Behavior2/5

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

No annotations provided, so the description bears full responsibility. It only says 'Extract structured stack trace frames' and 'Optimized for debugging' but does not disclose any behavioral traits like error handling, permission needs, or output structure. The brevity hides important details.

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 very short (two sentences) with no filler. It is front-loaded with the purpose. However, the extreme brevity might sacrifice completeness, but for conciseness it is effective.

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?

With 4 parameters, 2 required, no output schema, and no annotations, the description lacks sufficient context. It does not explain what 'structured' means, how frames are ordered, or what happens if the event is missing. The agent would need additional information to use it reliably.

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?

Parameter descriptions cover all parameters (100% coverage) with default values and constraints. The description adds no additional meaning beyond the schema, which already provides clear parameter details.

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 verb 'Extract' and the resource 'stack trace frames from an event', and the phrase 'Optimized for debugging' adds context. It distinguishes from sibling tools which are mostly for issues, events, and releases, not specifically stack frames.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives, no mention of prerequisites or when not to use it. The description only states what it does without contextual usage advice.

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

get_trace_detailsA

Get distributed trace details with full span tree and timing information. Requires Performance data.

ParametersJSON Schema
NameRequiredDescriptionDefault
trace_idYesTrace ID.
max_spansNoMax spans to return (1-500, default: 100).

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. It only discloses the requirement for Performance data, but does not mention other behavioral traits such as cost, rate limits, error handling, or what happens if the trace_id is invalid.

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 two concise sentences, front-loaded with the core purpose and a prerequisite. Every sentence adds value with no wasted words.

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 output schema, the description hints at return structure ('full span tree and timing information') but could be more complete by mentioning key fields like span IDs or duration. It is adequate but not exhaustive.

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 coverage is 100%, so the schema already documents both parameters. The description does not add additional meaning beyond what the schema provides, so baseline 3 is appropriate.

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 retrieves distributed trace details with full span tree and timing information, which is a specific verb-resource combination. It is distinct from siblings like get_sentry_event_details which focus on events, not traces.

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 mentions a prerequisite ('Requires Performance data') but does not explicitly state when to use this tool versus alternatives or when not to use it. Usage context is implied but lacks explicit guidance.

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

list_activityB

List activity log for an issue. Shows comments, assignments, status changes, and other events.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax activities (1-100, default: 25).
cursorNoPagination cursor.
issue_idYesIssue ID.

TDQS

B3.4/5.0
Behavior2/5

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

No annotations provided, so description must fully disclose behavior. It fails to mention ordering (chronological?), pagination behavior (cursor semantics), or read-only nature. Only states it lists events, which is minimal.

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?

Two short sentences, front-loaded with purpose, no fluff or repetition.

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?

With no output schema and 3 parameters, description is too brief. Missing details on return format, event types order, and pagination behavior. A more complete description would enhance agent understanding.

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 coverage is 100% so baseline is 3. Description adds no extra meaning to parameters (e.g., cursor format, limit effects) beyond schema descriptions.

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?

Clearly states verb 'list', resource 'activity log for an issue', and provides examples (comments, assignments, status changes). Distinguishes from sibling list tools like list_issues or list_breadcrumbs by specifying the subject.

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?

Implies usage for viewing issue history but provides no explicit guidance on when to use versus alternatives, such as list_issues or list_issue_events. No when-not-to-use or prerequisites mentioned.

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

list_breadcrumbsB

Extract all breadcrumbs from an event, showing the trail of events leading up to an error.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNoFilter by breadcrumb type (e.g., "default", "http", "navigation", "error").
limitNoMax breadcrumbs to return (1-100, default: 50).
event_idYesEvent ID.
project_slugYesProject slug.

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description should disclose whether the tool is read-only, safe, or has side effects. It only describes the output, not behavioral traits. No contradictions.

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 a single, clear sentence that conveys the tool's purpose efficiently. No extraneous words.

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?

The description lacks details about return format, pagination, or error handling. With no output schema, more context is needed for correct invocation.

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 coverage is 100%, so baseline 3 is appropriate. The description does not add extra meaning beyond the schema; it only explains parameters implicitly through the tool's purpose.

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 verb 'extract' and the resource 'breadcrumbs from an event', with a specific purpose 'showing the trail of events leading up to an error'. This clearly distinguishes it from sibling tools like list_error_events.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. The description does not mention when not to use it or provide context for choosing among siblings.

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

list_error_eventsA

List error events in a project. Search across all events without knowing the issue ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
fullNoInclude full event details (default: false).
limitNoMax events (1-100, default: 25).
queryNoSentry search query.
cursorNoPagination cursor.
project_slugYesThe slug of the project.

TDQS

A3.6/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. The description is minimal and does not disclose behavioral traits beyond listing, such as read-only nature, pagination behavior, or rate limits. Schema covers parameters but not overall behavior.

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 extremely concise with two sentences: first states purpose, second adds differentiator. No wasted words.

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?

Without an output schema, the description should explain what the tool returns. It does not. Additionally, it lacks handling of edge cases, usage examples, or behavior clarification, making it incomplete for a tool with 5 parameters.

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 baseline is 3. The description does not add any meaning beyond the schema; it doesn't explain how parameters interact or provide context for their use.

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?

Clearly states it lists error events in a project, and adds the key differentiator 'Search across all events without knowing the issue ID,' which distinguishes it from siblings like list_issue_events.

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 explicitly states when to use: when you need to search across all events without an issue ID. While it doesn't mention when not to use or name alternatives, the context is clear and helpful.

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

list_issue_eventsB

List all events for a specific issue. Useful to see all occurrences of an error over time.

ParametersJSON Schema
NameRequiredDescriptionDefault
fullNoInclude full event details (default: false).
limitNoMax events (1-100, default: 25).
cursorNoPagination cursor.
issue_idYesThe ID of the issue.

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose behavioral traits such as read-only nature, rate limits, or side effects. The tool likely performs a read operation, but this is not stated.

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 consists of two short sentences with no unnecessary information. The purpose is front-loaded.

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 no output schema and 4 parameters, the description is minimal. It does not explain pagination (cursor), default values, or what the event details include, leaving gaps for the 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?

The input schema already describes all four parameters with 100% coverage. The description adds no additional meaning beyond the schema, so baseline score of 3 is appropriate.

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 it lists all events for a specific issue and mentions usefulness for seeing occurrences over time. This distinguishes from sibling tools like 'list_issues' but does not explicitly differentiate from 'list_error_events'.

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 implies usage context ('useful to see all occurrences of an error over time') but lacks explicit guidance on when to use versus not use, or alternatives among siblings.

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

list_issuesA

List issues using Sentry search query syntax (e.g., "is:unresolved environment:production"). More powerful than list_sentry_issues which is project-scoped.

ParametersJSON Schema
NameRequiredDescriptionDefault
sortNoSort order (default: date).date
limitNoMax issues (1-100, default: 25).
queryNoSentry search query (e.g., "is:unresolved environment:production level:error").
cursorNoPagination cursor.

TDQS

A3.7/5.0
Behavior2/5

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

No annotations provided, yet description fails to mention pagination behavior, rate limits, or that it is a read-only operation. Does not disclose traits beyond the basic query syntax.

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?

Two sentences, front-loaded with purpose and syntax, no fluff. Every word earns its place.

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?

Lacks explanation of output format or return values, and does not cover pagination or rate limiting. However, given the simplicity of the tool and 100% param documentation, it is marginally adequate.

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 coverage is 100%, so baseline is 3. Description adds an example query but does not significantly enhance understanding beyond what the schema already provides.

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?

Clearly states 'List issues' using Sentry search query syntax, and directly contrasts with sibling list_sentry_issues by noting it is not project-scoped.

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?

Provides an example query and explicitly says it's more powerful and not project-scoped compared to list_sentry_issues, giving clear context for when to use this tool.

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

list_releasesB

List releases in the organization. Releases link code deployments to error data.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateNoFilter by adoption status.
sortNoSort order (default: date).date
limitNoMax releases (1-100, default: 25).
queryNoOptional search filter on release version.
cursorNoPagination cursor.

TDQS

B3.3/5.0
Behavior2/5

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

No annotations exist, and the description does not disclose behavioral traits such as pagination (cursor parameter), filtering options, or that it returns a list of releases. The read-only nature is implied but not explicitly stated.

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 extremely concise with two sentences, front-loading the core purpose without any filler or redundancy.

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?

With 5 parameters, no output schema, and no annotations, the description minimally covers the tool's purpose but lacks details on pagination, expected output format, or usage context. Adequate but not thorough.

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 coverage is 100%, so the description adds no extra meaning beyond the schema's parameter descriptions. Baseline score of 3 is appropriate.

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 lists releases in the organization and explains their purpose ('link code deployments to error data'), distinguishing it from sibling tools like get_release_details.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. The description lacks explicit context for selection among listing or searching tools.

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

list_sentry_issuesC

List issues for a specific project, optionally filtering by query or status. Supports pagination.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax issues (1-100, default: 25).
queryNoOptional Sentry search query.
cursorNoPagination cursor.
statusNoFilter by status.
project_slugYesThe slug of the project.

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full burden. It only states a read-like operation and mentions pagination, but does not disclose any behavioral traits like rate limits, authentication requirements, or potential side effects. The minimal disclosure leaves agents underinformed.

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 two short sentences, front-loading the core action and key options. Every word earns its place with no redundancy.

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 (5 parameters, no output schema), the description is too brief. It does not explain return format, pagination details, or default values for limit. The absence of any behavioral or usage context leaves gaps for effective agent usage.

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% coverage with descriptions for all 5 parameters. The description adds little beyond restating that filtering and pagination are possible, so it meets the baseline of 3. It provides no additional semantics like default behavior or parameter interactions.

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 lists issues for a specific project with optional filtering by query or status. It mentions pagination support. However, it does not differentiate from sibling tools like list_issues, which may have similar functionality, and the specific context of 'sentry' is implied by the name but not explained.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives. There are sibling tools like list_issues, list_error_events, and list_releases, but no comparative advice or preconditions are mentioned. Agents would need additional context to choose correctly.

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

list_sentry_projectsA

List all projects within the configured Sentry organization.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose any behavioral traits such as authorization needs, rate limits, or side effects. For a read-only tool, it offers minimal transparency.

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 a single, front-loaded sentence with no wasted words, perfectly sized for its purpose.

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 simplicity of a parameterless list tool, the description is adequate but lacks details on pagination, response format, or whether all projects are returned. An output schema is absent, so additional context would be beneficial.

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 zero parameters, so schema coverage is trivially 100%. The description adds no parameter-level meaning but correctly implies the tool requires no configuration beyond the organization. Baseline for zero parameters is 4.

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 uses the specific verb 'list' and identifies the resource 'projects within the configured Sentry organization', clearly distinguishing it from sibling tools like list_issues or list_releases.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives, nor any exclusions or prerequisites.

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 the organization.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.7/5.0
Behavior2/5

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

No annotations provided, and the description only states the read operation. It does not disclose potential pagination, rate limits, or output format. The burden falls on the description, which is minimal.

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?

Single sentence, no extraneous information. Every word is necessary.

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 simple list tool with no parameters or output schema, the description is adequate but lacks details on return fields or pagination behavior, which would be helpful for an agent.

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?

No parameters exist, so schema coverage is 100%. Description adds no parameter details, but baseline for zero-parameter tools is 4.

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?

Description clearly states 'List all teams in the organization' – a specific verb and resource. It distinguishes from sibling tools like list_sentry_projects and list_issues which target different entities.

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?

No guidance on when to use this tool versus alternatives or exclusions. However, the purpose is self-evident, and no sibling tool provides a team listing, so usage context is implied.

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

merge_issuesA

Merge multiple issues into one by fingerprint hash. Use after identifying that separate issues should be grouped together.

ParametersJSON Schema
NameRequiredDescriptionDefault
issue_idYesPrimary issue ID to merge into.
target_idsYesIssue IDs to merge from (max 10).

TDQS

A3.5/5.0
Behavior2/5

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

Without annotations, description fails to disclose crucial behavioral details such as irreversibility, permissions, or what happens to target issues after merge.

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?

Two concise, front-loaded sentences with no waste. Every word adds value.

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?

Adequate for a two-param tool but lacks details on return value or post-merge state. More context needed for a mutation tool with no output schema or annotations.

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 covers both parameters completely; description adds no extra meaning beyond schema. Baseline score applied.

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?

States specific action (merge issues) and method (by fingerprint hash). Purpose is clear but does not explicitly differentiate from sibling tools.

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?

Explicitly recommends use after identifying that separate issues should be grouped. Provides clear context but no exclusions or alternatives.

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

raw_sentry_apiA

Make a raw API call to any Sentry endpoint. Returns unfiltered JSON. WARNING: Event endpoints can return 100K+ tokens. Use grep_pattern for events.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNoRequest body for POST/PUT.
methodNoHTTP method (default: GET)GET
paramsNoURL query parameters.
endpointYesAPI endpoint path (e.g., 'projects/beoflow/apple-ios/events/abc123/'). Do NOT include /api/0/ prefix.
grep_patternNoCRITICAL for event endpoints: Regex to filter response.

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries full burden. It discloses that output is unfiltered JSON and warns about large responses (100K+ tokens) for event endpoints, which is important. However, it does not mention other behaviors like error handling, rate limits, or authentication required by the underlying 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?

Three concise sentences: purpose, output, and a critical warning. Front-loaded with key information, no superfluous content.

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?

For a raw API tool with no output schema, the description covers return type and a key behavioral warning. It lacks mention of error handling or the fact that the tool is a pass-through, but it is otherwise complete for the tool's complexity.

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 coverage is 100%, so baseline is 3. The description does not add meaning beyond the schema; it only repeats the grep_pattern mention from the schema in the warning.

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 makes a raw API call to any Sentry endpoint, which is a specific verb+resource. It implicitly distinguishes from sibling tools that are specific to particular endpoints.

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 implies use for endpoints not covered by specific tools, but does not explicitly state when to use or when not to use this tool versus siblings. The warning about event endpoints provides some context but no explicit alternatives.

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

update_sentry_issue_statusC

Update the status of a Sentry issue.

ParametersJSON Schema
NameRequiredDescriptionDefault
statusYesNew status.
issue_idYesThe ID of the issue.

TDQS

C2.8/5.0
Behavior2/5

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

With no annotations, the description carries full burden but only states 'Update', a mutation. No disclosure of side effects, permissions, rate limits, or confirmation behavior.

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

Conciseness3/5

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

The description is a single sentence, very concise, but lacks necessary detail. It is efficient but under-specified, balancing conciseness and completeness poorly.

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 simple tool with clear schema and no output schema, the description should provide context about status semantics or constraints. It does not, and sibling list is large, so agent needs more guidance.

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 baseline is 3. The description adds no extra meaning beyond the schema's parameter descriptions, which are basic.

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 'Update' and the resource 'status of a Sentry issue', making the purpose specific. It distinguishes from siblings like 'bulk_update_issues' by implying single-issue update.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like bulk_update_issues, and no prerequisites or conditions provided. The agent must infer usage from context.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 24 tool updatesv1.2.0
    • First observedbulk_update_issues
    • First observedcheck_dsym_status
    • First observedcreate_sentry_issue_comment
    • First observedget_grouping_config
    • First observedget_issue_hashes
    • First observedget_issue_tag_values
    • First observedget_issue_tags
    • First observedget_release_details
    • First observedget_sentry_event_details
    • First observedget_sentry_issue
    • First observedget_stack_frames
    • First observedget_trace_details
    • First observedlist_activity
    • First observedlist_breadcrumbs
    • First observedlist_error_events
    • First observedlist_issue_events
    • First observedlist_issues
    • First observedlist_releases
    • First observedlist_sentry_issues
    • First observedlist_sentry_projects
    • First observedlist_teams
    • First observedmerge_issues
    • First observedraw_sentry_api
    • First observedupdate_sentry_issue_status

TDQS

A3.5/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose. Even tools that might seem overlapping, like list_issues and list_sentry_issues, are differentiated by scope and query syntax. No two tools appear to do the same thing.

Naming Consistency4/5

All tool names use snake_case and follow a verb_noun pattern. The only minor inconsistency is 'raw_sentry_api', where 'raw' is an adjective rather than a verb, but it remains clear and readable.

Tool Count4/5

With 24 tools, the set is slightly above the ideal range but still well-scoped for a comprehensive Sentry integration. Each tool serves a distinct function, and there is no padding.

Completeness4/5

The tool surface covers most essential operations for Sentry issue and event management, including listing, updating, merging, and inspecting details. Minor gaps like user management or alert configuration are acceptable given the server's focus on error tracking.

Maintenance

ActivityInactive
ResponsivenessNo issues

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
    An MCP server that connects to Sentry.io or self-hosted Sentry instances to retrieve and analyze error reports, stack traces, and debugging information.
    2
    -
  • F
    license
    Not graded
    quality
    Not graded
    maintenance
    A stateless FastMCP server that enables interaction with multiple Sentry instances, including US, EU, and self-hosted versions, through a single deployment. It provides tools for searching issues, events, and traces, allowing users to monitor and debug applications using natural language.
    45
    -

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/HieuAnh87/sentry-selfhosted-mcp'

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