honeycomb-mcp

Honeycomb MCP is a Model Context Protocol server designed for interacting with Honeycomb observability data. It allows LLMs like Claude to directly analyze and query your Honeycomb datasets across multiple environments. It runs in a Node.js environment and requires a Honeycomb API key with full permissions.

GitHub Stars

36

User Rating

Not Rated

Favorites

0

Views

48

Forks

7

Issues

17

Installation
Difficulty
Intermediate
Estimated Time
10-20 minutes
Requirements
Node.js 18+

Installation

Installation

Prerequisites

Please specify required software and versions:
Node.js: 18.0.0 or higher

Installation Steps

1. Clone Repository

bash
git clone https://github.com/honeycombio/honeycomb-mcp.git
cd honeycomb-mcp

2. Install Dependencies

bash
pnpm install

3. Build the Project

bash
pnpm run build
The build artifact will be stored in the /build folder.

Troubleshooting

Common Issues

Issue: Server won't start Solution: Check Node.js version and reinstall dependencies. Issue: Invalid API key Solution: Verify the permissions of the API key.

Configuration

Configuration

Basic Configuration

To use this MCP server, you need to provide Honeycomb API keys via environment variables in your MCP config.
json
{
    "mcpServers": {
      "honeycomb": {
        "command": "node",
        "args": [
          "/fully/qualified/path/to/honeycomb-mcp/build/index.mjs"
        ],
        "env": {
          "HONEYCOMB_API_KEY": "your_api_key"
        }
      }
    }
}

EU Configuration

EU customers must also set a HONEYCOMB_API_ENDPOINT configuration.
bash
HONEYCOMB_API_ENDPOINT=https://api.eu1.honeycomb.io/

Caching Configuration

To enable caching, set the following environment variables:
bash
HONEYCOMB_CACHE_ENABLED=true
HONEYCOMB_CACHE_DEFAULT_TTL=300

Examples

Examples

Basic Usage

Here are basic usage examples for the MCP server:

Programmatic Usage

javascript
// JavaScript example (Node.js)
const { MCPClient } = require('@modelcontextprotocol/client');

const client = new MCPClient();
await client.connect();

// Execute tool
const result = await client.callTool('toolName', {
  parameter1: 'value1',
  parameter2: 'value2'
});

console.log(result);

Use Cases

Setting up alerts to monitor performance in production environments and detect anomalies.
Identifying system bottlenecks through data analysis.
Implementing real-time data visualization using dashboards.
Comparative analysis of datasets across different environments (development, staging, production).

Additional Resources