Skip to main content
Glama

n8n MCP Server

n8n の REST API とローカルの Ollama を、MCP (Model Context Protocol) ツールとして 公開する Python サーバーです。VS Code などの MCP クライアントから ワークフローの作成・実行・監視を自然言語で指示できます。

特徴

  • n8n のワークフロー一覧取得、詳細取得、作成、削除、有効化、公開、手動実行

  • 実行履歴の一覧取得と詳細取得

  • 登録済み Credentials の一覧取得

  • Ollama 経由でのローカル / クラウドモデルへの問い合わせ

  • n8n と Ollama の稼働状態をまとめて確認するヘルスチェック

  • すべての操作は非同期 (httpx.AsyncClient) で実装

Related MCP server: n8n MCP Server

必要環境

  • macOS または Linux

  • Python 3.10 以上

  • 起動済みの n8n (デフォルト http://127.0.0.1:5678)

  • 起動済みの Ollama (デフォルト http://127.0.0.1:11434)

構築手順

1. リポジトリを取得

git clone <このリポジトリのURL> ~/.n8n-mcp-server
cd ~/.n8n-mcp-server

start.shstop.sh はホームディレクトリの ~/.n8n-mcp-server 配下を 前提にしているため、必ずこのパスに配置してください。

2. 仮想環境を作成して有効化

python -m venv venv
source venv/bin/activate

3. 依存パッケージをインストール

pip install -r requirements.txt

requirements.txt には以下が含まれます。

  • mcp[cli]>=1.0.0 — MCP サーバーフレームワーク

  • httpx>=0.27.0 — 非同期 HTTP クライアント

  • ollama>=0.3.0 — Ollama 公式 Python クライアント (任意)

4. n8n の API キーを発行

  1. n8n の Web UI (http://127.0.0.1:5678) を開く

  2. 左メニューの SettingsAPI を開く

  3. Create an API key をクリックしてキーを生成

  4. 生成されたキーを後述の環境変数 N8N_API_KEY に設定

5. 環境変数を設定

シェルの rc ファイル (~/.zshrc など) に追記します。

export N8N_HOST=127.0.0.1
export N8N_PORT=5678
export N8N_URL="http://${N8N_HOST}:${N8N_PORT}"
export N8N_USER_FOLDER="${HOME}/.n8n"
export MCP_SERVER_DIR="${HOME}/.n8n-mcp-server"
export N8N_BASIC_AUTH_ACTIVE=false
export N8N_USER_MANAGEMENT_DISABLED=true

OLLAMA_MODEL はクラウドモデル minimax-m3:cloud なども指定可能です。 反映するには source ~/.zshrc を実行してください。

起動と停止

起動

./start.sh

実行内容:

  1. ホームの ~/.n8n-mcp-server に移動

  2. venv を有効化

  3. python server.py をバックグラウンド (nohup) で起動

  4. ログを logs/mcp.log に出力

  5. プロセス ID を tmp/mcp.pid に保存

起動後、エラーがあった場合のログは tail -f logs/mcp.log で確認できます。

停止

./stop.sh

tmp/mcp.pid のプロセスに kill を送って停止し、PID ファイルを削除します。

VS Code からの接続

settings.jsonmcp.servers に以下を追加します。

{
  "mcp.servers": {
    "n8n-mcp-server": {
      "command": "python",
      "args": ["~/.n8n-mcp-server/server.py"],
      "env": {
        "N8N_URL": "http://127.0.0.1:5678",
        "N8N_API_KEY": "APIキー",
        "OLLAMA_HOST": "http://127.0.0.1:11434",
        "OLLAMA_MODEL": "llama3.1"
      }
    }
  }
}

VS Code を再起動すると、Copilot Chat からツールとして呼び出せるようになります。

提供されるツール

すべて server.py@mcp.tool() デコレータで定義されています。 ツール名と引数は MCP クライアント (VS Code Copilot Chat など) に表示されます。

システム状態確認

  • check_n8n_status n8n のヘルスチェック、登録済みワークフロー数、Ollama のモデル一覧、 API キーの設定有無を JSON で返します。 引数なし。

  • ask_ollama(prompt, model="") Ollama 経由でモデルに問い合わせます。 model を空にすると環境変数 OLLAMA_MODEL、既定は minimax-m3:cloud を使用します。 ollama list で利用可能なモデル名を確認できます。

n8n ワークフロー操作

  • list_n8n_workflows() すべてのワークフローの一覧を JSON 文字列で返します。

  • get_n8n_workflow(workflow_id) 指定 ID のワークフロー詳細 (ノードや接続を含む) を取得します。

  • create_n8n_workflow(name, nodes_json, connections_json="{}") 新規ワークフローを作成します。 nodes_json はノード配列の JSON 文字列、 connections_json は接続オブジェクトの JSON 文字列です。 成功時は作成されたワークフローの JSON を返します。

  • delete_n8n_workflow(workflow_id) 指定 ID のワークフローを削除します。

  • activate_n8n_workflow(workflow_id, active=True) ワークフローの有効 / 無効を切り替えます。公開済みバージョンが必要です。

  • publish_n8n_workflow(workflow_id) 現在の versionIdactiveVersionId に設定し、active=true で PATCH します。 API 制限により失敗することがあるため、UI での公開を推奨します。

実行 (Execution)

  • execute_workflow_now(workflow_id) POST /api/v1/workflows/{id}/run で手動実行します。

  • get_n8n_executions(workflow_id="", limit=20) 実行履歴を新しい順に取得します。workflow_id を空にすると全件対象です。

  • get_n8n_execution(execution_id, include_data=True) 特定の実行履歴の詳細を取得します。includeData で各ノードの入出力を含めるか指定します。

Credentials

  • list_n8n_credentials() 登録済み Credentials の id / name / type を含む一覧を返します。

使用例

稼働状態を一括確認する

Copilot Chat で次のように呼び出します。

check_n8n_status を使って n8n と Ollama の状態を確認して

ワークフローの一覧と詳細を見る

list_n8n_workflows を実行して、ID が 123 のものを get_n8n_workflow で詳細を見せて

ワークフローを新規作成する

nodes_json には n8n のノード定義配列を JSON 文字列で渡します。 例として、毎日 9 時に HTTP リクエストを送るだけの最小ワークフロー:

create_n8n_workflow を次の内容で実行して:
name: "Daily Ping"
nodes_json: '[{
  "parameters": {
    "url": "https://example.com",
    "method": "GET"
  },
  "id": "abc123",
  "name": "HTTP Request",
  "type": "n8n-nodes-base.httpRequest",
  "typeVersion": 1,
  "position": [240, 300]
}, {
  "parameters": {
    "rule": {"hour": 9}
  },
  "id": "def456",
  "name": "Schedule",
  "type": "n8n-nodes-base.scheduleTrigger",
  "typeVersion": 1,
  "position": [460, 300]
}]'
connections_json: '{}'

成功すると作成されたワークフローの JSON が返るので、その ID を使って 手動実行や有効化を行います。

execute_workflow_now を ID 123 で実行
activate_n8n_workflow を ID 123 で active=true に

実行履歴を調査する

get_n8n_executions を workflow_id=123, limit=5 で取得して
失敗しているものがあれば get_n8n_execution で詳細を見せて

Ollama に問い合わせる

ask_ollama を使って「Python の非同期処理とは?」を教えて

モデル名を明示する場合は次のとおりです。

ask_ollama(prompt="俳句を一つ作って", model="llama3.1")

環境変数まとめ

  • N8N_URL — n8n のベース URL。省略時は http://127.0.0.1:5678

  • N8N_API_KEY — n8n の API キー。未設定だと認証付き API は失敗します

  • OLLAMA_HOST — Ollama のベース URL。省略時は http://127.0.0.1:11434

  • OLLAMA_MODELask_ollama で既定で使うモデル名。省略時は minimax-m3:cloud

トラブルシューティング

  • model 'xxx' not found と返る ollama list を実行し、表示されたモデル名を model 引数に渡してください。 未インストールなら ollama pull <モデル名> で取得します。

  • n8n API が 401 / 403 を返す 環境変数 N8N_API_KEY が正しいか、n8n restart 後にキーが無効化されていないか確認します。

  • 接続エラー connection error が出る N8N_URLOLLAMA_HOST のホスト名・ポートで各サービスが起動しているか確認します。 curl http://127.0.0.1:5678/healthzcurl http://127.0.0.1:11434/api/tags で疎通確認ができます。

  • 起動はしたが VS Code でツールが出てこない settings.jsonmcp.servers 設定を見直して、VS Code を再読み込みします。 サーバーが標準出力に JSON-RPC を流しているか tail -f logs/mcp.log で確認してください。

ファイル構成

  • server.py — MCP サーバーの本体。各ツールの実装

  • requirements.txt — 依存パッケージ一覧

  • start.sh — バックグラウンド起動スクリプト

  • stop.sh — 停止スクリプト

  • logs/ — 実行ログの出力先

  • tmp/mcp.pid — 起動中のプロセス ID

  • venv/ — Python 仮想環境

F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

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/GLAMCODECRUX/n8n-mcp-server'

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