Lets an AI coding agent query Sentry issues, errors, traces, and projects to debug and triage problems.
También conocido como getsentry/toolkit, @sentry/mcp-server
- Stars
- 963
- Herramientas
- —
- Descargas, 30 días
- —
- Última versión
- —
- Último commit
- 14 nov 2026
- Licencia
- —
¿Qué es Sentry MCP?
Sentry es un MCP server. Lets an AI coding agent query Sentry issues, errors, traces, and projects to debug and triage problems.
Resumen generado a partir del README del proyecto
Acerca del MCP server de Sentry
Developers using coding assistants like Claude Code or Cursor can use this tool to investigate software errors and performance issues directly from their IDE. It acts as a bridge to Sentry, allowing an AI agent to query issues, traces, logs, and projects to assist with debugging and triage tasks. The server can be run as a remote service via Cloudflare or locally using a stdio transport through the Sentry CLI.
To use the AI-powered search capabilities, such as searching for specific errors or traces using natural language, you must configure an LLM provider like OpenAI, Anthropic, or OpenRouter. For local setups or self-hosted Sentry instances, the server uses your existing CLI login or a Sentry auth token. You can also restrict the agent's scope to a specific organization or project using command-line flags to ensure the AI stays focused on relevant data.
Qué puedes hacer con él
- 1Natural language error searchingAsk your AI agent to find specific errors or traces using plain English instead of complex query syntax.
- 2Automated error triageDelegate Sentry error investigation to a subagent within Claude Code.
- 3Self-hosted Sentry debuggingConnect your coding assistant to a private Sentry deployment using the stdio transport method.
Escrito a partir del README del proyecto. Cada caso de uso se verifica con una cita del mismo.
Cómo instalar Sentry MCP
Formatos verificados el 10 nov 2026Añadir a CursorAñadir a GooseInstalar Sentry MCP en Claude Code
$ claude mcp add toolkit -- npx -y @sentry/mcp-serverInstalar Sentry MCP en Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"toolkit": {
"command": "npx",
"args": [
"-y",
"@sentry/mcp-server"
]
}
}
}Instalar Sentry MCP en VS Code
.vscode/mcp.json
{
"servers": {
"toolkit": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@sentry/mcp-server"
]
}
}
}Instalar Sentry MCP en VS Code CLI
$ code --add-mcp '{"name":"toolkit","type":"stdio","command":"npx","args":["-y","@sentry/mcp-server"]}'Instalar Sentry MCP en Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"toolkit": {
"command": "npx",
"args": [
"-y",
"@sentry/mcp-server"
]
}
}
}Instalar Sentry MCP en Codex
$ codex mcp add toolkit -- npx -y @sentry/mcp-serverInstalar Sentry MCP en Codex config.toml
~/.codex/config.toml
[mcp_servers.toolkit] command = "npx" args = ["-y", "@sentry/mcp-server"]
Instalar Sentry MCP en Gemini CLI
$ gemini mcp add -s user toolkit npx -- -y @sentry/mcp-serverInstalar Sentry MCP en Gemini settings.json
~/.gemini/settings.json
{
"mcpServers": {
"toolkit": {
"command": "npx",
"args": [
"-y",
"@sentry/mcp-server"
]
}
}
}Configuración
ANTHROPIC_API_KEYEMBEDDED_AGENT_PROVIDERMCP_DISABLE_SKILLSMCP_SKILLSOPENAI_API_KEYOPENROUTER_API_KEYOPENROUTER_MODELOPENROUTER_REASONING_EFFORTSENTRY_AUTH_TOKENSENTRY_HOSTSENTRY_URL
| Nombre | Descripción | Tipo |
|---|---|---|
| ANTHROPIC_API_KEY | — | |
| EMBEDDED_AGENT_PROVIDER | — | |
| MCP_DISABLE_SKILLS | — | |
| MCP_SKILLS | — | |
| OPENAI_API_KEY | — | |
| OPENROUTER_API_KEY | — | |
| OPENROUTER_MODEL | — | |
| OPENROUTER_REASONING_EFFORT | — | |
| SENTRY_AUTH_TOKEN | — | |
| SENTRY_HOST | — | |
| SENTRY_URL | — |
Verificaciones automáticas
Ejecutado 12 nov 2026Informe completo →Pasó nuestras verificaciones automáticas. Esto no es una auditoría de seguridad: lee el código y dale al servidor el acceso más limitado que necesite. Cómo funcionan las verificaciones · Qué corregir para obtener más puntos
- Repositorio de origen vinculado y accesibleAprobado
- Licencia de código abierto (OSI)No licenseHallazgo
- Commit o lanzamiento en el último añoAprobado
- El nombre del paquete no es similar a un paquete popularAprobado
- El endpoint remoto usa HTTPSNo verificado
- Las herramientas destructivas están etiquetadasNo verificado
- Sin instrucciones ocultas para el modeloAprobado
- No hay avisos críticos en el paquete ni en sus dependenciasNo verificado
README
Ver en GitHubSentry Toolkit
This repository contains the Sentry CLI, the Sentry MCP server, and shared packages. For the CLI, see the CLI guide and the published documentation at https://cli.sentry.dev/. The documentation index covers both products and shared contributor guidance.
The independent Docs MCP Worker provides documentation
search and AI-generated answers backed by docs.sentry.io.
Sentry MCP
Sentry's MCP service is primarily designed for human-in-the-loop coding agents. Our tool selection and priorities are focused on developer workflows and debugging use cases, rather than providing a general-purpose MCP server for all Sentry functionality.
This remote MCP server acts as middleware to the upstream Sentry API, optimized for coding assistants like Cursor, Claude Code, and similar development tools. It's based on Cloudflare's work towards remote MCPs.
Getting Started
You'll find everything you need to know by visiting the deployed service in production:
If you're looking to contribute, learn how it works, or to run this for self-hosted Sentry, continue below.
Claude Code Plugin
Install as a Claude Code plugin for automatic subagent delegation:
claude plugin marketplace add getsentry/sentry-mcp
claude plugin install sentry-mcp@sentry-mcp
This provides a sentry-mcp subagent that Claude automatically delegates to when you ask about Sentry errors, issues, traces, or performance.
For forward-looking tool variants and features:
claude plugin install sentry-mcp@sentry-mcp-experimental
Stdio vs Remote
While this repository is focused on acting as an MCP service, we also support a stdio transport. It is the easiest way to run the MCP server against a self-hosted Sentry install.
Note: The AI-powered search tools (search_errors, search_traces, search_logs, search_issues, etc.) require an LLM provider (OpenAI, Azure OpenAI, Anthropic, or OpenRouter). These tools use natural language processing to translate queries into Sentry's query syntax. Without a configured provider, these specific tools will be unavailable, but all other tools will function normally.
Sentry CLI (recommended)
Run the stdio server with the Sentry CLI's sentry mcp command. It uses your CLI login, so the MCP config needs no token:
curl https://cli.sentry.dev/install -fsS | bash
sentry auth login
claude mcp add sentry -- sentry mcp
The CLI also installs with brew install getsentry/tools/sentry,
npm install -g sentry, or irm https://cli.sentry.dev/install.ps1 | iex on
Windows. See the CLI installation guide.
Other clients take the same command:
{
"mcpServers": {
"sentry": {
"command": "sentry",
"args": ["mcp"]
}
}
}
Pass <org>/ or <org>/<project> to limit every call to one organization or
project (sentry mcp acme/, sentry mcp acme/web), and --experimental for
forward-looking tool variants. Run sentry mcp --help for every flag and
environment variable, or see the sentry mcp docs.
SENTRY_AUTH_TOKEN, when set, wins over the stored login. See
docs/operations/stdio-auth.md.
To use a token, create a User Auth Token in Sentry with the necessary scopes. As of writing this is:
org:read
project:read
project:write
team:read
team:write
event:write
Need to connect to a self-hosted deployment? Log in to it with
sentry auth login --url https://sentry.example.com, then set
SENTRY_HOST (e.g. SENTRY_HOST=sentry.example.com)
in the MCP server's environment, which also scopes
SENTRY_AUTH_TOKEN to that server. For isolated internal
deployments that only expose plain HTTP, use an http://
SENTRY_URL instead. See the
CLI self-hosted guide.
Seer is not part of self-hosted Sentry, so the seer skill is left out of the
default skill set whenever the host is not sentry.io. If your
self-hosted deployment does run Seer, opt back in explicitly:
SENTRY_HOST=sentry.example.com sentry mcp --skills=inspect,seer
You can also disable any other skill to prevent unsupported tools from being exposed:
SENTRY_HOST=sentry.example.com sentry mcp --disable-skills=project-management
For self-hosted instances without TLS:
SENTRY_URL=http://sentry.internal:9000 sentry mcp
Legacy: npx @sentry/mcp-server
@sentry/mcp-server still
ships the same server, bundled without the rest of the CLI, for clients that
launch it through npx. It shares the CLI's login and takes the same flags and
environment variables:
npx @sentry/mcp-server@latest auth login # once, to sign in
npx @sentry/mcp-server@latest # uses that login
SENTRY_AUTH_TOKEN=sentry-user-token npx @sentry/mcp-server@latest
--access-token / SENTRY_ACCESS_TOKEN from older releases still work but are
deprecated: they act as SENTRY_AUTH_TOKEN and print a warning on stderr.
Remote with an Explicit Sentry Token
Remote clients that support custom HTTP headers can pass an upstream Sentry API token directly to the Cloudflare transport:
{
"mcpServers": {
"sentry": {
"url": "https://mcp.sentry.dev/mcp",
"headers": {
"Authorization": "Sentry-Bearer ${SENTRY_ACCESS_TOKEN}"
}
}
}
}
Sentry-Bearer is intentionally separate from Bearer: Bearer is reserved
for MCP OAuth access tokens. With Sentry-Bearer, the worker does not store,
validate, exchange, or refresh the upstream token. It forwards the token through
the same Sentry API calls used by OAuth-backed sessions, and the client or
upstream provider remains responsible for token lifetime and refresh.
Direct remote auth defaults to all active MCP skills. You can narrow the exposed
tools with ?skills=inspect,triage or ?disable-skills=seer.
Environment Variables
SENTRY_AUTH_TOKEN= # Optional after `auth login`; wins over a stored login
# LLM Provider Configuration (required for AI-powered search tools)
EMBEDDED_AGENT_PROVIDER= # Required when multiple provider keys are set: 'openai', 'azure-openai', 'anthropic', or 'openrouter'
OPENAI_API_KEY= # Required if using OpenAI
ANTHROPIC_API_KEY= # Required if using Anthropic
OPENROUTER_API_KEY= # Required if using OpenRouter
OPENROUTER_MODEL= # Optional OpenRouter model, defaults to 'openai/gpt-5.6-luna'
OPENROUTER_REASONING_EFFORT= # Optional OpenRouter reasoning effort, defaults to 'high'
# Optional overrides
SENTRY_HOST= # For self-hosted deployments (drops 'seer' from the default skills)
MCP_SKILLS= # Grant specific skills (comma-separated, e.g. 'inspect,seer')
MCP_DISABLE_SKILLS= # Disable specific skills (comma-separated, e.g. 'project-management')
Important: Always set EMBEDDED_AGENT_PROVIDER to explicitly specify your LLM provider. Auto-detection based on API keys alone is deprecated and will be removed in a future release. See docs/operations/embedded-agents.md for detailed configuration options.
Example MCP Configuration
{
"mcpServers": {
"sentry": {
"command": "sentry",
"args": ["mcp"],
"env": {
"EMBEDDED_AGENT_PROVIDER": "openai",
"OPENAI_API_KEY": "sk-..."
}
}
}
}
If you leave the host variable unset, the CLI automatically targets the Sentry SaaS service. Only set the override when you operate self-hosted Sentry.
Setting SENTRY_HOST to a self-hosted host also drops the seer skill from
the default set, since Seer is not available on self-hosted Sentry. For a
self-hosted deployment that does run Seer, opt in with MCP_SKILLS:
{
"mcpServers": {
"sentry": {
"command": "sentry",
"args": ["mcp"],
"env": {
"SENTRY_HOST": "sentry.example.com",
"MCP_SKILLS": "inspect,seer"
}
}
}
}
Rate Limits
Tool calls are subject to the Sentry API's rate limits. The MCP server retries rate-limited requests, and transient Sentry server errors on read requests, after a short wait. When a limit lasts longer, the tool returns a Rate Limited message that says when to try again. Agents hit the per-second limits most often by running many Sentry tool calls in parallel, so run them one at a time if you see this message.
MCP Inspector
MCP includes an Inspector, to easily test the service:
pnpm inspector
Enter the MCP server URL (http://localhost:5173) and hit connect. This should trigger the authentication flow for you.
Note: If you have issues with your OAuth flow when accessing the inspector on 127.0.0.1, try using localhost instead by visiting http://localhost:6274.
Local Development
To contribute changes, you'll need to set up your local environment:
-
Set up environment and agent skills:
make setup-env # Creates .env files and installs shared agent skillsThis also runs
npx @sentry/dotagents installto install shared skills from getsentry/skills into.agents/skills/(symlinked into.claude/skillsand.cursor/skills). If you need to update skills later, run it directly:npx @sentry/dotagents install -
Create an OAuth App in Sentry (Settings => API => Applications):
- Homepage URL:
http://localhost:5173 - Authorized Redirect URIs:
http://localhost:5173/oauth/callback - Note your Client ID and generate a Client secret
- Homepage URL:
-
Configure your credentials:
- Edit
.envin the root directory and add eitherOPENAI_API_KEYorOPENROUTER_API_KEY - Edit
packages/mcp-cloudflare/.envand add:SENTRY_CLIENT_ID=your_development_sentry_client_idSENTRY_CLIENT_SECRET=your_development_sentry_client_secretCOOKIE_SECRET=my-super-secret-cookie
- Edit
-
Start the development server:
pnpm dev
Verify
Run the server locally to make it available at http://localhost:5173
pnpm dev
To test the local server, enter http://localhost:5173/mcp into Inspector and hit connect. Once you follow the prompts, you'll be able to "List Tools".
Tests
There are three test suites included: unit tests, evaluations, and manual testing.
Unit tests can be run using:
pnpm test
Evaluations require a .env file in the project root with some config:
# .env (in project root)
OPENAI_API_KEY= # Use OpenAI-backed AI-powered tools
OPENROUTER_API_KEY= # Or use OpenRouter-backed AI-powered tools
Note: The root .env file provides defaults for all packages. Individual packages can have their own .env files to override these defaults during development.
Once that's done you can run them using:
pnpm eval
Manual testing (preferred for testing MCP changes):
# Test with local dev server (default: http://localhost:5173)
pnpm -w run cli "who am I?"
# Test against production
pnpm -w run cli --mcp-host=https://mcp.sentry.dev "query"
# Test with local stdio mode (requires SENTRY_ACCESS_TOKEN)
pnpm -w run cli --access-token=TOKEN "query"
Note: The CLI defaults to http://localhost:5173. Override with --mcp-host or set MCP_URL environment variable.
Comprehensive testing playbooks:
- Stdio testing: See
docs/testing/stdio.mdfor complete guide on building, running, and testing the stdio implementation (IDEs, MCP Inspector) - Remote testing: See
docs/testing/remote.mdfor complete guide on testing the remote server (OAuth, web UI, CLI client)
Development Notes
Automated Code Review
This repository uses automated code review tools (like Cursor BugBot) to help identify potential issues in pull requests. These tools provide helpful feedback and suggestions, but we do not recommend making these checks required as the accuracy is still evolving and can produce false positives.
The automated reviews should be treated as:
- ✅ Helpful suggestions to consider during code review
- ✅ Starting points for discussion and improvement
- ❌ Not blocking requirements for merging PRs
- ❌ Not replacements for human code review
When addressing automated feedback, focus on the underlying concerns rather than strictly following every suggestion.
Contributor Documentation
Looking to contribute? Start at the Toolkit documentation index
for CLI, MCP, and shared guides. See AGENTS.md for repository rules and
packages/cli/AGENTS.md for CLI-specific rules.
Preguntas sobre Sentry MCP
¿Cómo agrego Sentry MCP a Claude Code?
Ejecuta claude mcp add toolkit -- npx -y @sentry/mcp-server en tu terminal. Añade --scope user para que esté disponible en todos los proyectos.
¿Cómo agrego Sentry MCP a Cursor?
Abre ~/.cursor/mcp.json y añade el servidor en mcpServers, usando la configuración de Cursor que se muestra en la sección de instalación de arriba.
How do I connect the Sentry MCP server to Claude Code?
Install the Sentry CLI, log in with sentry auth login, then run claude mcp add sentry -- sentry mcp, or install it as a Claude Code plugin from the getsentry/sentry-mcp marketplace.
What authentication does the Sentry MCP server use?
It supports OAuth for the remote service, or you can pass a Sentry user auth token via SENTRY_AUTH_TOKEN or the Sentry-Bearer header. The CLI login can also supply credentials without a token.
Do the AI-powered search tools need an LLM provider?
Yes. Tools like search_errors and search_traces require an OpenAI, Azure OpenAI, Anthropic, or OpenRouter key; other tools work without one.
How can I limit which Sentry tools an agent sees?
Pass a skills list or disable skills via the ?skills= / ?disable-skills= URL params for remote, or the MCP_SKILLS and MCP_DISABLE_SKILLS environment variables for stdio.