Interact with the Honeybadger API for error monitoring and reporting using LLMs.
A Model Context Protocol (MCP) server implementation for interacting with the Honeybadger API. This server allows AI agents to fetch and analyze error data from your Honeybadger projects.
This MCP server provides a bridge between AI agents and the Honeybadger error monitoring service. It follows the best practices laid out by Anthropic for building MCP servers, allowing seamless integration with any MCP-compatible client.
The server provides two essential tools for interacting with Honeybadger:
list_faults
: List and filter faults from your Honeybadger project
get_fault_details
: Get detailed information about specific faults
Install uv if you don't have it:
pip install uv
Clone this repository:
git clone https://github.com/bobtista/honeybadger-mcp.git
cd honeybadger-mcp
Install dependencies:
uv pip install -e .
Install development dependencies (optional):
uv pip install -e ".[dev]"
Create your environment file:
cp .env.example .env
# Edit .env with your configuration
Build the Docker image:
docker build -t honeybadger/mcp --build-arg PORT=8050 .
Create a .env
file and configure your environment variables
You can configure the server using either environment variables or command-line arguments:
Option | Env Variable | CLI Argument | Default | Description |
---|---|---|---|---|
API Key | HONEYBADGER_API_KEY | --api-key | Required | Your Honeybadger API key |
Project ID | HONEYBADGER_PROJECT_ID | --project-id | Required | Your Honeybadger project ID |
Transport | TRANSPORT | --transport | sse | Transport protocol (sse or stdio) |
Host | HOST | --host | 127.0.0.1 | Host to bind to when using SSE transport |
Port | PORT | --port | 8050 | Port to listen on when using SSE transport |
Log Level | LOG_LEVEL | --log-level | INFO | Logging level (INFO, DEBUG, etc.) |
# Using environment variables:
HONEYBADGER_API_KEY=your-key HONEYBADGER_PROJECT_ID=your-project uv run src/honeybadger_mcp_server/server.py
# Using CLI arguments:
uv run src/honeybadger_mcp_server/server.py --api-key your-key --project-id your-project
uv run src/honeybadger_mcp_server/server.py --transport stdio --api-key your-key --project-id your-project
# Using environment variables:
HONEYBADGER_API_KEY=your-key HONEYBADGER_PROJECT_ID=your-project honeybadger-mcp-server
# Using CLI arguments:
honeybadger-mcp-server --api-key your-key --project-id your-project
honeybadger-mcp-server --transport stdio --api-key your-key --project-id your-project
docker run --env-file .env -p 8050:8050 honeybadger/mcp
With stdio, the MCP client itself can spin up the MCP server container, so nothing to run at this point.
Once you have the server running with SSE transport, you can connect to it using this configuration:
{
"mcpServers": {
"honeybadger": {
"transport": "sse",
"url": "http://localhost:8050/sse"
}
}
}
First, start the server:
honeybadger-mcp-server --api-key your-key --project-id your-project
Then add to your Claude Desktop config:
{
"mcpServers": {
"honeybadger": {
"transport": "sse",
"url": "http://localhost:8050/sse"
}
}
}
Add to your Claude Desktop config:
{
"mcpServers": {
"honeybadger": {
"command": "uv",
"args": [
"run",
"--project",
"/path/to/honeybadger-mcp",
"src/honeybadger_mcp_server/server.py",
"--transport",
"stdio",
"--api-key",
"YOUR-API-KEY",
"--project-id",
"YOUR-PROJECT-ID"
]
}
}
}
{
"mcpServers": {
"honeybadger": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"honeybadger/mcp",
"--transport",
"stdio",
"--api-key",
"YOUR-API-KEY",
"--project-id",
"YOUR-PROJECT-ID"
]
}
}
}
result = await client.call_tool("list_faults", {
"q": "RuntimeError", # Optional search term
"created_after": 1710806400, # Unix timestamp (2024-03-19T00:00:00Z)
"occurred_after": 1710806400, # Filter by occurrence time
"limit": 10, # Max 25 results
"order": "recent" # 'recent' or 'frequent'
})
result = await client.call_tool("get_fault_details", {
"fault_id": "abc123",
"created_after": 1710806400, # Unix timestamp
"created_before": 1710892800, # Optional end time
"limit": 5 # Number of notices (max 25)
})
# Install dev dependencies
uv pip install -e ".[dev]"
# Run tests
pytest
# Run type checker
pyright
# Run linter
ruff check .
Contributions are welcome! Please feel free to submit a Pull Request.
A server for Zero-Vector's hybrid vector-graph persona and memory management system, featuring advanced LangGraph workflow capabilities.
Provides real-time access to Chainlink's decentralized on-chain price feeds.
A tool to retrieve API interface information from YApi, with authentication configurable via environment variables.
Bring the full power of BrowserStack’s Test Platform to your AI tools, making testing faster and easier for every developer and tester on your team.
A server for Zep, a long-term memory store for AI applications, requiring a ZEP_API_KEY for access.
Fetch comprehensive information about CRAN packages, including READMEs, metadata, and search functionality.
An MCP server (and command-line tool) to provide a dynamic map of chat-related files from the repository with their function prototypes and related files in order of relevance. Based on the "Repo Map" functionality in Aider.chat
Enable AI Agents to fix build failures from CircleCI.
A service framework supporting the Model Context Protocol (MCP) to integrate enterprise systems and AI platforms via RESTful, gRPC, and Dubbo protocols.
A platform-agnostic server for scalable mobile automation and development across iOS, Android, simulators, and emulators.