返回市场
序列-MCP服务器

序列-MCP服务器

作者:willibrandon5 星标更新:2025-06-25

项目介绍

Seq MCP Server

一个提供从Seq搜索和流式传输事件工具的模型上下文协议(MCP)服务器。

安装

作为.NET全局工具(推荐)

# 安装
dotnet tool install -g SeqMcpServer

# 更新到最新版本
dotnet tool update -g SeqMcpServer

# 卸载
dotnet tool uninstall -g SeqMcpServer

要求

  • .NET 9.0 运行时或SDK
  • Seq服务器(本地或远程)
  • 有效的Seq API密钥

快速开始

开发环境

# 克隆仓库
git clone https://github.com/willibrandon/seq-mcp-server
cd seq-mcp-server

# 设置开发环境(全自动)
# PowerShell(Windows)
./scripts/setup-dev.ps1

# Bash(Linux/Mac)
./scripts/setup-dev.sh

# 构建并运行MCP服务器
dotnet build
dotnet run --project SeqMcpServer

设置脚本会自动完成以下操作:

  • 在端口15341/18081启动一个Seq容器
  • 配置认证并创建API密钥
  • 设置环境变量
  • 创建应用程序的.env文件

生产部署

MCP服务器不会直接运行——它们由MCP客户端启动。对于生产环境:

  1. 构建并部署可执行文件:
dotnet publish -c Release -r win-x64 -p:PublishSingleFile=true
  1. 配置您的MCP客户端以使用已部署的可执行文件:
{
  "mcpServers": {
    "seq": {
      "command": "/path/to/seq-mcp-server",
      "env": {
        "SEQ_SERVER_URL": "http://your-seq-server:5341",
        "SEQ_API_KEY": "your-production-api-key"
      }
    }
  }
}

MCP工具

通过MCP协议可以使用以下工具:

  • SeqSearch - 使用过滤器搜索Seq事件

    • 参数:
      • filter(必需):Seq过滤表达式(使用空字符串""表示所有事件)
      • count:要返回的事件数量(默认值:1100)
      • workspace(可选):特定的工作区查询
    • 返回:匹配的事件列表
    • 示例过滤器:
      • "" - 所有事件
      • "error" - 包含“error”的事件
      • @Level = "Error" - 错误级别的事件
      • Application = "MyApp" - 来自特定应用的事件
  • SeqWaitForEvents - 等待并捕获来自Seq的实时事件(5秒超时)

    • 参数:
      • filter(可选):Seq过滤表达式
      • count:要捕获的事件数量(默认值:10,最大值:100)
      • workspace(可选):特定的工作区查询
    • 返回:等待期间捕获的事件快照(如果无匹配事件则可能为空)
  • SignalList - 列出可用信号(只读)

    • 参数:
      • workspace(可选):特定的工作区查询
    • 返回:带有定义的信号列表

Claude Desktop集成

方案1:使用.NET全局工具(推荐)

安装全局工具后,在您的Claude Desktop配置中添加:

{
  "mcpServers": {
    "seq": {
      "command": "seq-mcp-server",
      "env": {
        "SEQ_SERVER_URL": "http://localhost:5341",
        "SEQ_API_KEY": "your-api-key-here"
      }
    }
  }
}

方案2:预构建发布版

下载适用于您平台的最新发布版,并添加到您的MCP设置中:

{
  "mcpServers": {
    "seq": {
      "command": "C:\\\\Tools\\\\seq-mcp-server.exe",
      "args": [],
      "env": {
        "SEQ_SERVER_URL": "http://localhost:5341",
        "SEQ_API_KEY": "your-api-key-here"
      }
    }
  }
}

方案3:从源代码构建

构建单个文件的可执行文件(需要.NET 9运行时):

# Windows
dotnet publish -c Release -r win-x64 -p:PublishSingleFile=true

# macOS
dotnet publish -c Release -r osx-x64 -p:PublishSingleFile=true

# Linux
dotnet publish -c Release -r linux-x64 -p:PublishSingleFile=true

可执行文件位于SeqMcpServer/bin/Release/net9.0/{runtime}/publish/

配置

Seq MCP服务器使用环境变量进行配置:

  • SEQ_SERVER_URL:您的Seq服务器的URL
  • SEQ_API_KEY:访问Seq所需的API密钥(必需)
  • SEQ_API_KEY_<WORKSPACE>:可选的工作区特定API密钥(例如,SEQ_API_KEY_PRODUCTION

工作区支持

MCP服务器支持工作区特定API密钥(未来功能):

export SEQ_API_KEY="default-key"
export SEQ_API_KEY_PRODUCTION="production-key"
export SEQ_API_KEY_STAGING="staging-key"

注意:工作区特定密钥目前设计但尚未在MCP工具中实现。

开发

前提条件

  • .NET 9.0 SDK
  • Docker(用于本地运行Seq)

运行测试

dotnet test

开发

scripts文件夹包含自动化设置脚本:

  • setup-dev.ps1 / setup-dev.sh:自动配置您的开发环境

    • 启动具有认证的Seq容器
    • 处理初始密码设置
    • 创建开发API密钥
    • 设置环境变量
    • 创建应用程序的.env文件
  • teardown-dev.ps1 / teardown-dev.sh:清理开发环境

    • 停止并移除容器
    • 清除环境变量

有关详细的开发设置,请参阅docs/DEVELOPMENT.md

架构

这是一个纯粹的MCP服务器实现,它:

  • 作为一个基于标准I/O的服务运行(没有Web服务器)
  • 通过标准输入/输出上的JSON-RPC进行通信
  • 不记录到控制台以避免干扰MCP通信
  • 当配置时,可以选择记录到Seq本身以帮助调试

自我日志

当提供了有效的SEQ_SERVER_URLSEQ_API_KEY时,MCP服务器可以将其自身操作记录到Seq。这有助于调试和监控MCP服务器本身。

许可证

MIT许可证 - 详情见LICENSE文件。