StarRocks MCP Server について
StarRocks MCP Serverは、データベースの確認やクエリ実行を通じてAIモデルをStarRocksに接続します。読み取り専用で使えるほか、書き込みを有効にするとテーブル作成やデータ変更も行えます。
主な機能
- 01SELECTクエリの実行
- 02データベースのテーブル一覧
- 03テーブルスキーマの確認
- 04書き込み可能時のテーブル作成
- 05書き込み可能時のINSERT、UPDATE、DELETE
活用シーン
- 01StarRocksデータのクエリ
- 02テーブルとスキーマの確認
- 03読み取り専用モードを無効にしてテーブルを作成
- 04読み取り専用モードを無効にして行データを変更
MCP 対応
MCPクライアントにStarRocksデータベースのクエリおよび管理ツールを公開します。読み取り専用モードではテーブル作成と書き込み操作が無効になります。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
StarRocks MCP サーバー
StarRocks データベースを操作するための Model Control Protocol(MCP)サーバーです。このサーバーは、定義済みのツール群を通じて AI モデルが StarRocks データベースにクエリを実行し、操作するための標準化されたインターフェースを提供します。
概要
StarRocks MCP サーバーを使用すると、AI モデルは次の操作を行えます。
- StarRocks データベースに SELECT クエリを実行する
- 利用可能なテーブルを一覧表示する
- テーブルスキーマを確認する
- 新しいテーブルを作成する(読み取り専用モードでない場合)
- INSERT、UPDATE、DELETE などの書き込み操作を実行する(読み取り専用モードでない場合)
インストール
前提条件
- Python 3.8+
- StarRocks データベースインスタンス
- SQLAlchemy
- MCP Python ライブラリ
ソースからインストール
git clone https://github.com/yourusername/mcp-server-starrocks.git
cd mcp-server-starrocks
pip install -e .
Smithery からインストール
npm install @smithery/sdk @modelcontextprotocol/sdk
MCP Inspector を使用する
npx @modelcontextprotocol/inspector uv --directory ~/mcp-server-starrocks run mcp-server-starrocks
使用方法
サーバーを起動する
python -m mcp_server_starrocks.server --host <starrocks-host> --port <starrocks-port> --user <username> --database <database-name> [--password <password>] [--readonly]
コマンドライン引数:
--host:StarRocks サーバーのホスト(必須)--port:StarRocks サーバーのポート(デフォルト:9030)--user:StarRocks のユーザー名(必須)--database:StarRocks のデータベース名(必須)--password:StarRocks のパスワード(必要な場合)--readonly:サーバーを読み取り専用モードで実行する(任意)
利用可能なツール
サーバーは次のツールを提供します。
読み取り専用ツール:
read-query:StarRocks データベースに SELECT クエリを実行するlist-tables:StarRocks データベース内のすべてのテーブルを一覧表示するdescribe-table:指定したテーブルのスキーマを確認する
書き込みツール(読み取り専用モードでない場合に利用可能):
write-query:INSERT、UPDATE、DELETE クエリを実行するcreate-table:StarRocks データベースに新しいテーブルを作成する
例
テーブルを一覧表示する
{
"name": "list-tables",
"arguments": {}
}
SELECT クエリを実行する
{
"name": "read-query",
"arguments": {
"query": "SELECT FROM my_table LIMIT 10"
}
}
テーブルを確認する
{
"name": "describe-table",
"arguments": {
"table_name": "my_table"
}
}
テーブルを作成する(読み取り専用モードでない場合)
{
"name": "create-table",
"arguments": {
"query": "CREATE TABLE new_table (id INT, name VARCHAR(100))"
}
}
ライセンス
コントリビューション
コントリビューションを歓迎します!お気軽にプルリクエストを送信してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。