ネオンMCPサーバー
Neon MCP Server は、 自然言語で Neon Postgres データベースと対話できるオープンソース ツールです。
モデルコンテキストプロトコル(MCP)は、大規模言語モデル(LLM)と外部システム間のコンテキストを管理するために設計された新しい標準化プロトコルです。このリポジトリには、 Neon用のインストーラーとMCPサーバーが含まれています。
NeonのMCPサーバーは、自然言語リクエストとNeon API間の橋渡しとして機能します。MCP上に構築されたこのサーバーは、リクエストを必要なAPI呼び出しに変換し、プロジェクトやブランチの作成、クエリの実行、データベースの移行といったタスクをシームレスに管理できるようにします。
Neon MCP サーバーの主な機能は次のとおりです。
**自然言語によるインタラクション:**直感的な会話型コマンドを使用して Neon データベースを管理します。
簡素化されたデータベース管理: SQL を記述したり、Neon API を直接使用したりすることなく、複雑なアクションを実行します。
**開発者以外のユーザーもアクセス可能:**さまざまな技術的背景を持つユーザーが Neon データベースを操作できるようにします。
**データベース移行のサポート:**自然言語で開始されたデータベース スキーマの変更に Neon の分岐機能を活用します。
たとえば、Claude Desktop または任意の MCP クライアントでは、自然言語を使用して、次のようなことを Neon で実行できます。
Let's create a new Postgres database, and call it "my-database". Let's then create a table called users with the following columns: id, name, email, and password.I want to run a migration on my project called "my-project" that alters the users table to add a new column called "created_at".Can you give me a summary of all of my Neon projects and what data is in each one?
[!注記]
Neon MCPサーバーは、自然言語リクエストを通じて強力なデータベース管理機能を提供します。LLMによって要求されたアクションは、実行前に必ず確認し、承認してください。承認されたユーザーとアプリケーションのみがNeon MCPサーバーとNeon APIキーにアクセスできるようにしてください。
Neon MCPサーバーの設定
MCP クライアントを Neon に接続するには、次の 2 つのオプションがあります。
リモートMCPサーバー(プレビュー): OAuth認証を使用して、Neonが管理するMCPサーバーに接続します。この方法はAPIキーの管理が不要で、より便利です。さらに、最新の機能や改善がリリースされるとすぐに自動的に通知されます。
ローカル MCP サーバー: Neon API キーで認証して、マシン上でローカルに Neon MCP サーバーを実行します。
Related MCP server: Neo4j MCP Clients & Servers
前提条件
MCP クライアント アプリケーション。
Node.js (>= v18.0.0) および npm: nodejs.orgからダウンロードします。
ローカルMCPサーバーのセットアップには、Neon APIキーも必要です。生成手順については、 Neon APIキーのドキュメントをご覧ください。
オプション 1. リモート ホスト MCP サーバー (プレビュー)
OAuth認証を使用して、NeonのマネージドMCPサーバーに接続します。これは最も簡単な設定で、サーバーのローカルインストールは不要で、クライアントでNeon APIキーを設定する必要もありません。
クライアントの MCP サーバー構成ファイル (例:
mcp.json、mcp_config.json) に次の「Neon」エントリを追加します。{ "mcpServers": { "Neon": { "command": "npx", "args": ["-y", "mcp-remote", "https://mcp.neon.tech/sse"] } } }設定ファイルを保存します。
MCP クライアントを再起動または更新します。
ブラウザにOAuthウィンドウが開きます。指示に従って、MCPクライアントがNeonアカウントにアクセスできるように承認してください。
オプション2. ローカルMCPサーバー
ローカル マシンで Neon MCP サーバーを実行します。
Smithery 経由のセットアップ:
Neon APIキーの入力を求められます。前提条件セクションで取得したAPIキーを入力してください。 <client_name> MCPクライアントアプリケーションの名前に置き換えてください。サポートされているクライアント名は次のとおりです。
クロードデスクトップの
claudeCursor用の
cursor(smithery経由でインストールすると、MCP サーバーが Cursor のグローバル MCP サーバーになります)Windsurf Editorの
windsurfRoo Cline VS Code 拡張機能の
roo-clineウィッツィーのための
witsyEnconvoの
enconvoVisual Studio Code用の
vscode(プレビュー)
インストール後に MCP クライアントを再起動します。
npm経由でセットアップ
MCP クライアントがここにリストされていない場合は、クライアントのmcp_configファイルに Neon MCP サーバーの詳細を手動で追加できます。
クライアントのmcp_configファイルのmcpServersセクション内に次の JSON 構成を追加し、 <YOUR_NEON_API_KEY>実際の Neon API キーに置き換えます。
トラブルシューティング
クライアントが MCP サーバーの構成にJSONを使用していない場合は (古いバージョンの Cursor など)、プロンプトが表示されたときに次のコマンドを使用できます。
Windowsでのトラブルシューティング
Windowsをご利用で、MCPサーバーの追加中に問題が発生した場合、コマンドプロンプト( cmd )またはWindows Subsystem for Linux( wsl )を使用して必要なコマンドを実行する必要がある場合があります。設定は以下のようになります。
ガイド
特徴
サポートされているツール
Neon MCPサーバーは、MCPクライアントに「ツール」として公開される以下のアクションを提供します。これらのツールを使用することで、自然言語コマンドを使用してNeonプロジェクトやデータベースを操作できます。
プロジェクト管理:
list_projects: Neonプロジェクトのリストを取得し、Neonアカウントに関連付けられた各プロジェクトの概要を表示します。返されるプロジェクトの数を制限できます(デフォルト:10)。describe_project: 特定の Neon プロジェクトの ID、名前、関連するブランチやデータベースなどの詳細情報を取得します。create_project: Neonアカウントに新しいNeonプロジェクトを作成します。プロジェクトは、ブランチ、データベース、ロール、コンピューティングのコンテナとして機能します。delete_project: 既存の Neon プロジェクトとそれに関連付けられたすべてのリソースを削除します。
支店管理:
create_branch: 指定された Neon プロジェクト内に新しいブランチを作成します。開発、テスト、移行にNeon のブランチ機能を活用します。delete_branch: Neon プロジェクトから既存のブランチを削除します。describe_branch: 特定のブランチの名前、ID、親ブランチなどの詳細を取得します。list_branch_computes: コンピューティング ID、タイプ、サイズ、自動スケーリング情報など、プロジェクトまたは特定のブランチのコンピューティング エンドポイントを一覧表示します。
SQLクエリ実行:
get_connection_string: データベース接続文字列を返します。run_sql: 指定されたNeonデータベースに対して単一のSQLクエリを実行します。読み取りと書き込みの両方の操作をサポートします。run_sql_transaction: Neon データベースに対して、単一のトランザクション内で一連の SQL クエリを実行します。get_database_tables: 指定された Neon データベース内のすべてのテーブルを一覧表示します。describe_table_schema: 特定のテーブルのスキーマ定義を取得し、列、データ型、制約の詳細を示します。list_slow_queries: データベース内で最も遅いクエリを見つけることで、パフォーマンスのボトルネックを特定します。pg_stat_statements 拡張機能が必要です。
データベースの移行 (スキーマの変更):
prepare_database_migration: データベース移行プロセスを開始します。重要なのは、メインブランチに影響を与える前に、移行を安全に適用してテストするための一時ブランチを作成することです。complete_database_migration: 準備済みのデータベース移行を完了し、メインブランチに適用します。このアクションは、一時的な移行ブランチからの変更をマージし、一時的なリソースをクリーンアップします。
クエリパフォーマンスのチューニング:
explain_sql_statement: SQL クエリを分析し、クエリのパフォーマンスを理解するのに役立つ詳細な実行プラン情報を返します。prepare_query_tuning: SQLクエリの潜在的なパフォーマンス問題を特定し、最適化を提案します。改善をテストするための一時ブランチを作成します。complete_query_tuning: テスト後にクエリの最適化を確定し、適用します。一時的なチューニングブランチからメインブランチに変更をマージします。
ネオン認証:
provision_neon_auth: NeonプロジェクトにNeon Authをプロビジョニングするアクション。開発者はStack Auth (@stackframe/stack)との統合を作成することで、認証インフラストラクチャを簡単にセットアップできます。
移行
マイグレーションは、データベーススキーマへの変更を時間の経過とともに管理する方法です。Neon MCPサーバーでは、LLMは「開始」( prepare_database_migration )コマンドと「コミット」( complete_database_migration )コマンドを別々に実行することで、安全にマイグレーションを実行できます。
「Start」コマンドはマイグレーションを受け取り、新しい一時ブランチで実行します。コマンドが戻ると、LLMにこのブランチでマイグレーションをテストする必要があることを通知します。LLMはその後、「Commit」コマンドを実行し、マイグレーションを元のブランチに適用します。
発達
MCP CLI クライアントを使用した開発
MCPサーバーで反復処理を行う最も簡単な方法はmcp-client/を使用することです。詳細についてはmcp-client/README.mdを参照してください。
Claude Desktop(ローカルMCPサーバー)を使用した開発
その後、変更をテストするたびにClaude を再起動します。
テスト
テストを実行するには、 .env.exampleファイルに従って.envファイルを設定する必要があります。