Sentry MCP

Sentry's own server for debugging with Sentry issues, events, traces and docs from a coding agent

Official · Sentry JavaScript Remote (hosted) · Streamable HTTPLocal · stdio DevOps and monitoringDeveloper tools

95 popularity score ★ 958 ↓ 247k/wk

Connect your client

Remote (hosted)

Add in one click

Opens the app, which asks before it adds the server. Then replace each <NAME> in its settings with your value.

Or add it by command or config

Claude Codeterminal
claude mcp add --transport http sentry https://mcp.sentry.dev/mcp/<ORGANIZATION_SLUG>/<PROJECT_SLUG>
CursorCursor MCP settings
{
  "mcpServers": {
    "sentry": {
      "url": "https://mcp.sentry.dev/mcp/<ORGANIZATION_SLUG>/<PROJECT_SLUG>"
    }
  }
}
VS CodeCommand Palette, MCP: Add Server, HTTP, then the endpoint address
{
  "servers": {
    "sentry": {
      "type": "http",
      "url": "https://mcp.sentry.dev/mcp"
    }
  }
}
Local (npm)

Add in one click

Opens the app, which asks before it adds the server. Then replace each <NAME> in its settings with your value.

Or add it by command or config

It needs SENTRY_AUTH_TOKEN. Replace each <NAME> with your value.

Claude CodeTerminal
claude mcp add sentry -e SENTRY_AUTH_TOKEN=<SENTRY_AUTH_TOKEN> -- npx -y @sentry/mcp-server@latest
Claude Desktopclaude_desktop_config.json
{
  "mcpServers": {
    "sentry": {
      "command": "npx",
      "args": [
        "-y",
        "@sentry/mcp-server@latest"
      ],
      "env": {
        "SENTRY_AUTH_TOKEN": "<SENTRY_AUTH_TOKEN>"
      }
    }
  }
}
Cursor~/.cursor/mcp.json
{
  "mcpServers": {
    "sentry": {
      "command": "npx",
      "args": [
        "-y",
        "@sentry/mcp-server@latest"
      ],
      "env": {
        "SENTRY_AUTH_TOKEN": "<SENTRY_AUTH_TOKEN>"
      }
    }
  }
}
VS Code.vscode/mcp.json
{
  "servers": {
    "sentry": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@sentry/mcp-server@latest"
      ],
      "env": {
        "SENTRY_AUTH_TOKEN": "<SENTRY_AUTH_TOKEN>"
      }
    }
  }
}
Codex~/.codex/config.toml
[mcp_servers.sentry]
command = "npx"
args = ["-y", "@sentry/mcp-server@latest"]

[mcp_servers.sentry.env]
SENTRY_AUTH_TOKEN = "<SENTRY_AUTH_TOKEN>"
Gemini CLITerminal
gemini mcp add --scope user -e SENTRY_AUTH_TOKEN=<SENTRY_AUTH_TOKEN> sentry npx -- -y @sentry/mcp-server@latest

Settings 12

SENTRY_AUTH_TOKEN secret Required: Sentry user auth token; wins over a stored login. Can be left out after `npx -y @sentry/mcp-server auth login`. SENTRY_ACCESS_TOKEN is the deprecated old name.
SENTRY_HOST Optional: Hostname of a self-hosted Sentry; drops the seer skill from the defaults. Default sentry.io.
SENTRY_URL Optional: Full Sentry URL instead of SENTRY_HOST; an http:// URL allows a self-hosted host without TLS.
MCP_SKILLS Optional: Comma-separated skills to grant, e.g. inspect,triage; all active skills when unset.
MCP_DISABLE_SKILLS Optional: Comma-separated skills to turn off, e.g. project-management.
SENTRY_CLI_NO_TELEMETRY Optional: Set to 1 to stop the server reporting its errors and traces to Sentry (DO_NOT_TRACK=1 works too).
Set together: llm
EMBEDDED_AGENT_PROVIDER Optional: openai, azure-openai, anthropic or openrouter; set it with the matching key. For plain-language search.
OPENAI_API_KEY secret Optional: Key when the provider is openai. For plain-language search.
ANTHROPIC_API_KEY secret Optional: Key when the provider is anthropic. For plain-language search.
OPENROUTER_API_KEY secret Optional: Key when the provider is openrouter. For plain-language search.
OPENAI_MODEL Optional: Model override for the OpenAI provider.
ANTHROPIC_MODEL Optional: Model override for the Anthropic provider.

