エージェント向け

MCP サーバー

ローカルは stdio、リモートは HTTP。いつも話しているアシスタントが、データベース作業を説明するのではなく実行します。

01

これは何か

@capydb/mcp として公開されている Model Context Protocol サーバーです。ローカルでは stdio、リモートでは https://mcp.capydb.dev/mcp で Streamable HTTP を使って動き、ダッシュボードや CLI と同じコントロールプレーン API を、同じ組織スコープ・同じ権限・同じ監査証跡で呼び出します。

実行時に SDK へ依存せず手書きのクライアントを同梱しているため、インストールは小さく、起動は一瞬です。

02

リモートサーバー

Web・デスクトップ・モバイルの Claude、そしてリモート MCP サーバーに対応したクライアントは https://mcp.capydb.dev/mcp に接続します。インストールもキーの貼り付けも不要です。ツールが初めてアカウントを必要としたときに、クライアントがブラウザで CapyDB のサインインへ案内し、そこで利用を許可するワークスペースを選びます。使い捨てのエフェメラルデータベースはサインイン前から使えます。

接続の実体はエージェント用 API キーで、設定 → API キーに表示され、いつでも失効できます。有効期限は 90 日で、その後クライアントが再接続を求めます。Claude Code では、下のコマンドで同じ URL を追加します。

claude mcp add --transport http capydb https://mcp.capydb.dev/mcp

03

ローカルにインストール

任意の MCP クライアントのサーバー設定に追加してください。認証はサーバー自身が処理します。キーなしで最初に使うと、ブラウザーで承認するためのデバイスログイン URL を返します。

{
  "mcpServers": {
    "capydb": {
      "command": "npx",
      "args": ["-y", "@capydb/mcp"],
      "env": { "CAPYDB_API_KEY": "capy_live_..." }
    }
  }
}

04

クライアント

  • -リモートサーバー経由の Web・デスクトップ・モバイルの Claude、リモートまたはローカルの Claude Code
  • -Cursor、Windsurf、その他 MCP に対応するエディター
  • -stdio または Streamable HTTP で Model Context Protocol を実装するあらゆるクライアント。サーバーは現行と旧来の両方のプロトコル版を提供します
  • -任意の MCP SDK を使った自作エージェント

05

ツールの守備範囲

  • -プロジェクト:一覧、作成、参照。引き継ぎも破棄もできる使い捨てのエフェメラルデータベース
  • -接続:直接/プールの接続文字列と K/V ストアの認証情報の取得
  • -SQL:読み取り専用のクエリと、別ツールとしてデータを変更する文を実行し、結果を構造化 JSON で返却
  • -スキーマ:テーブル、カラム、インデックス、拡張機能の確認
  • -プレビュー:プレビュー用データベースの作成、一覧、リセット、削除
  • -バックアップ:バックアップの作成と一覧、ダンプのエクスポート、復元ポイント作成、プレビューへの復元
  • -インポート:他事業者からのインポートの開始と追跡
  • -運用:使用量、ログ、オブザーバビリティ、アラート、ジョブ、インデックスの提案

06

安全性

読み取り専用ツールは読み取り専用と、破壊的ツールは破壊的と自己申告するので、クライアント側で制御できます。WHERE のない UPDATE や DELETE、および TRUNCATE は制御プレーンが実行前に拒否し、拒否メッセージが呼び出しの直し方をエージェントに伝えます。MCP サーバーがこのチェックを外すことはありません。それより危険な操作については、ツールの説明が先に復元ポイントを作成するようエージェントに指示します。

本番データベースへの上書き復元は、意図的にツールとして公開していません。エージェントはプレビューへ復元でき、昇格は人の手で行います。エージェントの一存で本番データが上書きされることはありません。

07

診断

サーバーが自分について語ることはすべて標準エラー出力に出ます。標準出力はプロトコルの通り道だからです。クライアントのツール一覧が空なら、答えはほぼ常にサーバーではなくクライアントの MCP ログにあります。