Read-only health checks for self-hosted n8n: datastore growth, stuck runs, retention, git drift.
Connect Runs on your machine
claude mcp add n8n-guard -e N8N_URL=<N8N_URL> -e N8N_API_KEY=<N8N_API_KEY> -e N8N_SQLITE_PATH=<N8N_SQLITE_PATH> -e N8N_POSTGRES_URL=<N8N_POSTGRES_URL> -e N8N_GIT_REPO_PATH=<N8N_GIT_REPO_PATH> -e N8N_GUARD_STUCK_MINUTES=<N8N_GUARD_STUCK_MINUTES> -e N8N_GUARD_DB_WARN_BYTES=<N8N_GUARD_DB_WARN_BYTES> -e N8N_GUARD_DB_CRITICAL_BYTES=<N8N_GUARD_DB_CRITICAL_BYTES> -e N8N_GUARD_TIMEOUT_MS=<N8N_GUARD_TIMEOUT_MS> -- npx -y [email protected]
{
"mcpServers": {
"n8n-guard": {
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"N8N_URL": "<N8N_URL>",
"N8N_API_KEY": "<N8N_API_KEY>",
"N8N_SQLITE_PATH": "<N8N_SQLITE_PATH>",
"N8N_POSTGRES_URL": "<N8N_POSTGRES_URL>",
"N8N_GIT_REPO_PATH": "<N8N_GIT_REPO_PATH>",
"N8N_GUARD_STUCK_MINUTES": "<N8N_GUARD_STUCK_MINUTES>",
"N8N_GUARD_DB_WARN_BYTES": "<N8N_GUARD_DB_WARN_BYTES>",
"N8N_GUARD_DB_CRITICAL_BYTES": "<N8N_GUARD_DB_CRITICAL_BYTES>",
"N8N_GUARD_TIMEOUT_MS": "<N8N_GUARD_TIMEOUT_MS>"
}
}
}
}
{
"mcpServers": {
"n8n-guard": {
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"N8N_URL": "<N8N_URL>",
"N8N_API_KEY": "<N8N_API_KEY>",
"N8N_SQLITE_PATH": "<N8N_SQLITE_PATH>",
"N8N_POSTGRES_URL": "<N8N_POSTGRES_URL>",
"N8N_GIT_REPO_PATH": "<N8N_GIT_REPO_PATH>",
"N8N_GUARD_STUCK_MINUTES": "<N8N_GUARD_STUCK_MINUTES>",
"N8N_GUARD_DB_WARN_BYTES": "<N8N_GUARD_DB_WARN_BYTES>",
"N8N_GUARD_DB_CRITICAL_BYTES": "<N8N_GUARD_DB_CRITICAL_BYTES>",
"N8N_GUARD_TIMEOUT_MS": "<N8N_GUARD_TIMEOUT_MS>"
}
}
}
}
{
"servers": {
"n8n-guard": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"N8N_URL": "<N8N_URL>",
"N8N_API_KEY": "<N8N_API_KEY>",
"N8N_SQLITE_PATH": "<N8N_SQLITE_PATH>",
"N8N_POSTGRES_URL": "<N8N_POSTGRES_URL>",
"N8N_GIT_REPO_PATH": "<N8N_GIT_REPO_PATH>",
"N8N_GUARD_STUCK_MINUTES": "<N8N_GUARD_STUCK_MINUTES>",
"N8N_GUARD_DB_WARN_BYTES": "<N8N_GUARD_DB_WARN_BYTES>",
"N8N_GUARD_DB_CRITICAL_BYTES": "<N8N_GUARD_DB_CRITICAL_BYTES>",
"N8N_GUARD_TIMEOUT_MS": "<N8N_GUARD_TIMEOUT_MS>"
}
}
}
}
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools
This server runs locally, so its tools are listed by your MCP client once it starts.
Environment variables
| Name | Description |
|---|---|
N8N_URLOptional | Base URL of the n8n instance. Defaults to http://localhost:5678. |
N8N_API_KEYOptional, secret | n8n Public API key. Required for the execution and workflow checks. |
N8N_SQLITE_PATHOptional | Path to the n8n database.sqlite file. Required for datastore checks on SQLite. |
N8N_POSTGRES_URLOptional, secret | Postgres connection string. Takes precedence over N8N_SQLITE_PATH. |
N8N_GIT_REPO_PATHOptional | Checkout holding exported workflow JSON. Required for the git drift check. |
N8N_GUARD_STUCK_MINUTESOptional | Minutes a run may stay in `running` before it counts as stuck. Defaults to 15. |
N8N_GUARD_DB_WARN_BYTESOptional | Datastore warning threshold in bytes. Defaults to 1073741824 (1 GB). |
N8N_GUARD_DB_CRITICAL_BYTESOptional | Datastore critical threshold in bytes. Defaults to 4294967296 (4 GB). |
N8N_GUARD_TIMEOUT_MSOptional | Per-request API timeout in milliseconds. Defaults to 15000. |
Details
| Package | [email protected] (NPM, stdio) |
| First published | 12 Nov 2026 |
| Last updated | 12 Nov 2026 |
| Registry name | io.github.flow-84/n8n-guard |
More developer tools servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
