LogoMCP Store
icon of StarRocks MCP Server

StarRocks MCP Server

StarRocks MCP Server provides a standardized interface for AI models to query and manipulate StarRocks databases through defined tools.

Introduction

StarRocks MCP Server

A Model Control Protocol (MCP) server for interacting with StarRocks databases. This server provides a standardized interface for AI models to query and manipulate StarRocks databases through a set of defined tools.

Overview

The StarRocks MCP Server allows AI models to:

  • Execute SELECT queries on StarRocks databases
  • List available tables
  • Describe table schemas
  • Create new tables (when not in read-only mode)
  • Execute write operations like INSERT, UPDATE, DELETE (when not in read-only mode)
Installation
Prerequisites
  • Python 3.8+
  • StarRocks database instance
  • SQLAlchemy
  • MCP Python library
Install from source
git clone https://github.com/yourusername/mcp-server-starrocks.git
cd mcp-server-starrocks
pip install -e .
Install from Smithery

npm install @smithery/sdk @modelcontextprotocol/sdk

Using MCP Inspector

npx @modelcontextprotocol/inspector uv --directory ~/mcp-server-starrocks run mcp-server-starrocks

Usage
Starting the server
python -m mcp_server_starrocks.server --host <starrocks-host> --port <starrocks-port> --user <username> --database <database-name> [--password <password>] [--readonly]

Command-line arguments:

  • --host: StarRocks server host (required)
  • --port: StarRocks server port (default: 9030)
  • --user: StarRocks username (required)
  • --database: StarRocks database name (required)
  • --password: StarRocks password (if required)
  • --readonly: Run the server in read-only mode (optional)
Available Tools

The server provides the following tools:

Read-only tools:

  • read-query: Execute a SELECT query on the StarRocks database
  • list-tables: List all tables in the StarRocks database
  • describe-table: Describe the schema of a specific table

Write tools (available when not in read-only mode):

  • write-query: Execute an INSERT, UPDATE, or DELETE query
  • create-table: Create a new table in the StarRocks database
Examples
Listing tables
{
    "name": "list-tables",
    "arguments": {}
}
Executing a SELECT query
{
    "name": "read-query",
    "arguments": {
        "query": "SELECT FROM my_table LIMIT 10"
    }
}
Describing a table
{
    "name": "describe-table",
    "arguments": {
        "table_name": "my_table"
    }
}
Creating a table (when not in read-only mode)
{
    "name": "create-table",
    "arguments": {
        "query": "CREATE TABLE new_table (id INT, name VARCHAR(100))"
    }
}
License

MIT License

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Information

Newsletter

Join the Community

Subscribe to our newsletter for the latest news and updates