「.NET 開発基盤部会 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
MCPの機能が実装されたそうなので機能を確認してみる。
- 最初にMCPクライアント機能が実装され、Langflowフロー内でMCPツールを使用することができるようになった。
- 次いでMCPサーバ機能が実装され、Claude DesktopやCursorなどのAIアプリからLangflowフローを利用できるようになった。
機能 †
MCPホスト †
LangFlowの(クライアントを内包する)フロー自体
MCPクライアント †
- LangFlowのフロー中のAgentからAgentツールを呼び出す。
- AgentツールはMCPサーバによってMCPクライアントに提供される。
MCPサーバ †
- LangFlowのフロー自体をMCPサーバから公開する。
- MCPサーバから公開された機能はAgentツールと呼ばれる。
モード †
SSEモード †
SSE(Server-Sent Events)
- MCPにおいて、Agentツールをネットワーク越しに提供/利用するケースがStdioモード。
- SSEは、HTTPサーバからクライアント(主にWebブラウザ)へリアルタイムでデータを一方向に送信するための仕組み。
- 目的
ネットワーク越しにAgentツールをMCPクライアント(LangFlow)で使えるようにする
- 接続方法
SSE(Server-Sent Events)というHTTP通信で接続
- 対象
- ネットワーク越しに利用するAgentツール
- LangFlowがAgentツールとして公開するフロー
Stdioモード †
Stdio(Stdin/Stdout)、日本語では標準入出力を呼ばれる。
- MCPにおいて、非LangFlowのCLI的なAgentツールをStdio越しに提供/利用するケースがStdioモード。
- Stdioは、プロセス間通信を行うための一般的な方法で、CLIの実装もStdioによる。
- 目的
CLI的なAgentツールをMCPクライアント(LangFlow)で使えるようにする
詳細 †
クライアント †
- LangflowにおいてMCPサーバーの提供するAgentツールと接続するMCPクライアント機能を「MCP接続コンポーネント」と呼ぶ。
- サーバ接続定義JSONを、MCPクライアントに取り込む。
サーバー †
LangFlowのフローをMCPサーバからAgentツールとして公開する。
- プロジェクト画面の[MCP Server]タブに移動する。
- MCPサーバから公開するフロー(≒ Agentツール)を選択する。
- ココで、LLM AgentがAgentツール(≒ フロー)の内容を理解できるように名前と説明を明記する。
例えば「Document QA」のフローには以下のような名前と説明を付与する。
- Flow Name: document_qa_for_resume
- Flow Description: A flow for analyzing Emily's resume.(エミリーの履歴書を分析するためのフロー。)
- LangFlowが認証を要求する場合、「API key generated」を押下し、Web APIキーを生成する。
- MCPにおけるサーバ接続定義JSONをMCPクライアントに渡す。
{
"mcpServers": {
"lf-my_projects": {
"command": "uvx",
"args": [
"mcp-proxy",
"--headers",
"x-api-key",
"(Web APIキー)",
"http://localhost:7860/api/v1/mcp/project/(projectのID)/sse"
]
}
}
}
Inspector †
- 「MCP Inspector」は、一般的なIT用語やオープンな技術仕様としてはあまり知られていない名称
- Langflow的には、MCPサーバのテストとデバッグによく使われるツール(フローを監視し、利用状況を把握)
参考 †
- Model Context Protocol (MCP)