Gradio 5.38.0 MCP サーバーの改善点

Gradio バージョン 5.38.0 は、Model Context Protocol(MCP)サーバー実装において 5 つの大きな強化を導入し、開発者が Hugging Face Spaces 上で AI ツールを構築・ホスティング・統合するプロセスを簡素化します。

シームレスなローカルファイルサポート

従来、リモートの Gradio MCP サーバーは、サーバーとクライアントが別マシン上にあるため、入力ファイル(画像、動画、音声など)を公開 URL で参照できる必要がありました。ファイルをオンラインでホスティングする手間を省くため、Gradio は「File Upload」MCP サーバーを追加しました。

この専用サーバーにより、LLM エージェントはファイルを直接 Gradio アプリケーションにアップロードできます。Gradio MCP サーバーでツールがファイル入力を必要とする場合、接続ドキュメントは自動的に「File Upload」MCP サーバーの初期化手順を提示し、プロセスを円滑にします。

リアルタイム進捗通知

長時間実行される AI タスクのユーザー体験を向上させるため、Gradio は進捗通知を MCP クライアントにストリーミングするようになりました。これにより、ユーザーはツールの実行状況をリアルタイムで監視できます。開発者は MCP ツールで進捗ステータスを発行するよう実装し、この機能を活用してください。

OpenAPI 仕様の自動変換

Gradio は gr.load_openapi 関数を導入し、既存の RESTful API を LLM 環境に自動統合できるようにしました。従来は開発者が API エンドポイントを手動で MCP ツールにマッピングする必要があり、時間がかかりミスも発生しやすかったです。

gr.load_openapi を使用すると、OpenAPI スキーマ(機械可読な JSON ファイル)から直接 Gradio アプリケーションを作成できます。アプリケーションを mcp_server=True で起動すれば、Gradio が OpenAPI 仕様を自動的に MCP サーバーへ変換し、ビジネスバックエンドを任意の MCP 対応 LLM にワンラインのコードで統合できます。

gr.Header による認証強化

ユーザーに代わってサービスを呼び出す際の認証ヘッダー管理を簡素化するため、Gradio は MCP サーバー引数として gr.Header 型をサポートします。

開発者が引数を gr.Header として宣言すると、Gradio は受信リクエストから該当ヘッダーを自動的に抽出し、関数に渡します。さらに、MCP 接続ドキュメントは必要なヘッダーを自動的に表示し、サーバー接続に必要な認証情報をユーザーに明示します。

カスタマイズ可能なツール説明

Gradio は関数名と docstring からツール説明を自動生成しますが、開発者は api_description パラメータを使って説明を明示的に上書きできるようになりました。これにより、ツールの目的や利用方法を LLM に対してより正確に伝えることが可能になります。

Sources