🦘

Roo Code 3.14からmcp.jsonで環境変数を参照できるようになり、共有しやすくなった

に公開

2025年4月にリリースされたRoo Code 3.14から、mcp.jsonファイルで環境変数を参照できるようになりました。

https://github.com/RooVetGit/Roo-Code/releases/tag/v3.14.0

TL;DR

  • Roo Code 3.14から.roo/mcp.jsonで環境変数を参照できるようになった
  • ${env:環境変数名}の形式で環境変数の値を参照可能
  • GitHub MCPサーバやFigma MCPサーバなどのシークレットが必要なMCPサーバを含んだmcp.jsonをコミットできる
  • 現時点ではenvキーの中でのみ環境変数参照が可能
{
  "mcpServers": {
    "figma MCP": {
      "command": "pnpm",
      "args": [
        "dlx",
        "figma-developer-mcp",
        "--stdio"
      ],
      "env": {
        "FIGMA_API_KEY": "${env:FIGMA_API_KEY}"
      }
    }
  }
}

MCPとRoo Code

MCP(Model Context Protocol)を使うと、LLMから外部のリソースにアクセスができるようになります。
Roo CodeもMCPサーバを利用することで、AIエージェントの生産性・可能性・精度を向上させることができます。

Playwrightの例

たとえば、.roo/mcp.jsonに以下の設定を書けばRoo CodeからPlaywrightを操作できるようになります。

https://github.com/microsoft/playwright-mcp

{
  "mcpServers": {
    "playwright": {
      "command": "pnpm",
      "args": [
        "dlx",
        "@playwright/mcp@latest"
      ]
    }
  }
}

Ruleなどと同じようにMCPの設定も一緒にリポジトリにコミットすることで、チームメンバー全員がすぐにMCPサーバを利用できる状態にしておきたいです。
しかし、ここで問題になるのが、MCPサーバにはAPIトークンといったシークレット情報が必要なものがある点です。

問題点:シークレットを含む設定の共有

MCPサーバには外部リソースにアクセスするタイプのものも存在します。

https://github.com/github/github-mcp-server

https://github.com/GLips/Figma-Context-MCP

むしろMCPを使用するときはこれらを利用して外部サービス上の情報をAIエージェントにわたすことが多いのではないでしょうか。
これらのMCPサーバを利用するには、APIキーといったシークレット情報を設定する必要があります。

Figma MCPの例

例えば、Figma MCPサーバを利用する場合、Figmaから取得したAPIキーが必要です。

{
  "mcpServers": {
    "figma MCP": {
      "command": "pnpm",
      "args": [
        "dlx",
        "figma-developer-mcp",
        "--stdio"
      ],
      "env": {
        "FIGMA_API_KEY": "figmaで発行したキー"
      }
    }
  }
}

Roo Code 3.14の新機能:環境変数の参照

Roo Codeでは2025年4月にリリースされた3.14バージョンからMCPサーバの設定でも環境変数を参照できるようになりました。

https://github.com/RooVetGit/Roo-Code/releases/tag/v3.14.0

これにより、シークレット情報を環境変数として設定し、mcp.jsonファイルにはその参照のみを記述することが可能になりました。

環境変数参照の例

環境変数の参照は、${env:環境変数名}の形式で行います。

{
  "mcpServers": {
    "figma MCP": {
      "command": "pnpm",
      "args": [
        "dlx",
        "figma-developer-mcp",
        "--stdio"
      ],
      "env": {
        "FIGMA_API_KEY": "${env:FIGMA_API_KEY}"
      }
    }
  }
}

この設定ファイルをリポジトリにコミットしても、実際のGitHubトークンは含まれていないため、安全に共有できます。
各メンバーは自分の環境にFIGMA_API_KEY環境変数を設定するだけで、同じ設定ファイルを使用できます。

注意点: envキーにしか利用できない

現時点では、環境変数の参照はenvキーの値でのみ利用可能です。
その他のキー(例えばargs)では環境変数を参照できません。

{
  "mcpServers": {
    "Framelink Figma MCP": {
      "command": "npx",
      "args": [
        "-y",
        "figma-developer-mcp",
        "--figma-api-key=${env:FIGMA_API_KEY}",
        "--stdio"
      ]
    }
  }
}

おわりに

Roo Code 3.14から追加された環境変数参照機能により、チームメンバーにMCPサーバの設定を共有できるようになりました。
ただ、CursorやClineのmcp.jsonはまだこのような機能がなく、gitignoreしている状態です。他のツールも追従してほしいですね。

Discussion