Gemini CLIで画像生成:MCPサーバー設定手順
Gemini CLIをリモートMCPサーバーに接続し、端末からNano Banana画像やVeo動画を生成。実際の設定と注意点、料金は$0.03から。

Gemini CLIはGoogleが提供するオープンソースのターミナルエージェントであり、MCPは外部ツールと通信するためのプロトコルです。リモートMCPサーバーに接続すれば、コードを編集するチャットセッションから直接画像、動画、音声を生成し、作業ディレクトリへ保存できるようになります。
要約: gemini mcp add --transport http --scope user bananabanana https://bananabanana.pro/api/mcp -H "Authorization: Bearer $BB_KEY" を実行し、CLIの確認プロンプトでフォルダを信頼したあと、gemini mcp list で緑色の Connected を確認します。画像生成は残高から1回あたり$0.03からの従量課金です。

以下はすべて2026年8月17日時点でGemini CLI 0.55.1および有効な bb_live_… キーを使用して動作検証した内容です。公式ドキュメントと実際の挙動が異なる点も率直に記載しています。
実際の設定手順
コマンドは2つだけです。1つ目でサーバーを登録します:
export BB_KEY=bb_live_… # create one at https://bananabanana.pro/profile
gemini mcp add --transport http --scope user \
bananabanana https://bananabanana.pro/api/mcp \
-H "Authorization: Bearer $BB_KEY"
2つ目で接続を確認します:
gemini mcp list
# ✓ bananabanana: https://bananabanana.pro/api/mcp (http) - Connected
Connected ではなく Disabled と表示された場合は、設定を変更する前に次のセクションをお読みください。私も原因特定に5分ほど費やしました。
ドキュメントに書かれていない5つの注意点
フォルダの未信頼によりすべてが無言で無効化される。 CLIが信頼していないディレクトリで gemini mcp list を実行すると次のようになります:
Warning: MCP servers are configured but disabled because this folder is untrusted.
User-level servers are also suppressed in untrusted folders to prevent accidental side-effects.
○ bananabanana: https://bananabanana.pro/api/mcp (http) - Disabled
2行目にご注目ください。--scope user で設定したサーバーであっても無効化されます。CLI初回起動時に対話形式で信頼を確認されますが、スクリプト実行時は ~/.gemini/trustedFolders.json にパスと TRUST_FOLDER の対応関係として保存されます。セキュリティ方針としては妥当ですが、"Disabled" という表記だけではフォルダが原因であると分かりにくいため注意が必要です。
gemini mcp add は httpUrl ではなく url を出力する。 ドキュメントにはStreamable HTTP向けに httpUrl と記載されていますが、CLI 0.55.1が実際に生成した設定は以下の形でした:
{
"mcpServers": {
"bananabanana": {
"url": "https://bananabanana.pro/api/mcp",
"type": "http",
"headers": { "Authorization": "Bearer $BB_KEY" }
}
}
}
どちらの形式でも接続できます。ドキュメントの記載例とCLIの生成結果を見比べて設定ミスを疑う必要はありません。どちらも正常に動作します。
デフォルトのスコープは project であり、リポジトリにキーが保存される。 --scope user を省略すると、プロジェクト内の .gemini/settings.json にキーが書き込まれます。そのまま git add . を実行するとコミット履歴に残ってしまいます。必ず --scope user を指定するか、環境変数参照の形で渡してください。
$BB_KEY の展開は機能するが、未定義時は通知なしで失敗する。 環境変数がエクスポートされていれば Connected になります。変数を設定していない新規ターミナルで開くと、認証エラーではなく Disconnected とだけ表示されます。シェル設定ファイルにエクスポート行を追加しておくことをお勧めします。
Gemini CLIがSSEを要求して405を受け取る。 接続時のサーバーログを確認すると、POST initialize (200)、POST notification (202)、GET /api/mcp (405)、POST tools/list (200) の順で処理されています。このGETリクエストはステートレスサーバーに対してServer-Sent Eventsを開こうとする試行です。405が返ってもCLIは問題なく処理を続行します。自作のMCPサーバーを運用する場合もこの405を気にする必要はありません。

利用可能なツールと料金
セッション内にはツールリファレンスと同じ9つのツールが登録されます。このうち4つは呼び出し無料です:list_models, get_account, get_result, list_generations。その他のツールは生成ごとにアカウント残高から差し引かれます。
| 種別 | モデル | 料金 |
|---|---|---|
| 画像, 1K | Nano Banana 2 Lite | $0.03 |
| 画像, 512 → 4K | Nano Banana 2 | $0.03 – $0.13 |
| 画像, 1K → 4K | Nano Banana Pro | $0.11 – $0.20 |
| 動画, 3–10秒 音声付き | Gemini Omni Flash | 1秒あたり $0.10 |
| 動画, 4–8秒 | Veo 3.1 ファミリー | 1本最大 $4.40 |
| 音声 | Gemini Flash TTS | 200文字あたり $0.01 |
動画や複数画像の生成では必ず事前見積もりが返されます。エージェントが正確な金額を受け取り、確認の合意を得るまで請求は発生しません。セーフティフィルタによる拒絶や上流エラーは自動返金されるため、バックグラウンドでの一括実行時も安心です。
残高チャージにはボーナスが付与されます:$50以上で5%、$100以上で10%、有効なプロモコードでさらに10%加算されます。プロモコードを適用して$100チャージすると$120分が付与されます。

