AppSignal MCP

Integrate with the AppSignal monitoring API to query and fetch error and performance data.

AppSignal MCP

A Model Context Protocol (MCP) server for AppSignal monitoring API integration. This server allows AI assistants to directly query and fetch error and performance data from AppSignal through the MCP protocol.

Features

  • Fetch details about specific error or performance samples
  • Search for errors, performance samples, or both with flexible filters
  • Integration with AppSignal's Error and Performance Monitoring APIs

Prerequisites

  • Bun runtime
  • AppSignal account and API token
  • Application ID from your AppSignal dashboard

Installation

# Clone the repository
git clone https://github.com/pauldub/appsignal-mcp.git
cd appsignal-mcp

# Install dependencies
bun install

Configuration

Create a .env file in the root directory with your AppSignal credentials:

# Server configuration
PORT=3000
LOG_LEVEL=info

# AppSignal configuration
APPSIGNAL_API_TOKEN=your-api-token

Usage

Starting the Server

# Run the server
bun start

# Development mode with auto-reload
bun dev

# Run tests
bun test

# Build a standalone executable
bun run build

CLI Options

appsignal-mcp --appsignal-api-token your-token

Available options:

  • --appsignal-api-token <token> - AppSignal API token
  • --log-level <level> - Logging level (debug, info, warn, error)
  • --port <port> - Server port number

MCP Tools

1. get_sample

Gets details about a specific sample by ID (error or performance).

Parameters:

  • sampleId (string, required): The AppSignal sample ID
  • appId (string, required): The AppSignal application ID

2. search_samples

Searches for samples in an application with optional filters.

Parameters:

  • appId (string, required): The AppSignal application ID
  • sample_type (string, optional): Type of samples to search - "all", "errors", or "performance" (defaults to "errors")
  • exception (string, optional): Filter by exception name (e.g., "NoMethodError") - only applicable for error samples
  • action_id (string, optional): Filter by action name (e.g., "BlogPostsController-hash-show")
  • since (string/number, optional): Start timestamp in UTC (timestamp or ISO format)
  • before (string/number, optional): End timestamp in UTC (timestamp or ISO format)
  • limit (number, optional): Maximum number of samples to return (defaults to 10)
  • count_only (boolean, optional): Only return the count, not the samples

Claude Integration

To use this MCP server with Claude, create a .mcp.json file in your Claude Code workspace:

{
  "mcpServers": {
    "appsignal-mcp": {
      "type": "stdio",
      "command": "bun",
      "args": [
        "run",
        "start"
      ],
      "env": {
        "APPSIGNAL_API_TOKEN": "your-api-token"
      }
    }
  }
}

License

MIT

Related Servers