MCP MonitorNew
An MCP server can be up and still be broken for agents: the handshake times out, tools/list fails, or a tool quietly changes its input schema. MCP Monitor checks any remote MCP server on a schedule, whether it is hosted on Elva or anywhere else, opens an incident when it fails, and alerts you before your users notice.
What every check does
Handshake
Elva runs the MCP initialize handshake and records latency, transport, and protocol version.
Tool inventory
Elva lists the tools and compares names and input schemas with the previous check.
Read-only tool call
Optionally, Elva calls one read-only tool with arguments you choose, as a synthetic test.
Monitor status
- Up. The handshake succeeded and every enabled check passed.
- Degraded. The server answered, but tools/list failed, the read-only tool call failed, or latency went over your threshold.
- Down. The handshake never produced a valid MCP response: DNS or TLS failure, timeout, 5xx, an HTML page where JSON-RPC should be, or rejected credentials.
- Auth required. The server needs a credential or an OAuth reconnect before Elva can check it.
A 429 from the server is reported as rate limited, never as down.
Create a monitor
1
Add the server
Open MCP Monitor and enter the MCP server URL, or pick one of your Elva-hosted MCP servers.
2
Authenticate
Choose None, Bearer token, API key header, Custom header, or OAuth. Saved headers are encrypted at rest, used on every check, and never shown again.
3
Choose what to check
Set the interval (every 1, 5, 15, 30, or 60 minutes), an optional latency threshold in milliseconds, and optionally one read-only tool to call. Free workspaces can check every 5 minutes or slower.
4
Set alerts
Choose how many consecutive failed checks open an incident (2 by default), whether degraded checks count, whether to notify when the tool inventory changes, and where alerts go.
Incidents and alerts
An incident opens when the failure threshold is reached and resolves on the next healthy check. Each monitor has Checks, Incidents, Tools, Alerts, and Settings tabs, and Send test on the Alerts tab checks every configured channel.
Paste a Slack incoming webhook URL. It is encrypted at rest and only a hint is shown afterwards.
Add up to five recipients. Each one receives incident, recovery, and tool-change emails.
Elva sends a signed JSON POST with the same headers as MCP webhooks: X-Elva-Signature, X-Elva-Timestamp, X-Elva-Event-Id, and X-Elva-Event-Version (2026-10-01). Events: mcp_monitor.incident.opened, mcp_monitor.incident.resolved, mcp_monitor.tools.changed, and mcp_monitor.test.
{
"event": "mcp_monitor.incident.opened",
"occurredAt": "2026-11-02T10:00:00.000Z",
"monitor": {
"name": "Orders MCP",
"url": "https://mcp.example.com/mcp",
"status": "down",
"slug": "orders-mcp",
"statusPageUrl": "https://app.getelva.ai/status/orders-mcp"
},
"incident": {
"startedAt": "2026-11-02T09:58:00.000Z",
"cause": { "status": "down", "failureCode": "timeout", "message": "Handshake timed out" }
}
}
Events also carry the failing check. Tool-change events include toolsDiff with added, removed, and changed tools, and events that need an OAuth reconnect include reconnectUrl.
Share status publicly
- Status page. Turn on Public status page to publish live status, uptime history, and incidents at app.getelva.ai/status/<slug>, with or without the tool list. Slugs are 3 to 40 lowercase letters, numbers, or hyphens.
- Badge. Embed the SVG badge in a README or dashboard:
https://api.getelva.ai/api/public/mcp-monitor/badge/<slug>.svg
Check a server once
Anyone can run a one-off check from MCP Monitor without signing in. The result is a shareable report covering the handshake, protocol version, transport, tools, and OAuth discovery. A header used for a one-off check travels with that single request and is discarded.
Plan limits
Free workspaces can save 10 monitors with a 5-minute minimum interval. Startup allows 25, Business 100, and Enterprise unlimited, all with checks as often as every minute. See Plans and usage limits.
Where to go next
On this page
- MCP Monitor