# helbertparanhos/n8n-pro-mcp [Health: Active]

**Category:** 🏢 Workplace & Productivity  
**Repository:** https://github.com/helbertparanhos/n8n-pro-mcp  
**GitHub Stars:** 3  
**npm Downloads (last month):** 29044  
**Views:** 1  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/helbertparanhos-n8n-pro-mcp

## Description
Full-instance management for self-hosted n8n including queue mode: workflows, executions, tags, credentials, variables, projects, users, security audit and health monitoring (51 tools).

## Tools
Capabilities this server exposes over MCP:

- **list_workflows** — List with filters (active, tags, project, name) + auto pagination
- **get_workflow** — Full JSON or lightweight summary of one workflow
- **create_workflow** — Create from JSON, with automatic offline validation
- **update_workflow** — Partial update — fetch, merge, validate, PUT
- **delete_workflow** — Permanently delete
- **activate_workflow** — Toggle triggers
- **transfer_workflow** — Move between projects
- **search_workflows** — Free-text search across names, node names and node types
- **clone_workflow** — Duplicate a workflow as an inactive copy
- **set_workflows_active_by_tag** — Bulk activate/deactivate by tag, with dry run
- **validate_workflow_json** — Offline validation, no API call
- **list_executions** — Filter by status/workflow/project, with durations
- **get_execution** — Summary or full node-level run data for debugging
- **delete_execution** — Remove an execution record
- **retry_execution** — Retry a failed/stopped execution
- **list_running_executions** — Queue-mode live view** of running/queued executions
- **run_webhook** — Trigger workflows via production or test webhook
- **wait_for_execution** — Poll an execution until it reaches a terminal state
- **summarize_execution_error** — Failing node + error message only — no giant JSON dump
- **prune_executions** — Bulk-delete old execution records, dry run by default
- **get_execution_stats** — Success rate + avg duration per workflow over a sample
- **check_health** — healthz + readiness (DB) + API auth, with a plain-language summary
- **generate_audit** — n8n's built-in security audit (credentials, database, nodes, filesystem, instance)
- **pull_source_control** — Pull from the connected git repository

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "n8n-pro-mcp": {
    "command": "npx",
    "args": ["-y","cache"],
    "env": {
      "N8N_API_URL": "",
      "N8N_API_KEY": "",
      "N8N_WEBHOOK_BASE_URL": "",
      "N8N_API_TIMEOUT_MS": "",
      "N8N_MAX_RETRIES": ""
    }
  }
}
```

**Requires environment variables:** `N8N_API_URL`, `N8N_API_KEY`, `N8N_WEBHOOK_BASE_URL`, `N8N_API_TIMEOUT_MS`, `N8N_MAX_RETRIES` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation & README

# n8n Pro MCP ⚙️

> Full-instance management for self-hosted n8n — including queue mode — through the Model Context Protocol. 51 tools covering workflows, executions, tags, credentials, variables, projects, users, security audit, source control and health monitoring.

[![npm version](https://img.shields.io/npm/v/n8n-pro-mcp.svg?style=flat-square)](https://www.npmjs.com/package/n8n-pro-mcp)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=flat-square)](https://opensource.org/licenses/MIT)
[![GitHub Stars](https://img.shields.io/github/stars/helbertparanhos/n8n-pro-mcp?style=flat-square)](https://github.com/helbertparanhos/n8n-pro-mcp/stargazers)
[![GitHub Forks](https://img.shields.io/github/forks/helbertparanhos/n8n-pro-mcp?style=flat-square)](https://github.com/helbertparanhos/n8n-pro-mcp/network/members)
[![GitHub Issues](https://img.shields.io/github/issues/helbertparanhos/n8n-pro-mcp?style=flat-square)](https://github.com/helbertparanhos/n8n-pro-mcp/issues)
[![Glama Quality](https://glama.ai/mcp/servers/helbertparanhos/n8n-pro-mcp/badges/score.svg)](https://glama.ai/mcp/servers/helbertparanhos/n8n-pro-mcp)

[![TypeScript](https://img.shields.io/badge/TypeScript-3178C6?style=flat-square&logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
[![Node.js](https://img.shields.io/badge/Node.js-339933?style=flat-square&logo=nodedotjs&logoColor=white)](https://nodejs.org/)
[![MCP](https://img.shields.io/badge/MCP-Model%20Context%20Protocol-000000?style=flat-square)](https://modelcontextprotocol.io/)
[![Claude Code](https://img.shields.io/badge/Claude%20Code-D97706?style=flat-square)](https://claude.ai/code)
[![Cursor](https://img.shields.io/badge/Cursor-Compatible-4F46E5?style=flat-square)](https://cursor.sh)
[![Claude Desktop](https://img.shields.io/badge/Claude%20Desktop-Compatible-D97706?style=flat-square)](https://claude.ai/download)

[![Instagram](https://img.shields.io/badge/@helbertparanhos-E4405F?style=flat-square&logo=instagram&logoColor=white)](https://www.instagram.com/helbertparanhos)
[![YouTube](https://img.shields.io/badge/stratacademy-FF0000?style=flat-square&logo=youtube&logoColor=white)](https://www.youtube.com/@stratacademy)
[![LinkedIn](https://img.shields.io/badge/helbert--paranhos-0077B5?style=flat-square&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/helbert-paranhos/)
[![Buy Me A Coffee](https://img.shields.io/badge/Buy%20Me%20A%20Coffee-FFDD00?style=flat-square&logo=buy-me-a-coffee&logoColor=black)](https://buymeacoffee.com/helbertparanhos)
[![Strat Academy](https://img.shields.io/badge/Strat%20Academy-8B5CF6?style=flat-square)](https://stratacademy.com.br)

`n8n-pro-mcp` connects Claude Code, Claude Desktop, Cursor or any MCP client to your n8n instance via the official [n8n public API v1](https://docs.n8n.io/api/), with automatic cursor pagination, exponential-backoff retry on reads (writes and webhook calls are never retried, so side effects can't duplicate), and offline workflow validation that catches the classic n8n mistakes (malformed `{{ }}` expressions, webhook data accessed without `.body`, Code nodes missing `return [{json: {...}}]`) **before** they reach your instance.

## Why this one?

- **Queue mode first-class** — `list_running_executions` (live queue view), `get_execution_stats` (success rate + average duration per workflow) and `check_health` (healthz, readiness, API auth) were built for instances running `EXECUTIONS_MODE=queue` with workers and webhook processors. `N8N_WEBHOOK_BASE_URL` lets webhook calls target dedicated webhook processors.
- **Complete API v1 coverage** — tags, variables, projects, users, source control and cross-project transfers, beyond the usual workflow/execution CRUD.
- **Offline validation built in** — `validate_workflow_json` checks structure, connection integrity, orphan nodes, expression syntax, webhook `.body` access, Code node return format and hardcoded secrets without any API call. `create_workflow`/`update_workflow` run it automatically and refuse invalid payloads.
- **Safe partial updates** — `update_workflow` fetches the current workflow, merges only what you pass and strips read-only fields, so you never lose nodes by sending an incomplete PUT.
- **Tags by name** — `set_workflow_tags` accepts tag names and creates missing ones; no manual ID juggling.
- **Ops compositions the raw API doesn't have** — `summarize_execution_error` (just the failing node + error, not a giant JSON dump), `prune_executions` (bulk cleanup with dry run), `wait_for_execution` (poll until terminal), `clone_workflow` and `set_workflows_active_by_tag` (tag-based kill switch).

## Installation

```bash
npm install -g n8n-pro-mcp     # or use npx, no install needed
```

From source:

```bash
git clone https://github.com/helbertparanhos/n8n-pro-mcp.git && cd n8n-pro-mcp
npm install
npm run build
```

When running from source, you can copy `.env.example` to `.env` **in the project root** — the server loads it from the package root, not the working directory. When installed via `npx`, set the variables through your MCP client config instead (the `.env` file is not read from the npx cache).

## Configuration

| Variable | Required | Description |
|----------|----------|-------------|
| `N8N_API_URL` | ✅ | Base URL of your instance (e.g. `https://n8n.yourdomain.com`) — no `/api/v1` suffix |
| `N8N_API_KEY` | ✅ | API key from n8n → **Settings → n8n API → Create API key** |
| `N8N_WEBHOOK_BASE_URL` | — | Separate base URL for webhook calls (queue mode with dedicated webhook processors) |
| `N8N_API_TIMEOUT_MS` | — | Per-request timeout in ms (default `30000`) |
| `N8N_MAX_RETRIES` | — | Retries on 429/5xx/network errors — applied to GET requests only, never to writes or webhook calls (default `3`, `0` disables) |

