FastMCPが、Redisの接続認証情報を更新しながらタスクを運用する開発者と、サーバーツールをコマンドラインから呼び出す利用者向けのアップデートを公開した。新しい接続に最新の認証情報を適用できるようにし、生成されたコマンドの値の欠落と、複数のサーバーを組み合わせた環境でのセッション参照の問題を修正した。
1. 新しい接続ごとに現在のRedis認証情報を取得する
今回のバージョンでは、redis-pyベースの認証情報プロバイダーをタスクで使えるようにした。プロバイダーは、接続時に必要な認証情報を返す構成要素だ。新しい接続が作られる際に現在の値を取得するため、認証情報を更新した後の接続に変更後の値を反映できる。
これは、認証情報の更新と再接続が絡む運用環境で意味を持つ。接続に使う値を毎回受け取る経路ができたことが要点であり、タスク拡張を複製する際にもこのプロバイダーが保持されるよう修正された。
ただし、変更された値を継続的に渡すストリーミング方式のプロバイダーは、タスク実行層がこれを安全に更新できるようになるまで拒否される。Redis 8.1.0も、タスクの再接続を維持するために除外された。
2. 生成したコマンドがサーバーに送る設定と値を保持する
生成CLIは、サーバーのツールをコマンドラインで実行できるコマンドにする機能だ。今回はHTTPとSSEの転送情報をシリアライズ、つまりデータを転送可能な形式に変換するよう修正した。リモートサーバーとの通信方法に関する設定も生成結果に含める変更だ。
入力値の処理では、空の配列が生成されたコマンドでも保持される。空のリストを渡したという情報が抜け落ちないようにしたもので、ツールに渡す値を保持する点で転送設定の修正と方向性が同じだ。
パラメーター名が生成コマンド内部の補助機能名と重複する問題も修正した。あわせて、jsonという名前のパラメーターを持つツールでコマンド生成に不具合が起きる問題を修正した。コマンドを作る機能とツールが受け取る引数の間の名前の衝突を解消したものだ。
3. 組み合わせたサーバーのセッション参照とエラー処理を修正する
マウントは、あるサーバーに別のサーバーを接続して一緒に使う構成だ。今回のバージョンは、接続されたサーバーを経由してセッションの可視性、つまりセッションを参照できる範囲を照会する経路を修正した。サーバー間でリクエストの状態が引き継がれる仕組みを説明するドキュメントも明確にした。
複数のサーバー構成要素を集約する過程では、モジュールを読み込めなかった際のエラー処理設定に従うよう修正した。構成要素を組み合わせた後も、その設定が適用されるようにした変更だ。
クライアントでは、古い実行コンテキスト、つまりリクエスト処理に必要な実行状態が、後から作られたセッションを閉じる問題を修正した。古いコンテキストの終了処理が新しいセッションに影響していた経路を修正したことになる。
4. 自動化の点検とオプション依存関係、必要に応じて追加するパッケージの管理も行う
生成したコマンドを自動化に利用しているなら、新バージョンでコマンドを再生成し、リモート接続設定と空の配列の受け渡しを確認するのが実用的だ。サーバーツールをコマンドに変換する過程の修正なので、既存の生成物も点検対象にできる。
使われていなかったkeyring依存関係は削除された。KeyringStoreを直接使う開発者は、py-key-value-aio[keyring]を明示的にインストールする必要がある。このストアを使う環境では、アップデートの準備に必要な具体的なインストール項目となる。
利点は、認証情報の更新とコマンド生成、セッション処理で問題が起きていた経路を改善したことにある。一方、keyringストアを直接使う開発者には、必要なパッケージを明示的に管理する負担が移る。アップデートの効果とともに確認すべき運用コストだ。
FastMCP v4.1.4の価値は、新機能の規模よりも、認証情報の更新、コマンド生成、サーバーの組み合わせが絡む運用経路を改善したことにある。
