Skip to main content
Glama
ahmad2x4

Seq MCP Server

by ahmad2x4

Seq MCP Server

MCP Server for Seq's API endpoints for interacting with your logging and monitoring system. This server provides comprehensive access to Seq's API features through the Model Context Protocol.

Features

Tools

Signals Management

  • get_signals - Fetch signals with filtering options

    • Filter by owner ID

    • Filter shared/private signals

    • Support for partial matches

Event Management

  • get_events - Retrieve events with extensive filtering options

    • Filter by signal IDs

    • Custom filter expressions

    • Configurable event count (max 50)

    • Flexible time range options

    • Date range filtering

Alert Management

  • get_alert_state - Retrieve the current state of alerts

Resources

Signals Listing

  • signals - List all shared signals with detailed information

    • Signal ID

    • Title

    • Description

    • Sharing status

    • Owner information

Related MCP server: Overwatch MCP

Configuration

The server requires the following environment variables:

  • SEQ_BASE_URL (optional): Your Seq server URL (defaults to 'http://localhost:8080')

  • SEQ_API_KEY (required): Your Seq API key

seq-ops Skill

This repo includes a Claude skill for Seq log analysis and incident investigation. Once the MCP server is connected, the skill guides Claude through structured investigations — health checks, incident triage, post-deployment monitoring — and produces consistent, actionable reports.

Install the skill:

# From the releases page, download seq-ops.skill, then:
claude skill install seq-ops.skill

Or install directly from this repo:

npx skills add ahmad2x4/mcp-server-seq

The skill automatically activates when you ask things like "morning health check", "something is broken in prod", "check the logs for timeouts", or "investigate the PPSR integration".


Usage with Claude Code

Run the following command to add the server:

claude mcp add --transport stdio \
  --env SEQ_BASE_URL=http://localhost:5341 \
  --env SEQ_API_KEY=your-api-key \
  seq -- npx -y mcp-seq

To share the configuration with your team, use the --scope project flag (saves to .mcp.json):

claude mcp add --transport stdio --scope project \
  --env SEQ_BASE_URL=http://localhost:5341 \
  --env SEQ_API_KEY=your-api-key \
  seq -- npx -y mcp-seq

Windows users: Replace npx -y mcp-seq with cmd /c npx -y mcp-seq to avoid "Connection closed" errors.

Verify the server is connected by running /mcp inside Claude Code.

Usage with Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "seq": {
      "command": "npx",
      "args": ["-y", "mcp-seq"],
      "env": {
        "SEQ_BASE_URL": "your-seq-url",
        "SEQ_API_KEY": "your-api-key"
      }
    }
  }
}

Development

Install dependencies:

npm install

Build the server:

npm run build

For development with auto-rebuild:

npm run dev

Run tests:

npm run test-script

Time Range Options

The get-events tool supports the following time range options:

  • 1m - Last minute

  • 15m - Last 15 minutes

  • 30m - Last 30 minutes

  • 1h - Last hour

  • 2h - Last 2 hours

  • 6h - Last 6 hours

  • 12h - Last 12 hours

  • 1d - Last day

  • 7d - Last 7 days

  • 14d - Last 14 days

  • 30d - Last 30 days

Installation

Install globally via npm:

npm install -g mcp-seq

Or use directly with npx — no installation required (as shown in the configuration examples above).

Debugging

Since MCP servers communicate over stdio, debugging can be challenging. The server implements proper error handling and logging for all operations. You can run the test script to verify functionality:

npm run test-script

Type Safety

The server implements comprehensive type safety using:

  • TypeScript for static type checking

  • Zod schema validation for runtime type checking

  • Proper error handling and response formatting

Available Tools

3 tools
get-alertstateD
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get-eventsB

Retrieve and analyze a list of event filtered by parameters. Use this tool when you need to:

  • Investigate events that are being logged in the SEQ server

  • Details of each event is a structured log and can provide usefull information

  • Events could be information, error, debug, or critical

  • Analyze error patterns and frequencies