### Claude Code

```bash
claude mcp add n8n-pro --env N8N_API_URL=https://n8n.yourdomain.com --env N8N_API_KEY=your-key -- npx -y n8n-pro-mcp
```

Or in `.claude/settings.json` / `.mcp.json`:

```json
{
  "mcpServers": {
    "n8n-pro": {
      "command": "npx",
      "args": ["-y", "n8n-pro-mcp"],
      "env": {
        "N8N_API_URL": "https://n8n.yourdomain.com",
        "N8N_API_KEY": "your-api-key"
      }
    }
  }
}
```

### Claude Desktop

`~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows):

```json
{
  "mcpServers": {
    "n8n-pro": {
      "command": "npx",
      "args": ["-y", "n8n-pro-mcp"],
      "env": {
        "N8N_API_URL": "https://n8n.yourdomain.com",
        "N8N_API_KEY": "your-api-key"
      }
    }
  }
}
```

### Cursor

Same JSON block in Cursor's MCP settings (`.cursor/mcp.json`).

## Tools (51)

### Workflows (12)

| Tool | Description |
|------|-------------|
| `list_workflows` | List with filters (active, tags, project, name) + auto pagination |
| `get_workflow` | Full JSON or lightweight summary of one workflow |
| `create_workflow` | Create from JSON, with automatic offline validation |
| `update_workflow` | Partial update — fetch, merge, validate, PUT |
| `delete_workflow` | Permanently delete |
| `activate_workflow` / `deactivate_workflow` | Toggle triggers |
| `transfer_workflow` | Move between projects |
| `search_workflows` | Free-text search across names, node names and node types |
| `clone_workflow` | Duplicate a workflow as an inactive copy |
| `set_workflows_active_by_tag` | Bulk activate/deactivate by tag, with dry run |
| `validate_workflow_json` | Offline validation, no API call |

### Executions (10)

| Tool | Description |
|------|-------------|
| `list_executions` | Filter by status/workflow/project, with durations |
| `get_execution` | Summary or full node-level run data for debugging |
| `delete_execution` | Remove an execution record |
| `retry_execution` | Retry a failed/stopped execution |
| `list_running_executions` | **Queue-mode live view** of running/queued executions |
| `run_webhook` | Trigger workflows via production or test webhook |
| `wait_for_execution` | Poll an execution until it reaches a terminal state |
| `summarize_execution_error` | Failing node + error message only — no giant JSON dump |
| `prune_executions` | Bulk-delete old execution records, dry run by default |
| `get_execution_stats` | Success rate + avg duration per workflow over a sample |

### Tags (6)

`list_tags`, `create_tag`, `update_tag`, `delete_tag`, `get_workflow_tags`, `set_workflow_tags` (by name, auto-creates missing tags).

### Credentials (4)

`create_credential`, `delete_credential`, `get_credential_schema`, `transfer_credential`. Secrets are write-only — the n8n API never returns credential data.

### Variables (4)

`list_variables`, `create_variable`, `update_variable`, `delete_variable` (licensed feature).

### Projects (7)

`list_projects`, `create_project`, `update_project`, `delete_project`, plus member management: `add_user_to_project`, `remove_user_from_project`, `change_user_project_role` (licensed feature).

### Users (5)

`list_users`, `get_user`, `create_user` (invite), `delete_user`, `change_user_role`.

### System (3)

| Tool | Description |
|------|-------------|
| `check_health` | healthz + readiness (DB) + API auth, with a plain-language summary |
| `generate_audit` | n8n's built-in security audit (credentials, database, nodes, filesystem, instance) |
| `pull_source_control` | Pull from the connected git repository |

## Queue mode playbook

With `EXECUTIONS_MODE=queue` (main + workers + Redis):

1. `check_health` — confirms the main process and DB are up.
2. `list_running_executions` — what is actually in flight right now; a growing list with old `startedAt` values means workers are starved or stuck.
3. `get_execution_stats` — which workflows fail or crawl; sorted worst-first by success rate.
4. `run_webhook` with `N8N_WEBHOOK_BASE_URL` pointing at your webhook processors to test the production ingestion path end to end.

## Development

```bash
npm test             # build + unit tests (validation rules, client helpers, .env parser)
npm run watch        # incremental compile
npm run inspector    # interactive testing with @modelcontextprotocol/inspector
```

CI (GitHub Actions) runs build, tests and `npm audit` on every push and PR.

## Requirements

- Node.js ≥ 18
- n8n instance with the public API enabled (`N8N_PUBLIC_API_DISABLED` not set) and an API key
- Variables, projects and source-control tools require the corresponding licensed n8n features

## 👤 Author

Created by **[Helbert Paranhos](https://github.com/helbertparanhos)** at **[Strat Academy](https://stratacademy.com.br)**.

[![Instagram](https://img.shields.io/badge/@helbertparanhos-E4405F?style=for-the-badge&logo=instagram&logoColor=white)](https://www.instagram.com/helbertparanhos)
[![YouTube](https://img.shields.io/badge/stratacademy-FF0000?style=for-the-badge&logo=youtube&logoColor=white)](https://www.youtube.com/@stratacademy)
[![LinkedIn](https://img.shields.io/badge/helbert--paranhos-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/helbert-paranhos/)
[![Buy Me A Coffee](https://img.shields.io/badge/Buy%20Me%20A%20Coffee-FFDD00?style=for-the-badge&logo=buy-me-a-coffee&logoColor=black)](https://buymeacoffee.com/helbertparanhos)

If this project helped you, consider starring ⭐ the repository and following **[Strat Academy](https://stratacademy.com.br)** for more AI automation tooling.

## 📄 License

MIT © [Helbert Paranhos](https://github.com/helbertparanhos) / [Strat Academy](https://stratacademy.com.br) — see [LICENSE](https://github.com/helbertparanhos/n8n-pro-mcp/blob/HEAD/LICENSE).

