Bugsink MCP Server
A Model Context Protocol server for interacting with Bugsink error tracking via LLMs.
This server enables AI assistants like Claude, Cursor, and other MCP-compatible tools to query and analyze errors from your Bugsink instance.
Features
- List Projects - View all projects in your Bugsink instance
- List Teams - View all teams
- List Issues - Query grouped error occurrences by project
- Get Issue Details - Retrieve detailed issue information
- List Events - View individual error occurrences with stacktraces
- Get Event Details - Full event data including tags and contexts
- Test Connection - Verify API connectivity
Installation
Via npx (Recommended)
npx bugsink-mcp
Global Install
npm install -g bugsink-mcp
From Source
git clone https://github.com/j-shelfwood/bugsink-mcp.git
cd bugsink-mcp
npm install
npm run build
Configuration
Environment Variables
| Variable | Required | Description |
|---|---|---|
BUGSINK_URL | Yes | Your Bugsink instance URL (e.g., https://error-tracking.example.com) |
BUGSINK_TOKEN | Yes | API token for authentication |
Generating an API Token
# Via Bugsink management command
bugsink-manage create_auth_token
Or through the Bugsink web UI under Settings > API Tokens.
MCP Client Configuration
Claude Desktop
Add to your Claude Desktop configuration (~/.claude/claude_desktop_config.json):
{
"mcpServers": {
"bugsink": {
"command": "npx",
"args": ["bugsink-mcp"],
"env": {
"BUGSINK_URL": "https://your-bugsink-instance.com",
"BUGSINK_TOKEN": "your-api-token"
}
}
}
}
Claude Code CLI
claude mcp add bugsink -- npx bugsink-mcp
Then set environment variables in your shell or .env file.
Cursor
Add to your Cursor MCP settings:
{
"mcpServers": {
"bugsink": {
"command": "npx",
"args": ["bugsink-mcp"],
"env": {
"BUGSINK_URL": "https://your-bugsink-instance.com",
"BUGSINK_TOKEN": "your-api-token"
}
}
}
}
Available Tools
test_connection
Test connectivity to your Bugsink instance.
list_projects
List all projects in the Bugsink instance.
get_project
Get detailed information about a specific project including DSN.
Parameters:
project_id(number, required): The project ID
list_teams
List all teams in the Bugsink instance.
list_issues
List issues for a specific project.
Parameters:
project_id(number, required): The project IDstatus(string, optional): Filter by status ('unresolved', 'resolved', 'muted')limit(number, optional): Max results (default: 25)
get_issue
Get detailed information about a specific issue.
Parameters:
issue_id(number, required): The issue ID
list_events
List events (individual error occurrences) for a specific issue.
Parameters:
issue_id(number, required): The issue IDlimit(number, optional): Max results (default: 10)
get_event
Get detailed event information including full stacktrace.
Parameters:
event_id(string, required): The event ID
Example Usage
Once configured, you can ask your AI assistant:
- "List all projects in Bugsink"
- "Show me the latest issues for project 1"
- "What's the stacktrace for issue #42?"
- "Get the details of the most recent error event"
Development
# Install dependencies
npm install
# Run in development mode
npm run dev
# Build for production
npm run build
# Run tests
npm test
API Compatibility
This server is designed for Bugsink, a self-hosted error tracking platform. Bugsink uses its own REST API (/api/canonical/0/) which is different from Sentry's API.
Note: This server does NOT work with Sentry or Sentry-hosted services. For Sentry, use the official sentry-mcp server.
License
MIT
Contributing
Contributions welcome! Please open an issue or PR on GitHub.
