データベースのクエリが遅い。原因を調べるためにクエリログを開き、実行計画を確認し、インデックスの設計を見直す——この一連の作業をAIに丸ごと任せられるとしたらどうでしょうか。

PlanetScaleが公開したMCPサーバーを使えば、Claude、Cursor、VS CodeなどのAIツールからデータベースのスキーマやクエリパフォーマンスに直接アクセスできます。手動での分析作業を大幅に減らせる仕組みです。

この記事でわかること

  • PlanetScale MCPサーバーの概要と仕組み
  • AIエージェントがデータベース最適化に使える具体的なツール群
  • セキュリティ面の設計と安全にクエリを実行する仕組み
  • Insights専用モードの使いどころ
  • セットアップ手順

PlanetScale MCPサーバーとは

https://planetscale.com/docs/connect/mcp

PlanetScale MCPサーバーは、PlanetScaleが提供するホスト型のMCP(Model Context Protocol)サーバーです。PlanetScaleのデータベースに関する情報——組織、データベース一覧、ブランチ、スキーマ、クエリパフォーマンスデータ——をAIツールに公開します。

MCPはAnthropicが策定したプロトコルで、AIモデルと外部ツールを接続するための標準規格です。このプロトコルに対応したAIツールであれば、PlanetScaleのMCPサーバーに接続してデータベースの情報を取得・操作できます。

認証にはOAuthを採用しており、どの組織・データベース・ブランチにアクセスを許可するかを細かく制御できます。読み取り専用とフルアクセスの切り替えも可能です。

対応ツールはClaude(デスクトップ版・Claude Code)、Cursor、VS Code、OpenCode、Gemini CLI、Codex CLI、Amp CLI、Notionなど幅広く、MCP対応クライアントであれば基本的に接続できます。

AIエージェントが使えるツール群

MCPサーバーが公開するツールは大きく3つの領域に分かれます。

パフォーマンス分析として、get_insightsツールがあります。PlanetScale Insightsのクエリパフォーマンスデータにアクセスし、遅いクエリの特定やパターン分析ができます。「昨日と今日のクエリパターンの違いを説明して」「過去24時間で最も遅いクエリを分析して」といった自然言語での指示が可能です。

データベース構造の把握には、組織・データベース・ブランチの一覧取得やスキーマ取得のツールが用意されています。AIがテーブル構成やインデックスの状態を把握したうえで、改善提案を出せる仕組みです。PlanetScaleのドキュメントを検索するsearch_documentationツールもあり、設定方法やベストプラクティスの参照もAI側で完結します。

クエリ実行は、権限を付与した場合のみ利用できます。読み取りクエリ用のexecute_read_queryと書き込みクエリ用のexecute_write_queryの2種類があり、日次のサインアップ数やアクティブユーザー数といった指標をSQLなしで自然言語から取得できます。

本番環境でも安心できるセキュリティ設計

AIにデータベースへのアクセスを渡すとなると、セキュリティが最大の懸念点です。PlanetScale MCPサーバーは複数の保護レイヤーを備えています。

まず、クエリ実行のたびに短命の認証情報(エフェメラル認証情報)を生成し、実行後すぐに削除します。認証情報が残り続けるリスクがありません。

読み取りクエリはレプリカが設定されている場合、自動的にレプリカへルーティングされます。本番のプライマリに負荷をかけずに分析できます。

破壊的なクエリに対する保護も組み込まれています。WHERE句のないUPDATEDELETEはブロックされ、TRUNCATEは実行できません。スキーマ変更を伴うDDL(CREATEDROPALTERなど)は、AIが人間に確認を求めてから実行する仕組みです。

すべてのクエリにはsource=planetscale-mcpというSQLコメントが自動付与されます。PlanetScale Insightsでフィルタリングすれば、MCPサーバー経由のクエリだけを追跡できます。

Insights専用モードという選択肢

2026年4月、PlanetScaleはInsights専用のMCPサーバーを追加しました。サーバーURLはhttps://mcp.pscale.dev/mcp/planetscale-insights-onlyです。

このモードではクエリ実行ツール(execute_read_queryexecute_write_query)が除外されています。AIエージェントにクエリパフォーマンスの分析とスキーマ改善の提案だけを任せたい場合に適しています。

想定されるワークフローは、AIエージェントがInsightsデータを定期的にレビューし、パフォーマンス改善のプルリクエストを自動で作成するような運用です。PlanetScaleはこれを「self-improving database(自己改善するデータベース)」と呼んでいます。クエリ実行権限を与えずに済むため、より安全にAIを組み込めます。

セットアップ手順

接続先のサーバーURLはhttps://mcp.pscale.dev/mcp/planetscaleです。主要なツールへの設定方法を紹介します。

Cursorの場合は、.cursor/mcp.jsonに以下を追加します。

{
  "mcpServers": {
    "planetscale": {
      "url": "https://mcp.pscale.dev/mcp/planetscale"
    }
  }
}

保存後にCursorが認証プロンプトを表示するので、PlanetScaleアカウントへのアクセスを許可します。

Claude Codeの場合は、ターミナルから以下のコマンドで追加できます。

claude mcp add planetscale --transport http https://mcp.pscale.dev/mcp/planetscale

VS Codeの場合は、コマンドパレットから「MCP: Add Server」を選び、HTTPタイプで上記URLを入力します。サーバー起動後にOAuth認証フローが始まります。

いずれの場合も、初回接続時にPlanetScaleのOAuth画面でアクセス範囲を設定します。本番環境には読み取り専用アクセスを推奨します。

手動最適化からの脱却

データベースのパフォーマンス改善は、これまで経験豊富なエンジニアが時間をかけて行う作業でした。PlanetScale MCPサーバーは、その作業の大部分をAIエージェントに委ねる道を開きます。スキーマの理解、クエリパターンの分析、インデックスの提案——これらをAIが本番データの文脈を持ったまま実行できる点が、汎用的なAIアシスタントとの違いです。

Insights専用モードの追加により、クエリ実行権限を渡さない安全な運用も可能になりました。まずはInsights専用モードから始めて、AIによるDB最適化の効果を確かめてみてはいかがでしょうか。