What it does

Sentry MCP is Sentry's own MCP server. It sits between an assistant and the Sentry API and is built for coding agents such as Cursor and Claude Code, so most of its tools serve debugging. An agent can search errors, logs, traces, metrics, profiles and replays, read an issue with its stack trace and breadcrumbs, update or annotate it, link it to an outside ticket, and start a Seer analysis. Other tools set up teams, projects and client keys (DSNs), or create, change and delete alert rules and cron, uptime and metric monitors. It can also search Sentry's documentation.

The catalog in the code holds 79 tools. Two are deprecated aliases (get_ai_conversation_details, search_ai_conversations), and search_events is now marked deprecated in favour of one search tool per dataset. Fourteen tools are listed to the client directly. The rest are reached through search_sentry_tools and execute_sentry_tool, a gateway the code calls a temporary fallback while full listing rolls out. Skills such as inspect, triage, seer and project-management decide which tools are on offer.

Sentry runs it as a hosted service at https://mcp.sentry.dev/mcp, where you sign in with OAuth. The address can be narrowed to one organization or project (/mcp/{organizationSlug}/{projectSlug}), so tools default to it.

The local version is the npm package @sentry/mcp-server, and it is the way to reach self-hosted Sentry. The package is now the Sentry CLI's `sentry mcp` command bundled into one file. It takes a user auth token in SENTRY_AUTH_TOKEN, or a login made once with `npx -y @sentry/mcp-server auth login`, which the `sentry` CLI shares. Plain-language search needs an OpenAI, Azure OpenAI, Anthropic or OpenRouter key. Without one, those tools take Sentry query syntax only.

What it needs

To run it yourselfNode.js 22.15+
Runs onmacOS, Windows, Linux
SentryFree tiersentry.io account or a self-hosted Sentry; self-hosted needs the local version
OpenAI, Azure OpenAI, Anthropic or OpenRouterPaid planoptional: only for the plain-language translation in the search tools

For the local version, create a Sentry user auth token with org:read, project:read, project:write, team:read, team:write and event:write, and pass it as SENTRY_AUTH_TOKEN. Instead you can run `npx -y @sentry/mcp-server auth login` once in a terminal. The server only starts that sign-in itself when stdin is a terminal, so a client-launched server with no token and no stored login exits with an error. For self-hosted Sentry set SENTRY_HOST, or an http:// SENTRY_URL for a host without TLS.

Limits

  • Limit The README calls the stdio transport a work in progress. The hosted service is the main way Sentry supports.
  • Not covered On a self-hosted host the seer skill is left out of the default skills; --skills=seer or --all-skills opts back in (lib/mcp/config.ts).
  • Not covered The automatic sign-in never runs against a self-hosted host that has not been confirmed; give a token or log in first (lib/mcp.ts).
  • Cost Plain-language search sends queries to the LLM provider you configure, billed on your own key.
  • Limit Picking the LLM provider from whichever key is set is deprecated; set EMBEDDED_AGENT_PROVIDER explicitly.
  • Limit SENTRY_ACCESS_TOKEN and the --host, --url and --insecure-http flags still work but are deprecated and print a warning.
  • Limit The local server reports errors and traces to Sentry's own CLI project by default, including AI call inputs and outputs, until turned off.
  • Early release Experimental tool variants are behind --experimental locally or ?experimental=1 on the hosted address.

Who it suits

