Database MCP Servers Setup Guide について
AWSユーザー向けに、5種類のデータベースサービス用MCPサーバーを設定し、Amazon Bedrockモデルと利用する手順をまとめたガイドです。認証情報の設定、接続検証、構築、テストとセキュリティ上の注意を扱います。
主な機能
- 015種類のAWSデータベース向けサーバー設定
- 02データベース認証情報の設定
- 03データベース接続の検証
- 04MCPサーバーの導入と設定
- 05サーバー動作のテスト
- 06セキュリティ上の注意の確認
活用シーン
- 01Amazon Bedrock向けデータベースMCPサーバーの準備
- 02構築前のデータベース接続確認
- 03設定済みMCPサービスのテスト
MCP 対応
Amazon RDS MySQL、Amazon DocumentDB、Amazon DynamoDB、Amazon Redshift、Amazon ElastiCache Redis向けのMCPサーバー構築を案内します。設定したサーバーはMCP経由でAmazon Bedrockモデルと利用できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
データベース MCP サーバーのセットアップガイド
このガイドでは、Amazon Bedrock モデルで使用するために、さまざまな AWS データベースサービス向けの Model Context Protocol(MCP)サーバーをセットアップする方法を説明します。
対応データベース
- Amazon RDS MySQL:SQL データベースサービス
- Amazon DocumentDB:MongoDB 互換のドキュメントデータベース
- Amazon DynamoDB:NoSQL のキー値・ドキュメントデータベース
- Amazon Redshift:データウェアハウスサービス
- Amazon ElastiCache Redis:インメモリーデータストア
前提条件
MCP サーバーをセットアップする前に、以下を用意してください。
- AWS サービスへのアクセス権と適切な権限
- 作成済みでアクセス可能なデータベースインスタンス
- Node.js と npm のインストール
- Python 3 のインストール
- Git のインストール
- Docker のインストール(任意。コンテナ化された MCP サーバー用)
以下を使用して、前提条件を確認し、インストールできます。
chmod +x check_prerequisites.sh
./check_prerequisites.sh
セットアップ手順
1. データベース認証情報の設定
データベースの接続情報を含む認証情報ファイルを作成します。
cp db_credentials_template.sh set_db_credentials.sh
set_db_credentials.sh を編集し、実際のデータベース認証情報を入力します。
2. データベース接続の検証
MCP サーバーをセットアップする前に、データベース接続が機能することを検証します。
chmod +x validate_db_connections.sh
source ./set_db_credentials.sh
./validate_db_connections.sh
このスクリプトは、設定済みのすべてのデータベースへの接続をテストし、問題があれば報告します。
3. MCP サーバーのセットアップ
セキュアなセットアップスクリプトを実行して、すべてのデータベース MCP サーバーをインストールし、設定します。
chmod +x setup_db_mcp_servers_secure.sh
./setup_db_mcp_servers_secure.sh
このスクリプトは以下を実行します。
- 必要なリポジトリをクローンします
- 必要なコンポーネントをビルドします
- MCP 設定を更新します
- MCP サービスを再起動します
4. MCP サーバーのテスト
セットアップ後、すべての MCP サーバーが正しく動作することをテストします。
chmod +x test_mcp_servers.sh
./test_mcp_servers.sh
使用例
MCP サーバーのセットアップが完了すると、MCP フレームワークを通じて Amazon Bedrock モデルで使用できます。プロンプトの例を以下に示します。
MySQL
Show me all tables in the MySQL database.
Run a query to select the first 10 rows from the customers table.
What are the column names and data types in the orders table?
MongoDB/DocumentDB
List all collections in the MongoDB database.
Find documents in the users collection where age is greater than 30.
Show me the schema of the products collection.
DynamoDB
List all tables in DynamoDB.
Get items from the Orders table where CustomerId equals 'CUST001'.
What are the primary key attributes for the Products table?
Redshift
Show me all tables in the Redshift database.
Run a query to analyze sales data by region.
Explain the schema of the customer_transactions table.
Redis
Get all keys in Redis.
What is the value of the key 'session:user123'?
Show me all members of the set 'active_users'.
セキュリティに関する考慮事項
- 認証情報をバージョン管理にコミットしないでください
- 認証情報の管理には AWS Secrets Manager または Parameter Store の使用を検討してください
- 可能な場合は、アクセスキーではなく IAM ロールを使用してください
- データベースユーザーには最小権限のアクセスを実装してください
- MCP サーバーの設定で、適切な読み取り/書き込み権限を設定してください
トラブルシューティング
問題が発生した場合は、以下を確認してください。
logsディレクトリ内のログを確認します- 検証スクリプトを使用してデータベースへの接続を確認します
- 必要な環境変数がすべて設定されていることを確認します
- MCP サービスが実行中であることを確認します(
http://127.0.0.1:7002) - Chatbot UI にアクセスできることを確認します(
http://localhost:8502)
追加リソース
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。