bugsink-mcp
bugsink-mcp
Un servidor MCP completo de lectura/escritura para Bugsink
(seguimiento de errores autoalojado y compatible con el protocolo Sentry), construido directamente contra el
esquema OpenAPI /api/canonical/0/ de Bugsink.
Existe porque el paquete bugsink-mcp existente en npm solo envuelve la parte de lectura de la
API (list/get). Este cubre toda la superficie canónica de la API: resolver, silenciar, reabrir y eliminar
incidencias, comentar y crear/actualizar equipos, proyectos y versiones — además de un par de correcciones
sobre el original (ver Fixes over the original).
Configuración
Requiere Node.js 18.17+.
En Bugsink, ve a Account Settings → Auth Tokens y crea un token.
Añade el servidor a tu cliente MCP.
Claude Code
Con una sola línea, usando la CLI claude mcp:
claude mcp add bugsink \
-e BUGSINK_URL=https://bugs.example.com \
-e BUGSINK_TOKEN=<your token> \
-- npx -y github:fers4t/bugsink-mcpEsto escribe el equivalente de lo siguiente en ~/.claude.json (o pasa --scope project para
escribir un .mcp.json compartido en lugar de la configuración local del usuario):
{
"mcpServers": {
"bugsink": {
"type": "stdio",
"command": "npx",
"args": ["-y", "github:fers4t/bugsink-mcp"],
"env": {
"BUGSINK_URL": "https://bugs.example.com",
"BUGSINK_TOKEN": "<your token>"
}
}
}
}Reinicia Claude Code (o inicia una nueva sesión) después — las listas de herramientas MCP se cargan al inicio de la sesión y no detectarán un cambio de configuración a mitad de conversación.
Otros clientes MCP
Cualquier cliente que lea un mapa mcpServers (Cursor, Windsurf, etc.) puede usar la misma
estructura JSON que se muestra arriba: apúntalo a command: npx, args: ["-y", "github:fers4t/bugsink-mcp"],
y las dos variables de entorno obligatorias.
npx instala directamente dede GitHub (no resides in npm publishing) y ejecuta el script prepare para
compilar TypeScript en el primer uso; luego reuse su caché local en los lanzamientos siguientes.
Variables de entorno
Variable | Requerida | Descripción |
| Sí | URL base de tu instancia de Bugsink, p. ej. |
| Sí | Token personal de la API (autenticación Bearer) |
| No | Tiempo de espera por solicitud en ms (por defecto |
Consulta .env.example. Nunca hagas commit de un token real — el servidor solo lo lee del entorno.
Related MCP server: Sierra Navigator Cloud
Herramientas
Conectividad
Herramienta | Descripción |
| Comprueba que la URL y el token funcionan y reporta cuántos equipos son visibles |
Equipos
Herramienta | Descripción |
| Lista todos los equipos |
| Obtiene un equipo por UUID |
| Crea un equipo |
| Renombra un equipo o cambia su visibilidad |
Proyectos
Herramienta | Descripción |
| Lista proyectos, opcionalmente filtrados por equipo |
| Obtiene un proyecto (incluido su DSN), opcionalmente con la expansión del equipo |
| Crea un proyecto dentro de un equipo |
| Actualiza el nombre/visibilidad/marcas de alerta/retención/equipo |
Incidencias
Herramienta | Descripción |
| Lista las incidencias de un proyecto (ordenables por |
| Obtiene una incidencia por UUID o por ID amigable (p. ej. |
| Irreversiblemente elimina una incidencia y sus eventos |
| Resuelve ahora |
| Resuelve, con regresión si una versión posterior lo vuelve a informar |
| Resuelve en la versión actual más reciente |
| Reabre una incidencia resuelta |
| Silencia indefinidamente |
| Silencia durante N periodos (p. ej. 3 días) |
| Silencia hasta que se cruce un umbral de recuento de eventos en un periodo |
| Deja de silenciar |
| Añade un comentario a una incidencia |
Eventos
Herramienta | Descripción |
| Lista los eventos (ocurrencias) de una incidencia |
| Obtiene el detalle completo del evento, incluidas etiquetas/contextos/payload bruto |
| Renderiza el stacktrace de un evento en Markdown |
Versiones
Herramienta | Descripción |
| Lista las versiones de un proyecto |
| Obtiene una versión por UUID |
| Crea una versión (necesaria para que |
Fixes over the original
get_stack_traceen realidad funciona. El endpoint de stacktrace de Bugsink devuelvetext/markdown, no JSON. El paquete original llamaba ares.json()incondicionalmente y lanzabaUnexpected token '#', "# TypeError"... is not valid JSONen cada llamada. Este servidor leee ese endpoint como texto.Soporte de escritura: resolver/silenciar/reabrir/eliminar/comentar incidencias y crear/actualizar equipos, proyectos y versiones — nada de lo cual exponía el original de solo lectura.
Tiempos de espera limitados (
AbortSignal.timeout, 15s por defecto) en cada solicitud, de modo que una petición colgada no pueda bloquear el proceso MCP indefinidamente.Reintentos seguros: las solicitudes
GETidempotentes reciben un reintento acotado con retroceso exponencial con jitter ante502/503/504o fallos de red. Las solicitudes de mutación (POST/PATCH/DELETE) no se reintentan nunca automáticamente, porque reintentar una escritura cuyo respuesta simplemente se perdió podría duplicar efectos secundarios (p. ej., un mismo comentario dos veces).Validación de entrada mediante Zod en cada argumento de la herramienta (IDs numéricos, UUIDs, enums), de modo que la entrada malformada se rechaza localmente con un mensaje claro en lugar de llegar a la API.
Sin secreto en la salida. Los errores informan del estado HTTP y de un cuerpo de respuesta truncado; el valor de la cabecera
Authorizationnunca se incluye en ningún log ni error lanzado.
Notas de seguridad
Se trata de un proceso local stdio — no abre un listener de red. El control de acceso es el que tu cliente MCP ya proporciona, más la posesión de
BUGSINK_TOKEN.Todos los diagnósticos van a
stderr;stdoutestá reservado para el flujo de protocolo JSON-RPC.BUGSINK_URLdebe serhttp:ohttps:; HTTP simple hacia un host no local muestra una advertentica (tu token se enviaría sin cifrar), pero no se bloquea, para admitir redes internas.Trata
BUGSINK_TOKENcomo cualquier otra credencial: mantenlo fuera del control de versiones, rótalo en Bugsink si se llega a filtrar y delimítalo al usuario de mínimo privilegio que tu flujo de trabajo permit.
Desarrollo
npm install # installs deps and runs the TypeScript build (prepare script)
npm run typecheck
npm run build # compile src/ -> dist/
npm run dev # watch modeLicencia
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceMCP server providing full coverage of the Huly SDK — issues, projects, workspaces, members, and account management.901MIT
- FlicenseNot gradedqualityBmaintenanceHosted, OAuth-secured MCP server that drives the Sierra Interactive real-estate admin backend, enabling reads, guarded writes, and identity-locked deletes over HTTP without a browser.
- AlicenseNot gradedqualityBmaintenanceHosted MCP server that exposes your self-hosted Bugsink error tracker as tools for LLMs, enabling issue management, release tracking, and stacktrace retrieval via chat prompts.877MIT
- FlicenseAqualityBmaintenanceA lightweight MCP server for tracking bugs and tasks across coding sessions, providing persistent SQLite-backed storage and six tools for logging, inspecting, updating, resolving, and deleting bugs.61
Related MCP Connectors
MCP server for InsForge BaaS — database, storage, edge functions, and deployments
A MCP server built for developers enabling Git based project management with project and personal…
MCP server for interacting with the Supabase platform
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/fers4t/bugsink-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server