MCPノード

MCPノードの使い方 (MCP Tool / MCP Client)

MCPノードの使い方 (MCP Tool / MCP Client)

MCPノードの使い方 (MCP Tool / MCP Client)

ノードの使い方を学ぶ - MCPノード(MCP Tool / MCP Client)

Agentriaでは、MCPノードを使って外部で作られたツールをエージェントに接続し、Web検索やデータ抽出のような実際の作業をワークフロー内で実行できます。AgentriaMCP Tool(MCP Tool)ノードMCP Client(MCP Client)ノードの2種類を提供します。

このチュートリアルでは、Web検索MCPサーバーを接続し、ユーザーの質問を受け取ったエージェントが自ら検索ツールを選んで呼び出し、その結果をもとに回答を作成するワークフローを作成します。最後に、同じサーバーのツールをMCP Clientノードで直接呼び出す方法もあわせて確認します。

MCPとは?

MCP(Model Context Protocol、モデルコンテキストプロトコル)は、エージェントが何らかのアクションを実行するための約束事です。よく「AIのためのUSB-C端子」に例えられます。機器ごとに異なる充電器を使う代わりにUSB-C1つですべての機器を接続できるように、MCPは1つの標準規格でさまざまなツールをエージェントに接続します。

LLMは文章を生成できますが、Web検索やファイル作成のような実際のアクションは自分では実行できません。それらのアクションのほとんどはAPI呼び出しによって行われるためです。MCPは「どのツールを、どの引数で呼び出せばよいか」をエージェントが読み取れる形で示すインターフェースです。

MCPを理解するには、次の3つの概念を押さえておけば十分です。

  • ツール(Tool) — MCPサーバーが提供する1つの機能です。各ツールには「何ができるか」を説明するディスクリプション(Description)と、「どんな引数を渡せばよいか」を定義する入力情報が付いています。例えば検索ツールはquery(検索語)という引数を受け取ります。

  • MCPサーバー — 複数のツールをまとめて提供し、エージェントのリクエストを受けて実際のアクションを実行し、結果を返すサーバーです。検索・ファイル作成・コード実行など、サーバーによって提供するツールは異なります。

  • MCPクライアント — MCPサーバーに接続してツールを呼び出す側です。ツールを呼び出せるシステムと、どのツールを呼び出すか判断するLLMが組み合わさった形です。Claudeデスクトップアプリが代表的なMCPクライアントであり、AgentriaのMCPノードも同じ役割を果たします。

全体の動作は次の順序で進みます。




ここで重要なのは、どのツールを呼び出すかを決めるのはLLMだという点です。呼び出す順序をあらかじめ決めておくのではなく、エージェントがツールのディスクリプションを読み、その時点で必要なツールを自ら選びます。そのため、複数のツールを接続しておけば、作業内容に応じて適切なツールが自動的に選ばれます。

MCPは「説明書」ではなく「実行経路」です。 何をどう処理するかを記した仕様書は、LLMに判断基準を与えるだけで、実際の動作は生み出せません。MCPはディスクリプションに加えて、呼び出す引数の形式と接続先のサーバーまで規定するため、エージェントがその規格どおりにリクエストを送れば、実際に検索が実行され、結果が返ってきます。

MCPサーバーには、自分のコンピューター上で直接実行する方式(ローカル)と、インターネット経由で接続する方式(リモート/ホスティッド)があります。AgentriaはMCPサーバーのURLを入力してリモートMCPサーバーに接続します。そのため、接続先のURLと、サーバーが要求する認証情報(APIキーなど)さえ用意すれば使えます。

事前準備

始めるには、Agentriaでプロジェクトを作成し、エージェントキャンバス(Canvas)に入ります。

キャンバスへの入り方は、🔗3ステップで始めるコアガイドのステップ1(プロジェクト作成とコンポーザー選択)をご参照ください。

