MCP Servers

A collection of Model Context Protocol servers, templates, tools and more.

P
Post Deploy Monitor MCP

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

Created 4/26/2026
Updated 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.

Quick Setup
Installation guide for this server

Install Package (if required)

uvx post-deploy-monitor-mcp

Cursor configuration (mcp.json)

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