Skip to main content
Glama
c20020207

AppSignal MCP Server

by c20020207
README.md
# mcp-appsignal

An MCP (Model Context Protocol) server for connecting to AppSignal and fetching incident information.

## Installation

```bash
npm install -g mcp-appsignal
```

## Usage

### Command Line

```bash
# Set environment variables
export APPSIGNAL_API_TOKEN=your-api-token
export APPSIGNAL_APP_ID=your-app-id

# Run the server
mcp-appsignal
```

### With Cursor

Add to your Cursor settings:

```json
{
  "mcp": {
    "servers": {
      "appsignal": {
        "command": "npx",
        "args": ["mcp-appsignal"],
        "env": {
          "APPSIGNAL_API_TOKEN": "your-api-token",
          "APPSIGNAL_APP_ID": "your-app-id"
        }
      }
    }
  }
}
```

## Features

- Connect to AppSignal's GraphQL API
- Fetch incident details and samples
- List and search incidents
- Provide prompts for analyzing incidents and suggesting fixes

## MCP Resources

- `appsignal://incident/{incidentNumber}` - Get details about a specific incident
- `appsignal://incident/{incidentNumber}/sample/{sampleId?}` - Get a sample for a specific incident
- `appsignal://incidents` - List all incidents

## MCP Tools

- `getIncident` - Fetch an incident by number
- `getIncidentSample` - Fetch a sample for a specific incident
- `listIncidents` - List incidents with optional filtering

## MCP Prompts

- `analyzeIncident` - Analyze an incident and provide insights
- `suggestFixes` - Suggest fixes for an error

## License

MIT

TDQS

D1.6/5.0

Scored across 3 tools

Disambiguation3/5

The tools have distinct names (getIncident, getIncidentSample, listIncidents) suggesting different purposes, but without descriptions, it's unclear how 'getIncident' and 'getIncidentSample' differ—they could overlap in retrieving incident data. The 'listIncidents' is clearly separate for listing multiple incidents.

Naming Consistency5/5

All tool names follow a consistent camelCase pattern with clear verb-noun combinations (getIncident, getIncidentSample, listIncidents). There are no deviations in naming style, making them predictable and readable.

Tool Count2/5

With only 3 tools, the server feels thin for an incident management domain, as it likely lacks essential operations like creating, updating, or resolving incidents. This minimal set may not support complete agent workflows, indicating an under-scoped tool surface.

Completeness2/5

Inferred from the domain (incident management), there are significant gaps: no tools for creating, updating, deleting, or resolving incidents, and no coverage for related entities like alerts or metrics. This incomplete surface will likely cause agent failures in handling full incident lifecycles.

Maintenance

ActivityInactive
ResponsivenessNo issues