rdb-mcp-server について
rdb-mcp-server は、Spring AI を基盤とする実験的なサーバーで、JDBC 経由で MySQL、PostgreSQL、SQLite を操作します。stdio で MCP クライアントにクエリと SQL 実行ツールを提供します。
主な機能
- 01JDBC による 3 種のデータベース接続
- 02読み取り専用 SQL クエリ
- 03パスワード保護付きの生 SQL 実行
- 04PreparedStatement によるパラメーター化 SQL
活用シーン
- 01MCP クライアントからの読み取り専用クエリ
- 02パラメーター化 SQL 操作の実行
- 03対応データベースへの保護された書き込み
MCP 対応
stdio トランスポートを使用し、MCP クライアントに SQL クエリおよび実行ツールを公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
rdb-mcp-server
JDBC を使用した低レベルの SQL 操作用に、Spring AI をベースとして開発された実験的な MCP サーバーです。
トランスポートの仕組みとして stdio を使用します。
プロジェクトのプロトタイプは AI によって生成されています。
対応データベース
- MySQL
- PostgreSQL
- SQLite
要件
- Java 17 以降
使用方法
インストール
GitHub のリリースページから JAR をダウンロードしてください。
設定
利用可能な環境変数:
DB_URL:データベース接続 URL(デフォルト:jdbc:sqlite:./sqlite.db)DB_USER:データベースのユーザー名DB_PASSWORD:データベースのパスワードAPI_PASSWORD:読み取り専用ではない操作に必要なパスワード(任意)LOG_FILE:ログファイルのパス(任意、デフォルト:./rdb-mcp-server.log)
単独で実行する
java -jar x.x.x.jar
MCP クライアントとの連携
Cline
{
"mcpServers": {
"rdb_mcp_server": {
"command": "java",
"args": [
"-jar",
"/path/to/jar"
],
"env": {
"DB_URL": "jdbc:mysql://localhost:3306/your_database",
"DB_USER": "your_username",
"DB_PASSWORD": "your_password",
"API_PASSWORD": "your_password_here",
"LOG_FILE": "./rdb-mcp-server.log"
},
"disabled": false,
"autoApprove": []
}
}
}
Cursor
{
"mcpServers": {
"rdb_mcp_server": {
"command": "java",
"args": [
"-jar",
"/path/to/jar"
],
"env": {
"DB_URL": "jdbc:mysql://localhost:3306/your_database",
"DB_USER": "your_username",
"DB_PASSWORD": "your_password",
"API_PASSWORD": "your_password_here",
"LOG_FILE": "./rdb-mcp-server.log"
}
}
}
}
利用可能なツール
executeQuery
読み取り専用の SQL クエリを実行します。認証は不要です。
SQL インジェクションの脆弱性があります。
executeRawSql
生の SQL 文を実行します。読み取り専用ではない操作にはパスワードが必要です。
executePreparedSql
PreparedStatement を使用して、パラメーター化された SQL 操作を実行します。
その他のリレーショナルデータベースの追加
適切なデータベースドライバーを pom.xml ファイルに追加し、再ビルドしてください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。