GeminiからNano Bananaモデルを使う理由

Gemini CLIが外部サーバーを経由してGemini画像モデルを呼び出す構成は、一見遠回りに思えるかもしれません。Google Cloudの請求先アカウントを設定し、モデルAPIを有効化し、認証情報を発行してリージョンごとのクォータを管理する直接的な道もあります。基盤構築が目的ならばそれも良い選択です。
当サービスの利点は別のところにあります。単一のBearerトークン、プリペイド残高、クラウド請求アカウント不要、クォータ申請不要、リージョン固定なし。さらに同じ接続からVeoやOmniの動画モデル、TTS音声合成もプロジェクト単位ではなく生成ごとの従量制で利用できます。プラットフォーム管理ではなく成果物の制作に集中したい場合、こちらの方がはるかに手軽です。
超大規模な運用であれば直接クラウドを構築する方が安価になりますが、本サービスなら2分で導入でき、不要なクラウド費用の発生を防げます。
他のエディタをご利用の場合も、同じAPIキーを使ってClaude Code、Cursor、Codexへ簡単に接続できます。
実践例:ドキュメント用のヘッダー画像生成
実践的なユースケースをご紹介します。docs/ フォルダ配下に12ページあり、各ページに統一されたデザインスタイルのヘッダー画像を配置したい場合です。
セッション内でのプロンプト:
Read every heading in docs/*.md. For each file, generate a 16:9 illustration matching the page topic, in this style: editorial illustration, pastel paper background, dark ink details, violet and amber accents, no text. Use nano-banana-pro. Save each as docs/img/.png and add the image reference under the page title.
エージェントは各ファイルを読み込み、ページごとに generate_image を呼び出し、get_result で完了を待ち、ファイルをダウンロードしてMarkdownに参照を追記します。1枚$0.11の画像12枚で合計$1.32となり、コーヒーを淹れている間に完了します。本記事のすべてのイラストもNano Banana Proと共通のスタイル指定を用いて同様に生成されています。
実行前のアドバイスとして、まず1枚だけテスト生成してスタイルを確認してください(12枚まとめてスタイル指定を誤ると$1.32が無駄になります)。また、有料ツールの意図しないループを防ぐため、--trust フラグはつけずに確認プロンプトを残すことをお勧めします。

APIキーの代わりにOAuthは使えますか?
Gemini CLIのドキュメントにはリモートMCPサーバー向けOAuth 2.0対応(ディスカバリ機能および /mcp auth コマンド)が記載されています。当サーバーは完全なOAuth 2.1認可サーバー(動的クライアント登録、PKCE S256、RFC 9728対応)として機能し、Claude Codeやclaude.aiなどのクライアントではキー入力不要でサインイン可能です。
APIキーによる利用フローは検証済みで安定稼働しています。Gemini CLI経由のOAuthは本セッションでは個別検証していないため、動作見込みとしてお考えください。APIキーの発行は10秒で完了し、失効させるまで無期限で有効です。
よくある質問
設定ファイルの保存場所はどこですか?
ユーザー単位は ~/.gemini/settings.json、プロジェクト単位は .gemini/settings.json です。gemini mcp add --scope user は前者に書き込みます。
サーバーがDisabledと表示されるのはなぜですか?
フォルダが信頼されていません。初回起動時の確認に同意するか、~/.gemini/trustedFolders.json にパスと TRUST_FOLDER の組み合わせを追加してください。未信頼フォルダではユーザースコープのサーバーも停止します。
モデルに公開するツールを制限できますか?
はい。gemini mcp add 実行時に --include-tools や --exclude-tools を指定するか、設定ファイル内の includeTools / excludeTools で制御できます。除外設定が優先されます。
チーム共有のリポジトリでも利用できますか?
サーバーをプロジェクトスコープに設定し、キーは直接書かずに環境変数経由で渡してください。各メンバーが自身のキーで export BB_KEY=… を実行すれば、コミット内容をクリーンに保てます。
生成に失敗した場合はどうなりますか?
セーフティフィルタによる拒絶を含め、自動的に残高へ返金されます。判定が微妙なプロンプトの場合、完成したピクセルデータで再判定されるため、再試行することで別の画像が生成され通過することがあります。
GUIでの操作をご希望ですか? Webジェネレーターでも同じ残高で同一モデルを利用できます。ターミナルでは、接続後にまず list_models をお試しください。無料で最新価格を確認でき、課金前に接続環境をテストできます。