hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Enables CRUD operations on Postgres tables, including querying data with filters, inserting data, updating data, deleting data, and listing tables in a Supabase project.
Supabase MCP サーバー
Claude や他の LLM が Supabase と対話して Postgres テーブルで CRUD 操作を実行できるようにする Model Context Protocol (MCP) サーバー。
特徴
- データベース操作:
- フィルターを使用してデータをクエリする
- データを挿入する
- データを更新する
- データを削除する
- テーブルの一覧
前提条件
- Node.js (v16以降)
- npmまたはyarn
- APIキー付きのSupabaseプロジェクト
インストール
オプション1: npmからインストールする(推奨)
パッケージはnpmで公開されています。以下のコマンドでグローバルインストールできます。
またはプロジェクト内でローカルに:
オプション2: リポジトリをクローンする
構成
Supabase の資格情報を使用して.env
ファイルを作成します。
クロードとの使用
Claude は互換性のために特定のトランスポートモードを必要とします。このパッケージは、Claude との統合専用のバイナリを提供します。
クロードデスクトップMCP構成
設定で必要な環境変数が設定されていることを確認してください。Claude は通信に stdio トランスポートを使用します。
Claude Binaryによる手動テスト
Claude の外部でテストする場合は、以下を実行できます。
またはグローバルにインストールされている場合:
スタンドアロンサーバーとしての使用
グローバルにインストールした後:
これにより、http://localhost:3000 (または .env ファイルで指定されたポート) で MCP サーバーが起動します。
コード内での使用
独自の Node.js プロジェクトで supabase-mcp をライブラリとして使用することもできます。
トラブルシューティング
よくある問題と解決策
1. 「ポート XXXX はすでに使用されています」
HTTPサーバーは利用可能なポートを自動的に検索します。.env .env
でMCP_SERVER_PORT
値を変更することで、別のポートを手動で指定できます。
2.「必要な環境変数が見つかりません」
必要なすべての値を含む適切な.env
ファイルがあること、またはシステムに環境変数が設定されていることを確認してください。
3. 「TypeError: クラスコンストラクタ Server は 'new' なしでは呼び出せません」
このエラーが表示された場合は、古いバージョンのパッケージを実行している可能性があります。最新バージョンに更新してください。
4. ClaudeによるJSON解析エラー
通常の HTTP サーバー ( supabase-mcp
) ではなく、Claude 固有のバイナリ ( supabase-mcp-claude
) を使用していることを確認してください。
5. クロードとのリクエストがタイムアウトしました
これは通常、Claude が接続を開始したが、サーバーが時間内に応答できなかったことを意味します。以下の点を確認してください。
- Supabase の資格情報は正しいですか?
- サーバーは適切にセットアップされ、稼働していますか?
- 接続をブロックするものはありますか?
ツールリファレンス
データベースツール
- クエリデータベース
- パラメータ:
table
(文字列): クエリするテーブルの名前select
(文字列、オプション): カンマ区切りの列リスト (デフォルト: "*")query
(オブジェクト、オプション): フィルター条件
- パラメータ:
- 挿入データ
- パラメータ:
table
(文字列): テーブルの名前data
(オブジェクトまたはオブジェクトの配列):挿入するデータ
- パラメータ:
- 更新データ
- パラメータ:
table
(文字列): テーブルの名前data
(オブジェクト): キーと値のペアとして更新するデータquery
(オブジェクト):更新のフィルター条件
- パラメータ:
- データを削除
- パラメータ:
table
(文字列): テーブルの名前query
(オブジェクト):削除のフィルター条件
- パラメータ:
- リストテーブル
- パラメータ: なし
バージョン履歴
- 1.0.0: 初回リリース
- 1.0.1: 自動ポート選択を追加
- 1.0.2: プロトコル互換性の問題を修正
- 1.0.3: JSON-RPCサポートを追加
- 1.1.0: 公式MCP SDKを使用して完全に書き直しました
- 1.2.0: 独立したClaudeトランスポートを追加し、ポート競合の問題を修正しました
- 1.3.0: TypeScriptプロジェクトとの互換性を向上させるために更新されました
- 1.4.0: Supabaseコミュニティのベストプラクティスに基づいてClaude stdioトランスポート統合を修正しました
- 1.5.0: 安定性を向上させ、データベース操作に重点を置くために、Edge Function のサポートを削除しました。
ライセンス
マサチューセッツ工科大学
This server cannot be installed
Claude や他の LLM が自然言語を通じてデータベース操作を実行し、Supabase 内でエッジ関数を呼び出すことができるようにするモデル コンテキスト プロトコル サーバー。