メインコンテンツへスキップ
SonarQube インスタンスを接続して、CloudThinker エージェントがコード品質の分析、セキュリティホットスポットのレビュー、プロジェクト全体の品質ゲートステータスの監視を行えるようにします。CloudThinker は公式の SonarSource MCP サーバーを使用し、ユーザートークン で認証します。

対応プラットフォーム

プラットフォームサポート
SonarQube Cloudすべての組織
SonarQube Server2025.4 以上

前提条件

  • SonarQube Cloud 組織、またはバージョン 2025.4 以上で動作する SonarQube Server インスタンス。
  • My Account → Security → Generate Tokens から生成した ユーザートークン
  • CloudThinker が分析すべきプロジェクトへの Browse 権限。
CloudThinker は公式の SonarSource MCP サーバーを使用するため、SonarQube Server 2025.4 以上または SonarQube Cloud が必要です。

セットアップ

1

トークンを生成する

SonarQube CloudMy Account → Security → Generate Tokens に移動します:
  • Name: cloudthinker
  • Type: User Token
  • Expires in: 適切な期間を設定
トークンをコピーします — 再表示されません。
2

組織キーを確認する

My Organizations に移動し、URL から組織キーを確認します:
https://sonarcloud.io/organizations/YOUR_ORG_KEY
3

CloudThinker に接続を追加する

Connections → SonarQube に移動し、以下を入力します:
  • Token: 生成したトークン
  • Deployment Type: SonarQube Cloud を選択
  • Organization: 組織キー
Connect をクリックします。CloudThinker が認証情報を検証し、Connected ステータスを表示します。
生成直後にトークンをコピーしてください。SonarQube は再表示しないため、紛失した場合は新しいトークンを作成する必要があります。

接続の詳細

フィールド説明
SONARQUBE_TOKEN認証用ユーザートークンsqu_xxxxx...
SONARQUBE_DEPLOYMENT_TYPEcloud または self_hostedcloud
SONARQUBE_ORG組織キー(Cloud のみ)my-org
SONARQUBE_URLサーバー URL(セルフホストのみ)https://sonarqube.your-domain.com

必要な権限

  • CloudThinker が分析するプロジェクトへの Browse 権限
  • スキャンをトリガーするための Execute Analysis 権限
最小権限の原則に従い、読み取り専用の分析には Browse 権限で十分です。CloudThinker が品質ゲートを管理したり新しいプロジェクトをオンボードする必要がある場合のみ、Administer と Create Projects を追加してください。

エージェントの機能

接続後、エージェントは SonarQube プロジェクト全体のコード品質データを照会できます。
機能説明
プロジェクトの参照組織内のすべてのプロジェクトを一覧表示・確認する
問題分析バグ、脆弱性、コードスメルを取得して分類する
品質ゲートプロジェクト全体の品質ゲートのステータスを確認する
セキュリティホットスポットセキュリティホットスポットをレビューして優先度を付ける
コード重複コード重複のメトリクスを分析する
コードメトリクスカバレッジ、複雑度、保守性評価を確認する

接続を確認する

@oliver list all SonarQube projects and report quality gate statuses

プロンプト例

@oliver analyze code quality metrics across all projects and #report quality gate statuses
@oliver review all security hotspots and categorize them by risk level
@oliver list all blocker and critical severity issues broken down by type

トラブルシューティング

トークンが正しくないか、期限切れか、または失効しています。トークンタイプが User Token であることを確認し、必要であれば新しいトークンを生成して接続を更新してください。
組織キーが正しくないか、アカウントがその組織のメンバーではありません。SonarQube Cloud の My Organizations でキーを確認し、メンバーシップを確認してください。
SonarQube の URL が間違っているか、CloudThinker からインスタンスに到達できません。URL を確認し、ファイアウォールルールを確認し、SonarQube サービスが稼働しているか確認してください。
トークンの所有者がプロジェクトへの Browse 権限を持っていません。プロジェクトの可視性設定(パブリックかプライベートか)を確認し、CloudThinker が分析すべきプロジェクトに Browse 権限を付与してください。

セキュリティ

  • 最小権限 — エージェントがユースケースに必要な権限のみを付与します。まず読み取り専用から始め、後から拡張してください。
  • デフォルトで読み取り専用 — エージェントにこの接続で変更を行わせる場合を除き、読み取り専用の認証情報を使用してください。
  • 認証情報のローテーション — 通常のスケジュールに従ってキーとトークンをローテーションしてください。接続を更新すると、CloudThinker が新しい値を自動的に取得します。
  • オフボーディング時に失効 — 接続を削除するか、チームメンバーが退職する際には、プロバイダー側で認証情報を無効化してください。
  • HTTPS のみ — セルフホストインスタンスでは常に HTTPS を使用して、転送中のトークンを保護してください。
  • ユーザートークンタイプ — グローバル分析トークンではなく User Token を使用して、CloudThinker が必要とする範囲にトークンのスコープを制限してください。

関連

https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/icons/elasticsearch.svg?fit=max&auto=format&n=aLd-ttc-SCW-aFky&q=85&s=c7389cfcd0bc8d303aeeb68bd19199ca

Elasticsearch 接続

コード品質ログを検索する
https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/icons/grafana.svg?fit=max&auto=format&n=aLd-ttc-SCW-aFky&q=85&s=c1329049025cd3c3a0909b400baef7be

Grafana 接続

コード品質メトリクスを可視化する