mcpField
N
n8n-nodes-mcp-client

n8n-nodes-mcp-client

github.com/ateeyakフレームワーク・SDK485 週間前に更新

n8n-nodes-mcp-client について

n8n-nodes-mcp-client は n8n コミュニティノードで、ワークフロー内で MCP サーバーと対話可能です。STDIO と SSE トランスポートに対応し、ツール実行、リソースアクセス、プロンプト取得が可能です。

主な機能

  1. 01MCP サーバーのツール実行
  2. 02リソースのリスト表示と読み込み
  3. 03プロンプトの取得とリスト表示
  4. 04STDIO と SSE トランスポート対応
  5. 05認証情報と環境変数管理
  6. 06AI エージェントツール統合

活用シーン

  1. 01n8n ワークフローと外部 MCP サーバーの連携
  2. 02AI エージェント内での複数 MCP ツール利用
  3. 03外部 API とデータソース呼び出し自動化
  4. 04本番環境マルチサーバーデプロイメント

MCP 対応

n8n-nodes-mcp-client は MCP サーバーとの通信を実現し、ツール実行、リソースリスト表示、プロンプト取得などの操作に対応し、n8n AI エージェントのツールとして機能します。

詳細

n8n-nodes-mcp-client

これは、n8n ワークフロー内で Model Context Protocol(MCP)サーバーと対話できる n8n コミュニティノードです。

MCP は、AI モデルが外部ツールとデータソースを標準化された方法で対話できるようにするプロトコルです。このノードを使用すると、MCP サーバーに接続し、リソースにアクセスし、ツールを実行し、プロンプトを使用できます。

n8n は fair-code licensed ワークフロー自動化プラットフォームです。

インストール
認証情報
環境変数
操作
ツールとして使用
互換性
リソース

インストール

n8n コミュニティノードドキュメントのインストールガイドに従ってください。

認証情報

MCP Client ノードは、MCP サーバーに接続するための 2 つのタイプの認証情報をサポートしています。

コマンドラインベースのトランスポート(STDIO)

MCP Client STDIO Credentials

  • Command: MCP サーバーを起動するコマンド
  • Arguments: サーバーコマンドに渡すオプション引数
  • Environment Variables: NAME=VALUE 形式でサーバーに渡す変数
Server-Sent Events(SSE)トランスポート