ParametersJSON Schema
NameRequiredDescriptionDefault
signalNoComma-separated list of signal IDs
filterNoFilter expression for events
countNoNumber of events to return (max 20)
fromDateUtcNoStart date/time in UTC
toDateUtcNoEnd date/time in UTC
rangeNoTime range (e.g., 1m, 15m, 1h, 1d, 7d)

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions that events are 'structured logs' and can be of types like 'information, error, debug, or critical,' but fails to specify critical details such as authentication requirements, rate limits, pagination behavior, or whether this is a read-only operation. The description adds some context but leaves significant gaps for a tool with 6 parameters.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose but includes a bulleted list that repeats concepts (e.g., 'analyze error patterns' appears twice). Some sentences could be more efficient, and the structure is somewhat repetitive, though it remains reasonably focused.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (6 parameters, no annotations, no output schema), the description is moderately complete. It covers purpose and usage context but lacks details on behavioral traits, output format, and explicit sibling tool differentiation. It's adequate for basic understanding but has clear gaps for effective agent use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds minimal value beyond the schema by implying filtering and analysis capabilities, but doesn't provide additional syntax, format details, or usage examples for parameters. This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose as 'Retrieve and analyze a list of events filtered by parameters,' which specifies the verb (retrieve/analyze) and resource (events). It distinguishes from sibling tools by focusing on events rather than alerts or signals, though it doesn't explicitly contrast with them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit usage scenarios (investigate logged events, analyze error patterns) and implies context (SEQ server events). However, it lacks explicit guidance on when to use this tool versus sibling tools like 'get-alertstate' or 'get-signals,' and doesn't mention exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get-signalsD
ParametersJSON Schema
NameRequiredDescriptionDefault
ownerIdNoOwner ID to filter signals by
sharedNoWhether to include only shared signals (true) or private signals (false)
partialNoWhether to include partial signal matches

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

D1.9/5.0
Disambiguation3/5

The tools appear to target different aspects of a Seq server (alert state, events, signals), but with only one description available for 'get-events', it's unclear how 'get-alertstate' and 'get-signals' differ in purpose. This creates some ambiguity, though the distinct names suggest separate functions.

Naming Consistency5/5

All three tools follow a consistent 'get-[noun]' naming pattern using kebab-case, which is predictable and readable. There are no deviations in style or verb usage across the tool set.

Tool Count2/5

With only 3 tools, this server feels under-scoped for a logging/monitoring domain like Seq, which typically involves more operations such as creating alerts, filtering logs, or managing signals. The count is too low to cover the apparent scope effectively.

Completeness2/5

The tool set is severely incomplete for a Seq server, lacking essential operations like creating or updating alerts, sending logs, or configuring signals. Only read-only 'get' operations are provided, which will limit agents to passive monitoring without the ability to interact or modify the system.

Maintenance

ActivityStale
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    An MCP server for retrieving and filtering logs from Mezmo with a quota-conscious design and intelligent defaults. It enables users to discover and query logs by application, level, and custom time ranges to streamline debugging while minimizing API usage.
    1
  • A
    license
    Not graded
    quality
    C
    maintenance
    An MCP server that enables querying logs and metrics from Graylog, Prometheus, and InfluxDB 2.x. It provides tools for executing Lucene log searches, PromQL queries, and Flux queries directly within MCP-compatible clients.
    MIT
  • F
    license
    B
    quality
    B
    maintenance
    MCP server that integrates with Sumo Logic's API to perform log searches, data discovery, metrics queries, and monitoring.
    15
    26
  • A
    license
    Not graded
    quality
    D
    maintenance
    MCP server for querying structured logs from Datalust Seq, providing tools to search logs, retrieve recent errors, fetch events, and check health.
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ahmad2x4/mcp-server-seq'

If you have feedback or need assistance with the MCP directory API, please join our Discord server