StarRocks MCP Server
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| STARROCKS_DB | No | Default database to use if not specified in tool arguments or resource URIs | |
| STARROCKS_URL | No | A connection URL string that contains all connection parameters in a single variable. Format: [<schema>://]user:password@host:port/database | |
| STARROCKS_HOST | No | Hostname or IP address of the StarRocks FE service | localhost |
| STARROCKS_PORT | No | MySQL protocol port of the StarRocks FE service | 9030 |
| STARROCKS_USER | No | StarRocks username | root |
| MCP_TRANSPORT_MODE | No | Communication mode that specifies how the MCP Server exposes its services | stdio |
| STARROCKS_PASSWORD | No | StarRocks password | |
| STARROCKS_OVERVIEW_LIMIT | No | An approximate character limit for the total text generated by overview tools | 20000 |
| STARROCKS_MYSQL_AUTH_PLUGIN | No | Specifies the authentication plugin to use when connecting to the StarRocks FE service |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| read_queryA | Execute a SELECT query or commands that return a ResultSet. Set output_file to write the full result to disk instead of returning it inline (useful for large results).. Use set_session_db to set a per-session default database |
| write_queryA | Execute a DDL/DML or other StarRocks command that do not have a ResultSet. Use set_session_db to set a per-session default database |
| analyze_queryB | Analyze a query and get analyze result using query profile. Use set_session_db to set a per-session default database |
| collect_query_dump_and_profileB | Run a query to get it's query dump and profile, output very large, need special tools to do further processing |
| query_and_plotly_chartB | using sql |
| table_overviewA | Get an overview of a specific table: columns, sample rows (up to 3), and total row count. Uses cache unless refresh=true. Use set_session_db to set a per-session default database |
| db_summaryA | Quickly get summary of a database with tables' schema and size information. Use set_session_db to set a per-session default database |
| set_session_dbA | Set or clear the default database for THIS MCP session. Subsequent tool calls without an explicit |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| All Databases | List all databases in StarRocks |
TDQS
Scored across 8 tools
Each tool targets a distinct function: query execution, analysis, chart generation, schema summary, etc. There is slight overlap between read_query and query_and_plotly_chart, but their outputs differ (raw data vs chart), and descriptions clarify the distinction. No major confusion.
Tool names follow no consistent pattern: some are verb_noun (e.g., read_query), some are noun_verb (e.g., db_summary), some include conjunctions (query_and_plotly_chart), and verbs vary (analyze, collect, set, write). This inconsistency may confuse an agent trying to infer tool purposes from naming.
With 8 tools, the server is well-scoped for a database MCP server covering querying, analysis, schema browsing, and charting. Each tool serves a clear purpose without being excessive or minimal.
The tool set covers core database interactions: query (read and write), analysis, schema overview, and charting. A minor gap is the absence of a tool to list all databases, but db_summary and set_session_db partially address this. Overall, the surface is reasonably complete for the stated purpose.