Suits developers on sentry.io who want a coding agent to look into production errors, traces and issues and act on them, and who are happy to sign in with OAuth to Sentry's hosted endpoint. Scoping the address to one project keeps the tool set small. Teams on self-hosted Sentry need the local version with a token, and lose Seer unless they opt back in and their install runs it. Its tools can update issues and change projects, teams and client keys, and some delete alert rules and monitors, so narrow it with skills (inspect alone, say) when the assistant should only read. Anyone running it locally who wants nothing sent to Sentry should set SENTRY_CLI_NO_TELEMETRY=1.

Tools 60 of 79

37 only read, 18 change things, 5 can delete or overwrite.

find_organizations
List the Sentry organizations the token can see
find_projects
List projects in an organization
update_issue changes
Change an issue's status, assignee or resolution
search_errors
Search error events, from plain language or Sentry query syntax
search_logs
Search log entries, from plain language or Sentry query syntax
search_traces
Search spans and traces, from plain language or Sentry query syntax
search_metrics
Search metric data, from plain language or Sentry query syntax
search_profiles
Search profiling data, from plain language or Sentry query syntax
search_replays
Search session replays, from plain language or Sentry query syntax
analyze_issue_with_seer changes
Start or fetch a Seer root-cause analysis for an issue
search_issues
Search grouped issues, from plain language or Sentry query syntax
get_sentry_resource
Fetch an issue, event, trace, replay, monitor or snapshot by Sentry URL or by type and ID
search_sentry_tools
Search the catalog of further tools that are not listed directly
execute_sentry_tool changes
Run a catalog tool found with search_sentry_tools
search_events
Search or count events across errors, logs, spans, metrics, profiles and replays
whoami
Show the Sentry user the token belongs to
find_teams
List teams in an organization
find_releases
List releases of an organization or project
find_dashboards
List dashboards
find_monitors
List monitors
create_monitor changes
Create a cron monitor
delete_monitor_environment deletes
Delete one environment of a cron monitor
find_uptime_monitors
List uptime monitors
create_uptime_monitor changes
Create an uptime monitor
update_uptime_monitor changes
Change an uptime monitor
delete_uptime_monitor deletes
Delete an uptime monitor
find_metric_monitors
List metric monitors
create_metric_monitor changes
Create a metric monitor
update_metric_monitor changes
Change a metric monitor
delete_metric_monitor deletes
Delete a metric monitor
find_alert_rules
List alert rules
get_alert_rule
Read one alert rule
create_alert_rule changes
Create an alert rule
update_alert_rule changes
Change an alert rule
delete_alert_rule deletes
Delete an alert rule
get_issue_details
Read the details of one issue
get_event_stacktrace
Read the stack trace of an event
get_issue_activity
Read an issue's activity history
get_issue_breadcrumbs
Read the breadcrumbs recorded with an issue's event
search_issue_events
Search the events inside one issue
search_attributes
Find the attribute keys available on spans, logs and metrics
find_dropped_events
Show events dropped by the SDK or at ingest
add_issue_note changes
Add a note (comment) to an issue
link_issue changes
Link an external ticket or pull request to an issue by its URL
unlink_issue deletes
Remove a linked external ticket from an issue
get_trace_details
Read a trace overview
get_replay_details
Read a session replay summary
get_profile
Read a profile for performance analysis
search_agent_conversations
Search recorded AI agent conversations
get_agent_conversation_details
Read one recorded AI agent conversation
create_team changes
Create a team
create_project changes
Create a project
update_project changes
Change a project's settings
add_team_to_project changes
Give a team access to a project
create_dsn changes
Create a client key (DSN) for a project
find_dsns
List a project's client keys (DSNs)
search_docs
Search Sentry's documentation
get_doc
Fetch a full Sentry documentation page
get_snapshot
Read a preprod build snapshot
submit_feedback_to_sentry_team changes
Send a report about a problem with the server to its maintainers

Similar servers