mcpField
N
n8n API MCP Server

n8n API MCP Server

ローカル
github.com/jasondsmith72開発ツール183 週間前に更新

n8n API MCP Server について

セルフホストの n8n インスタンスを API 経由で操作する MCP サーバーです。ローカルの OpenAPI インデックスによるエンドポイント検索と、Fast Memory に保存した呼び出しの自然言語検索を組み合わせます。

主な機能

  1. 01n8n API 呼び出しの実行
  2. 02OpenAPI エンドポイント検索
  3. 03パラメーターと応答の確認
  4. 04自然言語による API 呼び出し検索
  5. 05成功した呼び出しの保存と管理

活用シーン

  1. 01自然言語でワークフロー API を検索
  2. 02検証済み API 呼び出しの再利用

MCP 対応

MCP クライアントに n8n API の検索、詳細確認、実行ツールを提供します。設定した URL と API キーを使って n8n インスタンスに接続します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

n8n API MCP サーバー

セルフホスト可能な n8n インスタンスと連携するために設計された、Model Context Protocol(MCP)サーバーです。

このサーバーは、以下のツールを提供します。

  • n8n API の呼び出しを実行します。
  • OpenAPI 仕様から作成したローカルデータベースを使用して、n8n API のエンドポイントを検索します。
  • 「Fast Memory」データベースを使用して、頻繁に利用する API 呼び出しや成功した API 呼び出しを保存・取得し、自然言語でのアクセスを迅速化します。

機能

データベース
  • API 仕様データベース(api_spec.db): OpenAPI/Swagger JSON ファイルから読み込んだ n8n API エンドポイントの詳細を保存します。検索ツールおよび詳細取得ツールで使用されます。
  • Fast Memory データベース(fast_memory.db): 自然言語のクエリに関連付けられた、成功した API 呼び出しをキャッシュします。以前使用した呼び出しをすばやく取得できるほか、新しい成功した呼び出しの保存を提案します。
ツール
  • search_api_endpoints:ローカルの API 仕様データベースから、クエリに一致するエンドポイント(パス、概要、説明、タグ)を検索します。
  • get_api_endpoint_details:ローカルの API 仕様データベースから、指定したエンドポイント(パスとメソッド)の詳細情報(パラメーター、リクエストボディ、レスポンス)を取得します。
  • execute_api_call:設定済みの n8n インスタンスに対して API 呼び出しを実行します。まず Fast Memory を確認し、見つからなかった場合は、呼び出しの成功後に Fast Memory への保存を促します。
  • natural_language_api_search:自然言語を使って API 呼び出しを検索します。まず Fast Memory を確認し、次にクエリに基づいて API 仕様データベースを検索します。
  • save_to_fast_memory:API 呼び出し(パス、メソッド、パラメーター、データ)を、元の自然言語クエリおよび説明とともに Fast Memory データベースに手動で保存します。
  • list_fast_memory:Fast Memory データベースに現在保存されているエントリーを一覧表示します。検索語句による絞り込みも可能です。
  • delete_from_fast_memory:ID を指定して、Fast Memory データベースから特定のエントリーを削除します。
  • clear_fast_memory:Fast Memory データベースからすべてのエントリーを削除します。
  • load_api_spec_from_json:OpenAPI/Swagger JSON ファイルを解析し、API 仕様データベース(api_spec.db)を読み込むか、更新します。
  • send_raw_api_request:生のリクエスト文字列(例:「GET /workflows?limit=5」)を使って API 呼び出しを実行します。Fast Memory の確認や保存の促しなど、execute_api_call と同じ内部処理を使用します。

セットアップ

  1. リポジトリをクローンします:
    git clone https://github.com/jasondsmith72/N8N-api-MCP.git
    cd N8N-api-MCP
    
  2. 依存関係をインストールします:
    npm install
    
  3. サーバーをビルドします:
    npm run build
    
    これにより、TypeScript コードがコンパイルされ、build ディレクトリに JavaScript として出力されます。

設定

このサーバーは、n8n インスタンスに接続するための環境変数を必要とします。通常は、MCP クライアントの設定ファイル(例:cline_mcp_settings.json)で設定します。

  • N8N_URL:n8n インスタンスのベース URL(例:http://your-n8n.example.com)。設定されていない場合、デフォルトは http://localhost:5678 です。
  • N8N_API_KEY:認証に使用する n8n API キーです。

API 仕様の読み込み

検索ツール(search_api_endpoints、natural_language_api_search)を使用する前に、API 仕様データベースにデータを読み込む必要があります。

  1. お使いの n8n のバージョンに対応する OpenAPI(Swagger)JSON 仕様ファイルを取得します。n8n のドキュメントで入手できる場合や、インスタンスからダウンロードできる場合があります(例:/api/v1/docs-json)。
  2. ダウンロードした JSON ファイルの絶対パスを指定して、load_api_spec_from_json ツールを使用します。
    load_api_spec_from_json(json_file_path="C:\\path\\to\\your\\n8n-openapi.json")
    

Cline/Claude Desktop へのインストール

以下の設定を cline_mcp_settings.json に追加します(クローン先に応じて index.js のパスを調整してください)。

{
  "mcpServers": {
    "... other servers ...": {},
    "n8n-api-mcp": {
      "command": "node",
      "args": [
        "C:\\MCP-Servers\\N8N-api-MCP\\build\\index.js" // <-- Update this path if needed
      ],
      "env": {
        "N8N_URL": "YOUR_N8N_INSTANCE_URL", // e.g., "http://192.168.1.100:5678"
        "N8N_API_KEY": "YOUR_N8N_API_KEY_HERE"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

(YOUR_N8N_INSTANCE_URL と YOUR_N8N_API_KEY_HERE は、実際の値に置き換えてください)

開発

ファイルの変更時に自動で再ビルドする開発環境を起動するには:

npm run watch
デバッグ

デバッグを簡単にするには、MCP Inspector を使用してください。

npm run inspector

Inspector では、MCP の通信を確認するためのウェブインターフェースを利用できます。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。