mcp-psycopg2 について
mcp-psycopg2は、psycopg2のPostgreSQLアダプター機能をMCP サーバーとして提供し、クライアントからデータベースを操作できます。トランザクション、カーソル、COPY、型登録、大型オブジェクトなどに対応します。
主な機能
- 01データベース接続とトランザクションの管理
- 02SQL実行と結果の取得
- 03パラメーター付きSQLの作成
- 04JSON、hstore、複合型の登録
- 05COPYと大型オブジェクトの操作
- 06サーバーとセッション情報の確認
活用シーン
- 01クライアントからPostgreSQLクエリを実行
- 02トランザクションを制御して結果を順次取得
- 03テーブルデータを一括インポートまたはエクスポート
MCP 対応
MCP サーバーとして、PostgreSQLへの接続、クエリ実行、トランザクション管理、データ操作のためのpsycopg2ツールをMCPクライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ツール一覧はまだ取得されていません
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
mcp-psycopg2
psycopg2 PostgreSQL データベースアダプターの機能を公開する MCP サーバーです。
mcp-name: io.github.daedalus/mcp-psycopg2
インストール
pip install mcp-psycopg2
使い方
from mcp_psycopg2 import mcp
# Run the MCP server
mcp.run()
MCP ツール
このサーバーは、PostgreSQL データベースと連携するための以下のツールを公開します。
接続管理
connect- 新しいデータベース接続を作成しますclose_connection- 既存の接続を閉じますget_connection_info- 接続の詳細を取得します
トランザクション管理
begin_transaction- 新しいトランザクションを開始しますcommit_transaction- 現在のトランザクションをコミットしますrollback_transaction- 現在のトランザクションをロールバックしますset_isolation_level- トランザクションの分離レベルを設定します
カーソル操作
create_cursor- 新しいカーソルを作成しますclose_cursor- カーソルを閉じますexecute_query- SQL クエリを実行しますexecute_many- 複数のパラメーターセットを使ってクエリを実行しますfetch_one- 1 行を取得しますfetch_many- 複数の行を取得しますfetch_all- 残りのすべての行を取得します
SQL の組み立て
quote_identifier- SQL 識別子を引用符で囲みますmogrify- パラメーターをバインドした後のクエリー文字列を返します
型の登録
register_json- JSON 型アダプターを登録しますregister_hstore- hstore 型アダプターを登録しますregister_composite- 複合型アダプターを登録します
COPY 操作
copy_from- ファイルからテーブルにデータをコピーしますcopy_to- テーブルからファイルにデータをコピーしますcopy_expert- カスタム COPY ステートメントを実行します
サーバーサイドカーソル
create_named_cursor- サーバーサイドの名前付きカーソルを作成しますscroll_cursor- カーソルの結果をスクロールします
ラージオブジェクト
create_large_object- ラージオブジェクトを作成または開きますread_large_object- ラージオブジェクトから読み取りますwrite_large_object- ラージオブジェクトに書き込みます
情報
get_server_version- PostgreSQL サーバーのバージョンを取得しますget_backend_pid- バックエンドプロセス ID を取得しますget_dsn_parameters- 接続パラメーターを取得しますget_notices- データベースの通知を取得しますparse_dsn- 接続文字列を解析しますmake_dsn- 接続文字列を作成します
ユーティリティ
cancel_query- 現在のデータベース操作をキャンセルしますset_session- セッションパラメーターを設定しますlist_connections- すべてのアクティブな接続を一覧表示しますlist_cursors- すべてのアクティブなカーソルを一覧表示します
開発
git clone https://github.com/daedalus/mcp-psycopg2.git
cd mcp-psycopg2
pip install -e ".[test]"
# run tests
pytest
# format
ruff format src/ tests/
# lint
ruff check src/ tests/
# type check
mypy src/
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。