Open source · MIT · Zero dependencies

Your MCP server is
failing silently.

MCPWatch wraps any Python MCP server with one line. Every tool call tracked. p95 latency, per-tool error rates, silent failures surfaced before your users find them. Open source, MIT, zero config required.

$ pip install vigil-agent
14
modules
268
tests
7,500+
lines
0
dependencies
MIT
license

The problem

MCP servers fail quietly

A tool returns empty results. Latency creeps from 200ms to 4 seconds. The agent works around it. You find out from a user three days later.

Tools fail silently

Some MCP errors don't bubble up as exceptions. Empty arrays. Wrong shape. The agent shrugs and moves on. Without instrumentation, the failure is invisible until a user complains.

No latency visibility

Tool was 200ms last week, 4 seconds today. No per-tool baseline, no p95, no alert. You'll notice when the user complains, or when a third-party API quietly degrades.

Errors hide in logs

If you log to stdout you can grep. If you don't, exceptions evaporate. Either way, no per-tool error rate, no anomaly detection, no idea which tool just got worse.

The wedge feature

MCPWatch · the painkiller

One line of instrumentation. Every tool call tracked. Plus six more modules underneath when you need them.

PRODUCTION READY

MCPWatch · MCP server observability

Pro tier

One-line instrumentation for any Python MCP server. Works with FastMCP and the low-level mcp.server.lowlevel.Server. Tracks every tool call: latency, errors, silent failures (empty returns, isError responses). Per-tool p95, error rates, alerts.

Latency tracking Error alerts Silent failure detection Per-tool analytics FastMCP + low-level Server
Read the full breakdown on Dev.to
from mcp.server.fastmcp import FastMCP from vigil.mcpwatch import instrument mcp = FastMCP("my-server") @mcp.tool() async def search(query: str) -> str: return results # One line. Every tool monitored. watch = instrument(mcp)

Awareness Daemon

<1s boot

Background process compiles system state into a structured AWARENESS.md every 90 seconds. Agents boot with full context — no cold starts.

vigil daemon start

Frame-Based Tool Filtering

75–85% savings

Expose only the tools relevant to the current task. Switch frames with a query param. Eliminate 40–80K tokens of noise from every context window.

/sse?frame=backend

Signal Protocol

event bus

Lightweight structured signals between agents and systems. Post from anywhere — CLI, Python, HTTP. Queryable signal history. Coordination without queues.

vigil signal "deploy complete"

Session Handoff

structured

Structured STATE.md written at session end. Next agent — or next session of the same agent — picks up exactly where you left off. No verbal summaries needed.

vigil handoff --write

Knowledge Auto-Extract

pattern detect

Vigil watches signals and session logs to extract durable knowledge — patterns, decisions, corrections. Stored and surfaced automatically, not buried.

vigil knowledge list

MCP Server

stdio + SSE

Built-in MCP server exposes all Vigil tools to any MCP-compatible client. Works out-of-the-box with Claude, Cursor, Windsurf, and any MCP host.

vigil serve --transport sse

How it works

Up in three commands

No configuration files required to get started. Works with your existing MCP setup.

1

Install

Single package from PyPI. No dependencies pulled in.

$ pip install vigil-agent
2

Initialize and start the daemon

Creates a vigil.db and begins compiling AWARENESS.md every 90 seconds.

$ vigil init
$ vigil daemon start
✓ Daemon running. Awareness compiling every 90s.
3

Start the MCP server

Point Claude or Cursor at the SSE URL. Add a frame param to scope tools.

$ vigil serve
# or with frames
$ vigil serve --transport sse --port 8100
✓ MCP server live at http://localhost:8100/sse

Use cases

Built for real-world agent workflows

Vigil works anywhere agents need shared context, structured handoff, or scoped tool access.

Multi-Agent Code Review

Three agents review the same PR — security, style, and correctness. Each emits signals as they work. The next agent picks up where the last left off via structured handoff.

$ vigil signal security-reviewer "No vulnerabilities found"
$ vigil handoff security-reviewer "Clear" --next-steps "Style review"
$ vigil resume style-reviewer

CI/CD Pipeline Signals

GitHub Actions emit signals on every deploy. Vigil triggers fire Slack webhooks on failure, add focus items on rollback, and keep your agents aware of production state.

# In your GitHub Action:
curl -X POST $VIGIL_URL/api/signal \
  -d '{"from_agent":"ci","content":"Deploy v2.3 live"}'

Scoped Research Agents

Frame-based filtering gives each agent only the tools it needs. A research agent sees search tools; a writing agent sees document tools. Same MCP server, different frames — 50-90% fewer tokens.

# Research agent connects to:
vigil serve --transport sse ?frame=research
# Writing agent connects to:
vigil serve --transport sse ?frame=writing

Pricing

Start free. Scale when ready.

The open-source core is always free. Hosted cloud tier is coming Q3 2026.

Hosted tier launching Q3 2026 — join the waitlist to get notified

Free

$0

forever · open source

  • 1 project
  • 2 agents
  • 5K signals / mo
  • All core modules
  • Self-hosted
Start Free

Team

$29 / mo

cloud hosted · coming Q3

  • 5 projects
  • Unlimited agents
  • 200K signals / mo
  • SSO / team access
  • Priority support
Join Waitlist

Enterprise

$99 / mo

cloud hosted · coming Q3

  • Unlimited projects
  • Unlimited agents
  • Unlimited signals
  • SLA + uptime guarantee
  • Custom frames
Contact Us

How it fits

The awareness layer, not a replacement

Vigil is complementary to memory tools. It handles coordination, awareness, and tool scope — the layers that memory libraries don't cover.

Capability Vigil Mem0 Letta LangGraph
Session awareness / context compile partial
Frame-based tool filtering
Signal / event protocol partial
Structured session handoff partial partial
Vector / semantic memory
Multi-agent orchestration signals
Native MCP server
Zero dependencies

Use Vigil alongside Mem0 or Letta — they operate at different layers. Vigil handles coordination and awareness; memory tools handle retrieval.

Stop finding out from users

One line of instrumentation. Catch silent failures, latency spikes, and per-tool errors before they reach production.