PostgreSQL MCP Server
PostgreSQLデータベースをAIから直接クエリ・スキーマ確認できるMCPサーバー。SQLを書かずに自然言語でデータを探索でき、開発中のデバッグやデータ確認作業を大幅に短縮できる。
- 最終確認:
- 2026-03-29
- ライセンス:
- MIT
設定方法
{
"mcpServers": {
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://localhost/mydb"]
}
}
}
{
"mcpServers": {
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://localhost/mydb"]
}
}
}
{
"mcpServers": {
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://localhost/mydb"]
}
}
}
概要
PostgreSQL MCP Serverは、Model Context Protocol(MCP)の公式リファレンス実装の一つです。PostgreSQLデータベースにAIクライアントから直接接続し、SQLクエリの実行やテーブルスキーマの確認ができます。
「このテーブルに今日追加されたレコードを全件取得して」「usersテーブルのスキーマを教えて」という自然言語の指示を、AIがSQLに変換して実行します。開発中のデータ確認やデバッグ作業をAIと一緒に進められるため、ターミナルでSQLを打つ往復作業が大幅に減ります。
導入手順
前提条件
- Node.js 18以上
- PostgreSQLサーバー(ローカルまたはリモート)が起動済みであること
- 接続ユーザーに対象DBへのアクセス権限があること
ステップ
- PostgreSQL接続URLを確認する(例:
postgresql://user:password@localhost:5432/mydb) - ページ上部のタブから使用環境(Claude Desktop / Cursor / Cline)を選択し、JSON設定をコピー
postgresql://localhost/mydbを実際の接続URLに置き換え- コピーしたJSONを設定ファイル(claude_desktop_config.json など)に追記して保存
- クライアントを再起動
使い方の例
「usersテーブルのカラム一覧とデータ型を教えて」
「直近24時間以内に登録されたユーザーを10件取得して」
「ordersテーブルで金額が10万円を超える注文を集計して、月別にまとめて」
注意事項
- 接続URLにパスワードが含まれる場合は、設定ファイルをソースコードに含めないよう注意してください。環境変数や
.envファイルで管理し、.gitignoreに追加してください。 - 本MCPサーバーはデータの読み取りだけでなくINSERT/UPDATE/DELETEも実行できます。本番DBへ接続する場合は読み取り専用ユーザーを使用することを強く推奨します。
- テーブル数が多いDBでは、スキーマ取得に時間がかかる場合があります。必要なスキーマだけを指定する使い方が効果的です。
主なユースケース
- 自然言語でSQLクエリを生成・実行し、開発中のデータ確認を即時に行う
- テーブルスキーマやインデックス構成をAIに読み取らせ、設計レビューを依頼する
- パフォーマンスボトルネックの原因となるクエリをAIが特定・改善案を提示する
- マイグレーション前後のデータ整合性チェックをAIに任せる
プラットフォーム別の注意事項
- Windows:接続URLは `postgresql://username:password@localhost:5432/mydb` の形式で指定してください。パスの区切りはスラッシュのまま使用可能です。
- プロキシ環境:DB接続はTCP直接のため、HTTPプロキシ設定は不要です。ただしリモートDBへのポート開放が必要な場合があります。