このチュートリアルを完了すると、次のことができるようになります。

  1. MCP ParametersクレデンシャルにMCPサーバー情報を登録します。

  2. MCP Toolノードを追加し、サーバーが提供するツール一覧を読み込みます。

  3. MCP Toolノードをエージェントノードにツールとして接続し、エージェントがツールを自動で呼び出せるようにします。

  4. MCP Clientノードで特定のツールを直接呼び出します。

接続するMCPサーバーを準備する

MCPノードを使うには、接続先のMCPサーバーが必要です。このチュートリアルでは、登録とキー発行が簡単なTavilyのWeb検索MCPサーバーを使用します。

  1. https://app.tavily.com にアクセスして無料アカウントを作成します。クレジットカードの登録なしで月1,000クレジットを利用できます。

  2. ログインするとダッシュボードにAPIキーが表示されます(tvly-で始まる文字列)。

  3. 以下の形式のの部分に発行されたキーを入れて、サーバーURLを完成させます。Tavilyはキーをクエリパラメータとしてurlの末尾に付与する方式に対応しているため、このURL1つで認証まで完了します。

https://mcp.tavily.com/mcp/?tavilyApiKey=<api-key></api-key>
https://mcp.tavily.com/mcp/?tavilyApiKey=<api-key></api-key>
https://mcp.tavily.com/mcp/?tavilyApiKey=<api-key></api-key>

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

ツール名

説明

主な引数

tavily-search

リアルタイムWeb検索

query(検索語)、max_results(結果件数)など

tavily-extract

Webページからデータを抽出

urls(抽出対象URL)など

他のMCPサーバーを使いたい場合は、MCPサーバーをまとめたディレクトリで目的の機能を持つサーバーを探し、サーバーURLと認証方式を確認します。まずMCP公式レジストリで検証済みのサーバーを探し、見つからない場合はSmitheryでホスティングされたリモートサーバーの接続URLをすぐに確認できます。サーバーが変わっても、Agentriaでの接続方法は同じです。

MCP Parametersクレデンシャルを作成する


どちらのMCPノードも、MCP Parametersクレデンシャル(Credential)にMCPサーバー情報を登録して使用します。クレデンシャルは一度作成すれば、複数のノードで再利用できます。

MCP Parametersクレデンシャルの追加モーダルは、以下の項目で構成されています。

項目

必須

説明

クレデンシャル名

必須

