🤵‍♀️

Gemini CLIでSerena MCP Serverを利用する

に公開

Claude Codeで使うと良いよと話題のSerenaですが、MCPに対応しているのでGemini CLIでも設定が可能です。

Serenaの導入については他の方の記事を参照してください。

https://zenn.dev/studio/articles/431afa748fbed1

前提

  • Macを使っている(WindowsやLinuxの場合は、適宜設定値を変更する必要があります)
  • Serenaはローカル(/Users/{user}/dev/serenaのパスを想定)にインストール済みである。
    • uvをHomebrewでインストール済み
  • Gemini CLIも導入済みである
  • プロジェクトごとに動作するように設定する

Gemini CLIの設定方法

  1. .zshrcの環境変数にSERENA_ROOTを追加

    export SERENA_ROOT="/Users/{user}/dev/serena" # これを追加
    
  2. .vscode/settings.jsonterminal.integrated.env.osxPROJECT_ROOTを追加(ターミナル起動時に環境変数に設定される)

    {
      "terminal.integrated.env.osx": {
       "PROJECT_ROOT": "${workspaceFolder}"
      }
    }
    
  3. .gemini/settings.jsonにMCPの設定を追記

    {
      "mcpServers": {
        "serena": {
          "displayName": "Serena Coding Agent",
          "command": "/opt/homebrew/bin/uv",
          "args": [
            "run",
            "--directory",
            "${SERENA_ROOT}", // 環境変数から読み込み
            "serena-mcp-server",
            "--transport",
            "stdio",
            "--host",
            "127.0.0.1",
            "--port",
            "9121",
            "--context",
            "ide-assistant",
            "--project",
            "${PROJECT_ROOT}" // 環境変数から読み込み
          ]
        }
      }
    }
    

これでgeminiコマンドでGemini CLIを起動したら、Serenaも立ち上がるようになります。

その後、Gemini CLIにindex-projectと指示を送ると、Serenaを使ってインデックスの作成を実施してくれます。

Discussion