MCP Client SSE Credentials

  • SSE URL: SSE エンドポイントの URL(デフォルト: http://localhost:3001/sse)
  • Messages Post Endpoint: SSE URL と異なる場合のメッセージ投稿用のカスタムエンドポイント(オプション)
  • Additional Headers: リクエストで送信するオプションヘッダー(形式: name:value、1 行に 1 つ)

環境変数

MCP Client ノードは、コマンドラインベースのトランスポートを使用して、2 つの方法で MCP サーバーに環境変数を渡すことをサポートしています。

1. 認証情報 UI を使用する

認証情報設定で直接環境変数を追加できます。

Environment Variables in Credentials

この方法は、個別のセットアップとテストに便利です。値は n8n に認証情報として安全に保存されます。

2. Docker 環境変数を使用する

Docker デプロイの場合、MCP_ プレフィックスを付けることで、環境変数を直接 MCP サーバーに渡すことができます。

version: '3'

services:
  n8n:
    image: n8nio/n8n
    environment:
      - MCP_BRAVE_API_KEY=your-api-key-here
      - MCP_OPENAI_API_KEY=your-openai-key-here
      - MCP_CUSTOM_SETTING=some-value
    # other configuration...

これらの環境変数は、MCP サーバーが実行されるときに自動的に渡されます。

例: Brave Search MCP サーバーを使用する

この例は、Brave Search MCP サーバーをセットアップして使用する方法を示しています。

  1. Brave Search MCP サーバーをインストールします。

    npm install -g @modelcontextprotocol/server-brave-search
    
  2. MCP Client 認証情報を設定します。

    • Command: npx
    • Arguments: -y @modelcontextprotocol/server-brave-search
    • Environment Variables: BRAVE_API_KEY=your-api-key 変数を追加します(スペース、コンマ、または改行で区切る)
  3. MCP Client ノードを使用するワークフローを作成します。

    • MCP Client ノードを追加します
    • 「List Tools」操作を選択して、利用可能な検索ツールを表示します
    • 別の MCP Client ノードを追加します
    • 「Execute Tool」操作を選択します
    • 「brave_search」ツールを選択します
    • Parameters を {"query": "latest AI news"} に設定します

Brave Search Example

ノードは検索を実行して、結果を出力に返します。

例: AI エージェントを使用した複数サーバーのセットアップ

この例では、本番環境で複数の MCP サーバーをセットアップし、AI エージェントで使用する方法を示します。

  1. docker-compose.yml ファイルを設定します。
version: '3'

services:
  n8n:
    image: n8nio/n8n
    environment:
      # MCP server environment variables
      - MCP_BRAVE_API_KEY=your-brave-api-key
      - MCP_OPENAI_API_KEY=your-openai-key
      - MCP_SERPER_API_KEY=your-serper-key
      - MCP_WEATHER_API_KEY=your-weather-api-key
      
      # Enable community nodes as tools
      - N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true
    ports:
      - "5678:5678"
    volumes:
      - ~/.n8n:/home/node/.n8n
  1. n8n で複数の MCP クライアント認証情報を作成します。

    Brave Search 認証情報:

    • Command: npx
    • Arguments: -y @modelcontextprotocol/server-brave-search

    OpenAI Tools 認証情報:

    • Command: npx
    • Arguments: -y @modelcontextprotocol/server-openai

    Web Search 認証情報:

    • Command: npx
    • Arguments: -y @modelcontextprotocol/server-serper

    Weather API 認証情報:

    • Command: npx
    • Arguments: -y @modelcontextprotocol/server-weather
  2. AI エージェント ワークフローを作成します。

    • AI エージェント ノードを追加します
    • MCP クライアントをツールとして有効にします
    • 異なる認証情報を使用して異なる MCP クライアント ノードを設定します
    • 複数のデータソースを使用するプロンプトを作成します

複数サーバーのセットアップ

AI エージェント プロンプトの例:

I need you to help me plan a trip. First, search for popular destinations in {destination_country}.
Then, check the current weather in the top 3 cities.
Finally, find some recent news about travel restrictions for these places.

このセットアップにより、AI エージェントは Docker デプロイメントで設定された環境変数をすべて使用して、異なるサーバー全体で複数の MCP ツールを使用できます。

例: SSE を使用したローカル MCP サーバーの使用

この例では、Server-Sent Events (SSE) を使用してローカルで実行されている MCP サーバーに接続する方法を示します。

  1. SSE をサポートするローカル MCP サーバーを起動します。

    npx @modelcontextprotocol/server-example-sse
    

    または、ポート 3001 で SSE サポート付きのカスタム MCP サーバーを実行します。

  2. MCP クライアント認証情報を設定します。

    • ノード設定で、Connection Type を Server-Sent Events (SSE) に選択します
    • MCP Client (SSE) API タイプの新しい認証情報を作成します
    • SSE URL を http://localhost:3001/sse に設定します
    • サーバーが認証を必要とする場合は、必要なヘッダーを追加します
  3. MCP クライアント ノードを使用するワークフローを作成します。

    • MCP クライアント ノードを追加します
    • Connection Type を Server-Sent Events (SSE) に設定します
    • SSE 認証情報を選択します
    • 「List Tools」操作を選択して、利用可能なツールを確認します
    • ワークフローを実行して結果を確認します

SSE の例

このメソッドは以下の場合に特に便利です。

  • MCP サーバーがスタンドアロンサービスとして実行されている場合
  • リモート MCP サーバーに接続している場合
  • サーバーが特別な認証ヘッダーを必要とする場合
  • トランスポートチャネルをメッセージチャネルから分離する必要がある場合

操作

MCP クライアント ノードは以下の操作をサポートしています。

MCP クライアント操作

  • Execute Tool - 特定のツールをパラメータと共に実行します
  • Get Prompt - 特定のプロンプトテンプレートを取得します
  • List Prompts - 利用可能なプロンプトのリストを取得します
  • List Resources - MCP サーバーから利用可能なリソースのリストを取得します
  • List Tools - 利用可能なツールのリストを取得します
  • Read Resource - URI で特定のリソースを読み込みます
例: List Tools 操作

List Tools の例

List Tools 操作は、MCP サーバーから利用可能なすべてのツール (名前、説明、パラメータスキーマを含む) を返します。

例: Execute Tool 操作

Execute Tool の例

Execute Tool 操作により、パラメータを指定して特定のツールを実行できます。ドロップダウンメニューから実行するツールを選択してください。

ツールとして使用する

このノードは n8n AI エージェントのツールとして使用できます。コミュニティノードをツールとして有効にするには、N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE 環境変数を true に設定する必要があります。

環境変数の設定

bash/zsh シェルを使用している場合:

export N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true
n8n start

Docker を使用している場合: docker-compose.yml ファイルに追加します:

environment:
  - N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true

デスクトップアプリを使用している場合: n8n ディレクトリに .env ファイルを作成します:

N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true

Mac/Linux で永続的に設定したい場合: ~/.zshrc または ~/.bash_profile に追加します:

export N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true

AI エージェントワークフロー結果の例:

AI Agent Example

この環境変数を設定して n8n を再起動すると、MCP Client ノードが AI Agent ノードのツールとして利用可能になります。

互換性

  • n8n バージョン 1.0.0 以降が必要です
  • MCP Protocol バージョン 1.0.0 以降と互換性があります
  • MCP サーバーへの接続に STDIO および SSE トランスポートの両方に対応しています
  • SSE トランスポートには MCP Server-Sent Events 仕様を実装するサーバーが必要です

リソース

コメント

MCP は初めてですか?

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

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