Skip to main content
Glama

n8n-MCP

by 88-888
INSTALLATION.mdβ€’6.23 kB
# Installation Guide This guide covers all installation methods for n8n-MCP. ## Table of Contents - [Quick Start](#quick-start) - [Docker Installation](#docker-installation) - [Manual Installation](#manual-installation) - [Development Setup](#development-setup) - [Troubleshooting](#troubleshooting) ## Quick Start The fastest way to get n8n-MCP running: ```bash # Using Docker (recommended) cat > .env << EOF AUTH_TOKEN=$(openssl rand -base64 32) USE_FIXED_HTTP=true EOF docker compose up -d ``` ## Docker Installation ### Prerequisites - Docker Engine (install via package manager or Docker Desktop) - Docker Compose V2 (included with modern Docker installations) ### Method 1: Using Pre-built Images 1. **Create a project directory:** ```bash mkdir n8n-mcp && cd n8n-mcp ``` 2. **Create docker-compose.yml:** ```yaml version: '3.8' services: n8n-mcp: image: ghcr.io/czlonkowski/n8n-mcp:latest container_name: n8n-mcp restart: unless-stopped environment: MCP_MODE: ${MCP_MODE:-http} USE_FIXED_HTTP: ${USE_FIXED_HTTP:-true} AUTH_TOKEN: ${AUTH_TOKEN:?AUTH_TOKEN is required} NODE_ENV: ${NODE_ENV:-production} LOG_LEVEL: ${LOG_LEVEL:-info} PORT: ${PORT:-3000} volumes: - n8n-mcp-data:/app/data ports: - "${PORT:-3000}:3000" healthcheck: test: ["CMD", "curl", "-f", "http://127.0.0.1:3000/health"] interval: 30s timeout: 10s retries: 3 volumes: n8n-mcp-data: driver: local ``` 3. **Create .env file:** ```bash echo "AUTH_TOKEN=$(openssl rand -base64 32)" > .env ``` 4. **Start the container:** ```bash docker compose up -d ``` 5. **Verify installation:** ```bash curl http://localhost:3000/health ``` ### Method 2: Building from Source 1. **Clone the repository:** ```bash git clone https://github.com/czlonkowski/n8n-mcp.git cd n8n-mcp ``` 2. **Build the image:** ```bash docker build -t n8n-mcp:local . ``` 3. **Run with docker-compose:** ```bash docker compose up -d ``` ### Docker Management Commands ```bash # View logs docker compose logs -f # Stop the container docker compose stop # Remove container and volumes docker compose down -v # Update to latest image docker compose pull docker compose up -d # Execute commands inside container docker compose exec n8n-mcp npm run validate # Backup database docker cp n8n-mcp:/app/data/nodes.db ./nodes-backup.db ``` ## Manual Installation ### Prerequisites - Node.js v16+ (v20+ recommended) - npm or yarn - Git ### Step-by-Step Installation 1. **Clone the repository:** ```bash git clone https://github.com/czlonkowski/n8n-mcp.git cd n8n-mcp ``` 2. **Clone n8n documentation (optional but recommended):** ```bash git clone https://github.com/n8n-io/n8n-docs.git ../n8n-docs ``` 3. **Install dependencies:** ```bash npm install ``` 4. **Build the project:** ```bash npm run build ``` 5. **Initialize the database:** ```bash npm run rebuild ``` 6. **Validate installation:** ```bash npm run test-nodes ``` ### Running the Server #### stdio Mode (for Claude Desktop) ```bash npm start ``` #### HTTP Mode (for remote access) ```bash npm run start:http ``` ### Environment Configuration Create a `.env` file in the project root: ```env # Server configuration MCP_MODE=http # or stdio PORT=3000 HOST=0.0.0.0 NODE_ENV=production LOG_LEVEL=info # Authentication (required for HTTP mode) AUTH_TOKEN=your-secure-token-here # Database NODE_DB_PATH=./data/nodes.db REBUILD_ON_START=false ``` ## Development Setup ### Prerequisites - All manual installation prerequisites - TypeScript knowledge - Familiarity with MCP protocol ### Setup Steps 1. **Clone and install:** ```bash git clone https://github.com/czlonkowski/n8n-mcp.git cd n8n-mcp npm install ``` 2. **Set up development environment:** ```bash cp .env.example .env # Edit .env with your settings ``` 3. **Development commands:** ```bash # Run in development mode with auto-reload npm run dev # Run tests npm test # Type checking npm run typecheck # Linting npm run lint ``` ### Docker Development 1. **Use docker-compose override:** ```bash cp docker-compose.override.yml.example docker-compose.override.yml ``` 2. **Edit override for development:** ```yaml version: '3.8' services: n8n-mcp: build: . environment: NODE_ENV: development LOG_LEVEL: debug volumes: - ./src:/app/src:ro - ./dist:/app/dist ``` 3. **Run with live reload:** ```bash docker compose up --build ``` ## Troubleshooting ### Common Issues #### Port Already in Use ```bash # Find process using port 3000 lsof -i :3000 # Use a different port PORT=3001 docker compose up -d ``` #### Database Initialization Failed ```bash # For Docker docker compose exec n8n-mcp npm run rebuild # For manual installation npm run rebuild ``` #### Permission Denied Errors ```bash # Fix permissions (Linux/macOS) sudo chown -R $(whoami) ./data # For Docker volumes docker compose exec n8n-mcp chown -R nodejs:nodejs /app/data ``` #### Node Version Mismatch The project includes automatic fallback to sql.js for compatibility. If you still have issues: ```bash # Check Node version node --version # Use nvm to switch versions nvm use 20 ``` ### Getting Help 1. Check the logs: - Docker: `docker compose logs` - Manual: Check console output or `LOG_LEVEL=debug npm start` 2. Validate the database: ```bash npm run validate ``` 3. Run tests: ```bash npm test ``` 4. Report issues: - GitHub Issues: https://github.com/czlonkowski/n8n-mcp/issues - Include logs and environment details ## Next Steps After installation, configure Claude Desktop to use n8n-MCP: - See [Claude Desktop Setup Guide](./README_CLAUDE_SETUP.md) - For remote deployments, see [HTTP Deployment Guide](./HTTP_DEPLOYMENT.md) - For Docker details, see [Docker README](../DOCKER_README.md)

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/88-888/n8n-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server