MCP Servers

模型上下文协议服务器、框架、SDK 和模板的综合目录。

P
Post Deploy Monitor MCP
作者 @divya828

MCP server that diffs error logs between two deployment versions of a service over SSH.

创建于 4/26/2026
更新于 about 3 hours ago
Repository documentation and setup instructions

post-deploy-monitor

MCP server that compares error patterns between two deployment versions of a service by SSH-grepping log files on a central log host, classifying each distinct error as NEW, REGRESSED, or PRE_EXISTING.

Setup

  1. Install uv.
  2. From this directory: uv sync.
  3. Copy config.example.toml to config.toml and fill in your values, OR set SSH_HOST_ALIAS and LOG_ROOT as environment variables.
  4. Add a matching Host block to ~/.ssh/config (see the design doc).

Wiring into GitHub Copilot

Add to your Copilot MCP config:

{
  "mcpServers": {
    "post-deploy-monitor": {
      "command": "uv",
      "args": ["run", "--project", "<absolute-path-to-this-dir>", "post-deploy-monitor"],
      "env": {
        "SSH_HOST_ALIAS": "log-host",
        "LOG_ROOT": "/var/log/myapp"
      }
    }
  }
}

Testing

uv run pytest

How it works

For each call, the server SSHes into the log host and runs zgrep over the log files for the current deployment version, then again for the previous version. Matching lines are normalized into stable signatures (timestamps, UUIDs, request IDs, line numbers stripped). Each signature seen in current is classified as:

  • NEW — not seen at all in previous (likely caused by your change)
  • REGRESSED — present in both, but >3× more frequent in current
  • PRE_EXISTING — present in both at similar rates (not your problem)

The result is a JSON report sorted with NEW first, ready for an LLM agent to read and reason about.

Log file layout

Hard-coded assumption (see log_locator.py): files live at

<LOG_ROOT>/<YYYY>/<MM>/<DD>/<vm_host>/<service>-<version_underscored>/<app_instance_uuid>/<file>.gz

If your layout differs, edit build_globs in log_locator.py to match.

快速设置
此服务器的安装指南

安装包 (如果需要)

uvx post-deploy-monitor-mcp

Cursor 配置 (mcp.json)

{ "mcpServers": { "divya828-post-deploy-monitor-mcp": { "command": "uvx", "args": [ "post-deploy-monitor-mcp" ] } } }