クレデンシャルを識別する名前(例:Tavily MCP

説明

任意

このクレデンシャルに関するメモ

デフォルトクレデンシャルに設定

任意

オンにすると、MCPノードを追加する際にこのクレデンシャルがデフォルトで選択されます

MCP SERVER URL

必須

接続するMCPサーバーのアドレス

API-KEY

任意

サーバーが個別のキー認証を要求する場合に入力

Headers

任意

サーバーがヘッダー認証を要求する場合にJSON形式で入力(例:{"x-api-key": ""}

Query Parameters

任意

サーバーがクエリパラメータを要求する場合にJSON形式で入力

HeadersQuery Parametersはデフォルト値が{}のJSON入力欄です。不要な場合は{}のままにしておきます。

Tavilyは APIキーをURLの末尾に付与する方式に対応しているため、MCP SERVER URL項目には先ほど完成させたURL全体をそのまま入力し、API-KEYHeadersQuery Parametersは空のままにします。

https://mcp.tavily.com/mcp/?tavilyApiKey=<api-key></api-key>
https://mcp.tavily.com/mcp/?tavilyApiKey=<api-key></api-key>
https://mcp.tavily.com/mcp/?tavilyApiKey=<api-key></api-key>

入力が終わったら保存(Save)ボタンをクリックします。

キーをURLに付けず、Query Parameters{"tavilyApiKey": ""}と分けて入力しても結果は同じです。どちらの方法でもサーバーには同じリクエストが送られるため、URL1つで済む前者の方法がより簡単です。

認証方式はサーバーによって異なります。ヘッダー認証を使うサーバーであれば、MCP SERVER URLには基本のアドレスのみを入力し、Headers{"x-api-key": ""}の形式で入力します。認証情報がない、または誤っていると、ツール一覧を読み込む段階で呼び出しが失敗するため、サーバーのドキュメントが要求する形式どおりに正確に入力します。

モーダル下部の+ セット追加ボタンは**キーローテーション(Key Rotation)**のための機能です。複数のセットを登録しておくと、使用中のキーがレートリミット(Rate Limit)に達したりトークンを使い切ったりした際に、次のセットのキーで呼び出しを続けて試みます。無料プランのように呼び出し上限が厳しいサーバーを使う際に便利です。このチュートリアルではセット1のみを使用します。

ワークフロー概要

ワークフロー全体はAgent InputAgent LoopノードAgent Outputの順に実行され、MCP ToolノードAgent Loopノードにツールとして接続されます。

このチュートリアルの核心はMCPノードです。

MCP Toolノードは、MCPサーバーが提供するツール一覧を読み込み、エージェントに渡す役割を果たします。エージェントはその一覧から今必要なツールを選び、必要な引数を自ら埋めて呼び出します。検索結果が返ってくると、その内容をもとに最終的な回答を生成します。

Agentriaの2つのMCPノードは、次のように分かれています。

ノード

位置

使用方式

どんなときに使うか

MCP Tool(MCP Tool)ノード

AI Agentセクション

エージェントノードにツールとして接続

エージェントに作業に合ったツールを自動で選択・呼び出しさせたいとき

MCP Client(MCP Client)ノード

ユーティリティ/生産性セクション

単独で直接呼び出し

呼び出すツールと引数を直接指定して、特定の作業だけを実行したいとき

ほとんどの場合、MCP Toolノードをエージェントに接続する方式が便利です。ツール呼び出しに必要な引数をエージェントが自動で埋めてくれるためです。

MCP Toolノードの基本情報

MCP Toolノードは以下の項目を提供します。

項目

必須

説明

MCP Parameters

必須

接続するMCPサーバーのクレデンシャルを選択

作業(ツール)

必須

エージェントに使わせるツールを選択。ツール接続&読み込みボタンでサーバーのツール一覧を読み込んだ後にチェック

このチュートリアルでは両方の項目を使用します。

ステップ1:スタートノード(Agent Input)の確認

エージェントワークフローのスタートノードはAgent Inputです。Agent Inputノードをダブルクリックしてノードエディターを開きます。

Agent Inputの入力変数は、以下の4つに固定されており、直接追加・変更することはできません。

入力変数

説明

input_message

ユーザーが入力したメッセージ

input_files

ユーザーがアップロードしたファイル

metadata

JSONオブジェクト形式で渡されるカスタムメタデータ

session_id

現在の会話のセッション識別子。チャットルームIDが自動的に設定されます

ユーザーがチャットで送った質問はinput_messageに格納され、そのままエージェントに渡されます。そのため、このチュートリアルでは別途宣言する変数はありません。

入力変数を自分で宣言してワークフローを構成したい場合はアビリティを使用します。エージェントワークフローの入力はAgent Inputの固定変数として決まっています。

確認が終わったらキャンバスに戻ります。

ステップ2:Agent Loopノードを追加

キャンバス下部の+ノード追加(Add Node)ボタンをクリックし、AI AgentセクションからAgent Loopノードをドラッグ&ドロップでキャンバスに配置します。

MCP Toolノードは単独では実行されず、エージェントノードにツールとして接続して使用するため、先にツールを取り付けるエージェントノードを配置します。

ステップ3:MCP Toolノードを追加

同じAI AgentセクションからMCP Toolノードをドラッグ&ドロップでキャンバスに配置します。

Agent Loopノードの下に配置しておくと、この後のツール接続がしやすくなります。

ステップ4:MCP Toolノードの設定(クレデンシャル接続とツールの読み込み)

MCP Toolノードをダブルクリックしてノードエディターを開きます。

  1. MCP Parameters項目で、事前準備で作成したクレデンシャルを選択します。

  2. ツール接続&読み込みボタンをクリックします。該当のMCPサーバーに接続し、サーバーが提供するツール一覧を読み込みます。

  3. 作業(ツール)一覧に、読み込んだツール(tavily-searchtavily-extract)が表示されます。エージェントに使わせたいツールを選択します。すべて選択をチェックすると、読み込んだツールをすべて使用できます。

このステップで読み込まれるのは、ツール名だけでなく各ツールのディスクリプションと引数情報です。エージェントはこの情報を読み取り、どのツールをいつ呼び出すかを判断します。そのため、複数のツールを選択しておくと、エージェントが作業内容に応じてその中から適切なツールを自動的に選んで呼び出します。

ツール一覧が空だったり読み込みに失敗したりする場合は、クレデンシャルのサーバーURLと認証情報を再度確認します。認証情報が間違っていると、サーバーがツール一覧のリクエストを拒否します。

設定が完了したらキャンバスに戻ります。

ステップ5:Agent Loopノードにツールとして接続

Agent Loopノード下部のToolsピンとMCP Toolノードのインピン(In-Pin)をエッジ(Edge)で接続します。

ツールとして接続すると、ツール呼び出しに必要な引数(検索語、結果件数など)をエージェントが自動的に埋めてくれるため、自分で値を入力する必要はありません。例えば、エージェントに「MCPが何か検索して」と依頼すると、エージェントがtavily-searchツールを選び、queryに検索語を入れて呼び出し、返ってきた検索結果をもとに回答を生成します。

MCP Toolノードは複数取り付けることができます。検索・ファイル作成・予定照会のように異なるMCPサーバーのツールをあわせて接続しておけば、1つのエージェントノードで複数種類の作業を処理できます。

ステップ6:エッジでノードを接続

残りのノードをエッジで接続します。

  • Agent Inputのアウトピン(Out-Pin) → Agent Loopノードのインピン(In-Pin)

  • Agent Loopノードのアウトピン(Out-Pin) → Agent Outputのインピン(In-Pin)

接続が完了すると、ユーザーがチャットで入力したメッセージがinput_messageを通じてAgent Loopノードに渡され、エージェントが生成した回答がAgent Outputに渡されます。

これで「Web検索エージェント」ワークフローが完成しました。

ステップ7:チャットテストでワークフロー全体を実行

CHAT TESTボタンをクリックし、チャット入力欄に以下のメッセージを入力して実行します。

検索内容をもとに作成された回答が返ってくれば、ワークフローは正常に動作しています。実行ログでは、エージェントがtavily-searchツールを呼び出した記録と、サーバーが返した検索結果もあわせて確認できます。

参考:MCP Clientノードでツールを直接呼び出す

エージェントにツールの選択を任せず、呼び出すツールと引数を自分で指定したい場合は、MCP Clientノードを使用します。このノードはエージェントなしで、単独でMCPサーバーのツールを呼び出します。

MCP Clientノードの追加と設定

+ノード追加パネルのユーティリティ/生産性セクションからMCP Clientノードをドラッグ&ドロップでキャンバスに配置し、ダブルクリックしてノードエディターを開きます。

MCP Clientノードは以下のオプションを提供します。

オプション

必須

説明

MCP Parameters

必須

接続するMCPサーバーのクレデンシャル(Select Credentialで選択)

詳細結果フラグ

任意

Trueに設定すると、結果にメタ情報などの詳細データもあわせて返します

tool_name

必須

呼び出すツールの名前

tool_arguments

必須

呼び出すツールに渡す引数(JSON形式)

クレデンシャルの選択

MCP ParametersSelect Credentialで、事前準備で作成したクレデンシャルを選択します。MCP Toolノードと同じクレデンシャルをそのまま再利用できます。

呼び出すツールの指定

MCP Toolノードと違い、値を埋めてくれるエージェントがいないため、呼び出すツールと引数を直接入力します。TavilyでWeb検索を実行する場合は、以下のように設定します。

項目

tool_name

tavily-search

tool_arguments

{ "query": "今日のソウルの天気", "max_results": 3 }

tool_argumentsqueryは検索語、max_resultsは取得する結果の件数です。ツール名と引数の形式はAgentriaではなく使用するMCPサーバー側で定義されているため、該当サーバーのドキュメントを確認して入力します。

詳細結果フラグ

詳細結果フラグをオン(True)にすると、基本の結果に加えてメタ情報などの追加データもあわせて返されます。検索結果の本文だけが必要な場合はオフ(Off)のままにします。

tool_nametool_argumentsは、インプット領域(Input Section)で入力変数に接続して使用することもできます。前のノードで作った値を渡すには、左側のインプット領域で接続するタイプを選択し、変数をドラッグ&ドロップで各フィールドに配置します。

ノードテストで動作を確認

ノードエディター上部のテスト(TEST)ボタンをクリックし、ツールが正常に呼び出されるか確認します。

呼び出しが成功すると、アウトプット領域(Output Section)のresultにツールの実行結果が返されます。

次のステップ

🎉 おめでとうございます! Agentriaを使って「Web検索エージェント」ワークフローを完成させました。

MCP Toolノードに複数のMCPサーバーのツールをあわせて接続し、エージェントが検索・抽出・予定管理など多様な作業を処理できるように拡張したり、MCP Clientノードで特定のツールを決まった引数で呼び出すワークフローを作ってみてください。

Agentriaは、アイデアを現実に変える可能性の空間です。

あなたのアイデア次第で、ワークフローは無限に広がります。

  • 他のノード活用例が気になる方は 🔗ノードの使い方 ページをご確認ください。

よくある質問

MCPノードとは何ですか?

MCPノードは、AgentriaでMCP(Model Context Protocol)サーバーに接続し、外部のツールを使用するノードです。MCPは、エージェントが検索やファイル作成のような実際のアクションを取るための約束事で、どのツールをどの引数で呼び出せばよいかをエージェントが読み取れる形で定めます。Agentriaは、エージェントにツールとして接続するMCP Toolノードと、単独でツールを呼び出すMCP Clientノードを提供します。

MCP ToolノードとMCP Clientノードは、それぞれどんなときに使いますか?

エージェントに状況に応じたツールを自ら選んで呼び出させたい場合は、MCP ToolノードAgent Loopノードのようなエージェントノードにツールとして接続します。この場合、検索語や結果件数などの引数はエージェントが自動で埋めてくれます。逆に、呼び出すツールと引数がすでに決まっていて、毎回同じ作業だけを実行すればよい場合は、MCP Clientノードtool_nametool_argumentsを直接入力して使用します。

MCPはスキルや仕様書とどう違いますか?

何をどう処理するかを記した仕様書は、LLMに判断基準を与えるだけで、それ自体では何の動作も実行できません。MCPはツールのディスクリプションに加えて、渡すべき引数の形式とリクエストを受け取るMCPサーバーまで規定するため、エージェントがその規格どおりに呼び出せば、サーバーが実際にアクションを実行して結果を返します。つまり、仕様書が「何をすべきか」だとすれば、MCPは「実際に実行される経路」です。

MCP Toolノードはウェブリクエストノードとどう違いますか?

ウェブリクエスト(Web Request)ノードは、URL・メソッド・パラメータを直接指定してAPIを呼び出すノードで、呼び出し先と値はワークフロー内に固定されています。MCP Toolノードは、MCPサーバーからツール一覧と各ツールのディスクリプションを先に読み込んでエージェントに渡し、どのツールをどの引数で呼び出すかはエージェントが判断します。呼び出すAPIが決まっている場合はウェブリクエストノードが、エージェントが状況に応じてツールを選ぶ必要がある場合はMCP Toolノードが適しています。

MCP ToolノードはAgent Loopノードとどのように連携しますか?

MCP Toolノードは単独では実行されず、Agent Loopノード下部のToolsピンにエッジで接続して使用します。接続すると、MCP Toolノードが読み込んだツール一覧がエージェントに渡され、エージェントはユーザーのリクエストを処理する過程で必要なツールを選択し、引数を埋めて呼び出した後、その結果をもとに回答を生成します。MCP Toolノードを複数接続すると、1つのエージェントノードで複数のMCPサーバーのツールをあわせて使用できます。