StarRocks
официальныйВзаимодействие со StarRocks
Что можно делать с Star Rocks MCP?
- Выполнение read-only SQL-запросов — выполнение операторов
SELECT,SHOWилиDESCRIBEчерезread_queryс возможностью сохранения больших результатов в файл. - Выполнение DDL/DML-команд — запуск операций
CREATE,INSERT,UPDATEилиDELETEс помощьюwrite_queryи получение подтверждения о количестве затронутых строк. - Исследование схем баз данных — просмотр списка баз данных, таблиц и получение определений
SHOW CREATE TABLEчерез ресурсыstarrocks://. - Обзор таблиц и баз данных — использование
table_overviewилиdb_overviewдля получения определений столбцов, количества строк и примеров данных с кэшированием в памяти. - Визуализация результатов запросов в виде диаграмм — передача SQL-запроса и выражения Plotly в
query_and_plotly_chartдля получения изображения диаграммы. - Проверка состояния кластера и горячих точек — выявление часто используемых таблиц с помощью
top_hot_tablesили таблиц с низким состоянием черезtop_bad_tables, а также доступ к внутренним системным метрикам через ресурсыproc://.
Документация
Официальный MCP-сервер StarRocks
MCP-сервер StarRocks выступает в роли моста между AI-ассистентами и базами данных StarRocks. Он позволяет напрямую выполнять SQL-запросы, исследовать базы данных, визуализировать данные с помощью графиков и получать подробные обзоры схем и данных без сложной настройки на стороне клиента.
Возможности
- Прямое выполнение SQL: Выполнение запросов
SELECT(read_query) и команд DDL/DML (write_query). - Исследование баз данных: Просмотр списка баз данных и таблиц, получение схем таблиц (ресурсы
starrocks://). - Системная информация: Доступ к внутренним метрикам и состояниям StarRocks через путь ресурса
proc://. - Детальные обзоры: Получение исчерпывающих сводок по таблицам (
table_overview) или целым базам данных (db_overview), включая определения столбцов, количество строк и образцы данных. - Визуализация данных: Выполнение запроса и генерация графика Plotly непосредственно из результатов (
query_and_plotly_chart). - Интеллектуальное кэширование: Обзоры таблиц и баз данных кэшируются в памяти для ускорения повторяющихся запросов. При необходимости кэш можно обойти.
- Гибкая конфигурация: Настройка параметров подключения и поведения через переменные окружения.
Предварительные требования
- Python 3.11 или новее.
- Доступный кластер StarRocks (сервис FE). По умолчанию сервер подключается к
localhost:9030по протоколу MySQL. uv— быстрый менеджер пакетов и проектов Python (современная заменаpip+virtualenv) от Astral. Этот проект используетuvдля разрешения зависимостей, создания виртуального окружения и запуска сервера. Командыuv runв этом README автоматически создают изолированное окружение и устанавливают необходимые зависимости при первом использовании, поэтому ручной шагpip installне требуется.
Установка uv
# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
# Or via Homebrew / pipx / pip
brew install uv
# pipx install uv
# pip install uv
Смотрите официальное руководство по установке uv для других вариантов. После установки убедитесь, что он находится в вашем PATH:
uv --version
Установка
Обычно вам не нужно устанавливать пакет вручную — MCP-хост запускает его за вас через uv (см. Конфигурация ниже). uv загружает пакет и его зависимости по требованию.
Для прямого запуска в целях тестирования или разработки:
# Run the published package in a throwaway environment
uv run --with mcp-server-starrocks mcp-server-starrocks --help
# Or, from a local checkout of this repository
git clone https://github.com/starrocks/mcp-server-starrocks.git
cd mcp-server-starrocks
uv sync # create the virtual environment and install dependencies
uv run mcp-server-starrocks --help
Конфигурация
MCP-сервер обычно запускается через MCP-хост. Конфигурация передается хосту, указывая, как запустить процесс MCP-сервера StarRocks.
Использование Streamable HTTP (рекомендуется):
Чтобы запустить сервер в режиме Streamable HTTP:
Сначала проверьте, что соединение со StarRocks в порядке (9030 — это порт протокола MySQL StarRocks, а не порт HTTP-сервера):
$ STARROCKS_URL=root:@localhost:9030 uv run mcp-server-starrocks --test
Запустите сервер:
uv run mcp-server-starrocks --mode streamable-http --port 8000
Затем настройте MCP следующим образом:
{
"mcpServers": {
"mcp-server-starrocks": {
"url": "http://localhost:8000/mcp"
}
}
}
Использование uv с установленным пакетом (отдельные переменные окружения):
{
"mcpServers": {
"mcp-server-starrocks": {
"command": "uv",
"args": ["run", "--with", "mcp-server-starrocks", "mcp-server-starrocks"],
"env": {
"STARROCKS_HOST": "default localhost",
"STARROCKS_PORT": "default 9030",
"STARROCKS_USER": "default root",
"STARROCKS_PASSWORD": "default empty",
"STARROCKS_DB": "default empty"
}
}
}
}
Использование uv с установленным пакетом (URL-адрес подключения):
{
"mcpServers": {
"mcp-server-starrocks": {
"command": "uv",
"args": ["run", "--with", "mcp-server-starrocks", "mcp-server-starrocks"],
"env": {
"STARROCKS_URL": "root:password@localhost:9030/my_database"
}
}
}
}
Использование uv с локальной директорией (для разработки):
{
"mcpServers": {
"mcp-server-starrocks": {
"command": "uv",
"args": [
"--directory",
"path/to/mcp-server-starrocks", // <-- Update this path
"run",
"mcp-server-starrocks"
],
"env": {
"STARROCKS_HOST": "default localhost",
"STARROCKS_PORT": "default 9030",
"STARROCKS_USER": "default root",
"STARROCKS_PASSWORD": "default empty",
"STARROCKS_DB": "default empty"
}
}
}
}
Использование uv с локальной директорией и URL-адресом подключения:
{
"mcpServers": {
"mcp-server-starrocks": {
"command": "uv",
"args": [
"--directory",
"path/to/mcp-server-starrocks", // <-- Update this path
"run",
"mcp-server-starrocks"
],
"env": {
"STARROCKS_URL": "root:password@localhost:9030/my_database"
}
}
}
}
Аргументы командной строки:
Сервер поддерживает следующие аргументы командной строки:
uv run mcp-server-starrocks --help
--mode {stdio,sse,http,streamable-http}: Режим передачи (по умолчанию: stdio или переменная окружения MCP_TRANSPORT_MODE)--host HOST: Хост сервера для режимов HTTP (по умолчанию: localhost)--port PORT: Порт сервера для режимов HTTP--test: Запуск в тестовом режиме для проверки функциональности
Примеры:
# Start in streamable HTTP mode on custom host/port
uv run mcp-server-starrocks --mode streamable-http --host 0.0.0.0 --port 8080
# Start in stdio mode (default)
uv run mcp-server-starrocks --mode stdio
# Run test mode
uv run mcp-server-starrocks --test
- Поле
urlдолжно указывать на конечную точку Streamable HTTP вашего MCP-сервера (при необходимости измените хост/порт). - С этой конфигурацией клиенты могут взаимодействовать с сервером, используя стандартные JSON-запросы через HTTP POST. Специальный SDK не требуется.
- Все API инструментов принимают и возвращают стандартный JSON, как описано выше.
Примечание: Режим
sse(Server-Sent Events) устарел и больше не поддерживается. Пожалуйста, используйте режим Streamable HTTP для всех новых интеграций.
Переменные окружения:
Конфигурация подключения
Вы можете настроить подключение к StarRocks, используя либо отдельные переменные окружения, либо единый URL-адрес подключения:
Вариант 1: Отдельные переменные окружения
STARROCKS_HOST: (Необязательно) Имя хоста или IP-адрес сервиса StarRocks FE. По умолчаниюlocalhost.STARROCKS_PORT: (Необязательно) Порт протокола MySQL сервиса StarRocks FE. По умолчанию9030.STARROCKS_USER: (Необязательно) Имя пользователя StarRocks. По умолчаниюroot.STARROCKS_PASSWORD: (Необязательно) Пароль StarRocks. По умолчанию пустая строка.STARROCKS_PASSWORD_KEYCHAIN_SERVICE: (Необязательно, только macOS) Имя сервиса универсального пароля, используемое при чтении пароля из Keychain. Используется только в том случае, если явный пароль не указан черезSTARROCKS_PASSWORDилиSTARROCKS_URL.STARROCKS_PASSWORD_KEYCHAIN_ACCOUNT: (Необязательно, только macOS) Имя учетной записи универсального пароля, используемое при чтении пароля из Keychain. По умолчанию соответствует разрешенному пользователю StarRocks.STARROCKS_DB: (Необязательно) База данных по умолчанию, используемая, если она не указана в аргументах инструментов или URI ресурсов. Если задано, соединение попытается выполнитьUSEэтой базы данных. Такие инструменты, какtable_overviewиdb_overview, будут использовать ее, если часть базы данных опущена в их аргументах. По умолчанию пусто (нет базы данных по умолчанию).
Вариант 2: URL-адрес подключения (имеет приоритет над отдельными переменными)
-
STARROCKS_URL: (Необязательно) Строка URL-адреса подключения, содержащая все параметры подключения в одной переменной. Формат:[<schema>://]user:password@host:port/database. Часть схемы необязательна. Когда эта переменная установлена, она имеет приоритет над отдельными переменнымиSTARROCKS_HOST,STARROCKS_PORT,STARROCKS_USER,STARROCKS_PASSWORDиSTARROCKS_DB.Примеры:
root:mypass@localhost:9030/test_dbmysql://admin:secret@db.example.com:9030/productionstarrocks://user:pass@192.168.1.100:9030/analytics
Приоритет пароля:
- Пароль, встроенный в
STARROCKS_URL, имеет преимущество, включая явный пустой пароль, напримерuser:@host:9030/db. - Если
STARROCKS_URLне содержит пароль, используетсяSTARROCKS_PASSWORD, если он установлен. - Если ни один явный источник пароля не установлен, а
STARROCKS_PASSWORD_KEYCHAIN_SERVICEнастроен, пароль считывается из macOS Keychain.
Пример для macOS Keychain
Сохраните пароль:
security add-generic-password -U -a root -s mcp-server-starrocks -w 'secret'
Проверьте сохраненный пароль:
security find-generic-password -a root -s mcp-server-starrocks -w
Используйте его с этим сервером:
export STARROCKS_URL=root@localhost:9030/test_db
export STARROCKS_PASSWORD_KEYCHAIN_SERVICE=mcp-server-starrocks
export STARROCKS_PASSWORD_KEYCHAIN_ACCOUNT=root
Дополнительная конфигурация
-
STARROCKS_FE_ARROW_FLIGHT_SQL_PORT: (Необязательно) Порт Arrow Flight SQL сервиса StarRocks FE. Если установлен, сервер подключается с использованием высокопроизводительного протокола Arrow Flight SQL (через драйверы ADBC) вместо стандартного протокола MySQL. Оставьте незаданным, чтобы использовать соединение MySQL по умолчанию. Хост, пользователь и пароль берутся из тех же настроек подключения, что описаны выше. -
STARROCKS_OVERVIEW_LIMIT: (Необязательно) Приблизительный лимит символов для общего текста, генерируемого инструментами обзора (table_overview,db_overview) при извлечении данных для заполнения кэша. Это помогает предотвратить чрезмерное использование памяти для очень больших схем или многочисленных таблиц. По умолчанию20000. -
STARROCKS_MCP_OUTPUT_DIR: (Необязательно) Директория, используемаяread_query, когда его аргументoutput_fileявляется относительным путем. По умолчанию~/.mcp-server-starrocks/output/. Директория создается по требованию. Абсолютные пути, переданные вoutput_file(включая пути с префиксом~), обходят эту настройку. Примечание: файлы записываются на машине, где работает MCP-сервер. Для Claude Code / Claude Desktop сервер работает локально, поэтому файлы сохраняются на вашем ноутбуке. При удаленных/http-развертываниях файл сохраняется на сервере, а не на клиенте. -
STARROCKS_CHART_OUTPUT_DIR: (Необязательно) Директория, в которуюquery_and_plotly_chartзаписывает интерактивные HTML-графики (когдаformat="html"). По умолчанию используется системная временная директория. Директория создается по требованию. Примечание: как и другие выходные файлы, графики записываются на машине, где работает MCP-сервер. -
STARROCKS_CHART_INCLUDE_PLOTLYJS: (Необязательно) Управляет тем, какplotly.jsвстраивается в HTML-графики.cdn(по умолчанию) сохраняет файлы небольшими, но требует доступа к сети при просмотре;inline/trueвстраивает полную библиотеку для автономного использования;directoryиfalseтакже принимаются (передаются в Plotlywrite_html). -
STARROCKS_CHART_DEFAULT_FORMAT: (Необязательно) Формат вывода по умолчанию дляquery_and_plotly_chart, когда аргументformatопущен. Одно из значений:json,png,jpeg(по умолчанию) илиhtml. Установите вhtml, чтобы всегда записывать интерактивный файл графика вSTARROCKS_CHART_OUTPUT_DIR(со встроенным предпросмотром PNG) без передачиformatпри каждом вызове. Недопустимые значения возвращаются кjpegс предупреждением. -
STARROCKS_MYSQL_AUTH_PLUGIN: (Необязательно) Указывает плагин аутентификации, используемый при подключении к сервису StarRocks FE. Например, установите вmysql_clear_password, если ваше развертывание StarRocks требует аутентификации с открытым текстовым паролем (например, при использовании определенных конфигураций LDAP или внешней аутентификации). Устанавливайте это только в том случае, если ваше окружение специально этого требует; в противном случае используется плагин аутентификации по умолчанию.
Конфигурация TLS / SSL
Эти переменные управляют TLS для соединения. Если ни одна из них не установлена, базовый mysql.connector сохраняет свое поведение по умолчанию (ssl-mode=PREFERRED): соединение шифруется, если сервер поддерживает TLS, но сертификат сервера не проверяется. Для реальной безопасности предоставьте сертификат CA и включите проверку.
STARROCKS_SSL_DISABLED: (Необязательно) Установите вtrue, чтобы принудительно отключить TLS. Переопределяет все остальные настройки SSL. По умолчаниюfalse.STARROCKS_SSL_CA: (Необязательно) Путь к сертификату CA (PEM), используемому для проверки сертификата сервера StarRocks.STARROCKS_SSL_CERT: (Необязательно) Путь к клиентскому сертификату (PEM) для взаимного TLS (mTLS).STARROCKS_SSL_KEY: (Необязательно) Путь к закрытому ключу клиента (PEM) для взаимного TLS (mTLS).STARROCKS_SSL_VERIFY_CERT: (Необязательно) Установите вtrue, чтобы проверять сертификат сервера по CA. По умолчаниюfalse.STARROCKS_SSL_VERIFY_IDENTITY: (Необязательно) Установите вtrue, чтобы также проверять, соответствует ли имя хоста сервера сертификату. По умолчаниюfalse.STARROCKS_TLS_VERSIONS: (Необязательно) Список разрешенных версий TLS, разделенных запятыми, напримерTLSv1.2,TLSv1.3.
Пример (проверка сервера по сертификату CA):
"env": {
"STARROCKS_HOST": "your-fe-host",
"STARROCKS_PORT": "9030",
"STARROCKS_USER": "root",
"STARROCKS_PASSWORD": "your-password",
"STARROCKS_SSL_CA": "/path/to/ca.pem",
"STARROCKS_SSL_VERIFY_CERT": "true",
"STARROCKS_SSL_VERIFY_IDENTITY": "true"
}
Для высокопроизводительного соединения Arrow Flight SQL (включается через STARROCKS_FE_ARROW_FLIGHT_SQL_PORT) TLS настраивается отдельно:
STARROCKS_FE_ARROW_FLIGHT_SQL_USE_TLS: (Необязательно) Установите вtrue, чтобы использоватьgrpc+tls://вместо открытого текстаgrpc://. При включенииSTARROCKS_SSL_CAиспользуется в качестве корневого сертификата TLS, аSTARROCKS_SSL_VERIFY_CERT=false(по умолчанию) пропускает проверку сертификата сервера.
Примечание по безопасности: избегайте хранения паролей в открытом виде непосредственно в
mcp.json. Предпочитайте внедрятьSTARROCKS_PASSWORD(и пути к сертификатам) из менеджера секретов или окружения и никогда не фиксируйте учетные данные в системе контроля версий.
MCP_TRANSPORT_MODE: (Необязательно) Режим связи, определяющий, как MCP-сервер предоставляет свои сервисы. Доступные варианты:stdio(по умолчанию): Взаимодействие через стандартный ввод/вывод, подходит для размещения на MCP-хосте.streamable-http(Streamable HTTP): Запускается как Streamable HTTP-сервер, поддерживающий вызовы RESTful API.sse: (Устарело, не рекомендуется) Запускается в режиме потоковой передачи Server-Sent Events (SSE), подходит для сценариев, требующих потоковых ответов. Примечание: режим SSE больше не поддерживается, рекомендуется повсеместно использовать режим Streamable HTTP.
Компоненты
Инструменты
-
read_query- Описание: Выполнение запроса SELECT или других команд, возвращающих ResultSet (например,
SHOW,DESCRIBE). При необходимости можно записать полный результат в локальный файл вместо возврата в ответе — это удобно для результатов, которые слишком велики для контекста модели. - Входные данные:
{ "query": "SQL query string", "db": "database name (optional, uses default database if not specified)", "output_file": "optional path; if set, writes the full result to disk and returns only a summary + small preview. Relative paths resolve against STARROCKS_MCP_OUTPUT_DIR (default: ~/.mcp-server-starrocks/output/); absolute paths and ~ are used as-is", "output_format": "optional: csv | tsv | json | jsonl. If omitted, inferred from output_file extension (.csv/.tsv/.json/.jsonl/.ndjson); defaults to csv" } - Выходные данные: Без
output_file— текстовое содержимое с результатами запроса в формате, подобном CSV, со строкой заголовка и сводкой по количеству строк. Сoutput_file— краткая сводка, включающая разрешённый абсолютный путь, количество байт и количество строк, а также небольшой предварительный просмотр. В случае ошибки возвращается сообщение об ошибке.
- Описание: Выполнение запроса SELECT или других команд, возвращающих ResultSet (например,
-
write_query- Описание: Выполнение команд DDL (
CREATE,ALTER,DROP), DML (INSERT,UPDATE,DELETE) или других команд StarRocks, не возвращающих ResultSet. - Входные данные:
{ "query": "SQL command string", "db": "database name (optional, uses default database if not specified)" } - Выходные данные: Текстовое содержимое, подтверждающее успех (например, «Query OK, затронуто X строк») или сообщающее об ошибке. Изменения фиксируются автоматически при успешном выполнении.
- Описание: Выполнение команд DDL (
-
analyze_query- Описание: Анализ запроса и получение результатов анализа с использованием профиля запроса или explain analyze.
- Входные данные:
{ "uuid": "Query ID, a string composed of 32 hexadecimal digits formatted as 8-4-4-4-12", "sql": "Query SQL to analyze", "db": "database name (optional, uses default database if not specified)" } - Выходные данные: Текстовое содержимое с результатами анализа запроса. Использует
ANALYZE PROFILE FROM, если указан uuid, в противном случае используетEXPLAIN ANALYZE, если указан sql.
-
top_hot_tables- Описание: Получение самых горячих таблиц по количеству посещений из журнала аудита. Объединяет
information_schema.tablesсstarrocks_audit_db__.starrocks_audit_tbl__, исключает операторыrootиSHOW, сопоставляет текст SQL аудита с именами таблиц и сортирует по убываниюvisit_count. - Входные данные:
{ "db": "optional database/schema filter", "table": "optional table name substring filter", "min_start_time_ms": 1704067200000, "max_start_time_ms": 1704153600000, "top_n": 20 } - Выходные данные: Текстовая сводка и структурированное содержимое, содержащее ранжированные строки с
db,tableиvisit_count.
- Описание: Получение самых горячих таблиц по количеству посещений из журнала аудита. Объединяет
-
top_bad_tables- Описание: Получение самых проблемных таблиц по оценке здоровья таблицы в соответствии с логикой
top-bad-tablesStar Management Studio. Повторно использует расчёт здоровья таблицы на основеinformation_schema.be_tabletsиinformation_schema.partitions_meta, отфильтровывает системные схемы, сортирует по возрастаниюtable_health_scoreи возвращает таблицы с самой низкой оценкой. - Входные данные:
{ "db": "optional database/schema filter", "table": "optional table name substring filter", "top_n": 20 } - Выходные данные: Текстовая сводка и структурированное содержимое, содержащее ранжированные строки с полями здоровья таблицы, такими как
db,table,tablet_num,replica_score,tablet_scoreиtable_health_score.
- Описание: Получение самых проблемных таблиц по оценке здоровья таблицы в соответствии с логикой
-
query_and_plotly_chart- Описание: Выполняет SQL-запрос, загружает результаты в DataFrame Pandas и генерирует график Plotly с использованием предоставленного выражения Python. Предназначен для визуализации в поддерживающих пользовательских интерфейсах.
- Входные данные:
{ "query": "SQL query to fetch data", "plotly_expr": "Python expression string using 'px' (Plotly Express) and 'df' (DataFrame). Example: 'px.scatter(df, x=\"col1\", y=\"col2\")'", "db": "database name (optional, uses default database if not specified)" } - Выходные данные: Список, содержащий:
TextContent: Текстовое представление DataFrame и примечание о том, что график предназначен для отображения в пользовательском интерфейсе.ImageContent: Сгенерированный график Plotly, закодированный как изображение PNG в формате base64 (image/png). Возвращает текстовое сообщение об ошибке в случае сбоя или если запрос не вернул данных.
-
table_overview- Описание: Получение обзора конкретной таблицы: столбцы (из
DESCRIBE), общее количество строк и образцы строк (LIMIT 3). Использует кэш в памяти, если толькоrefreshне равно true. - Входные данные:
{ "table": "Table name, optionally prefixed with database name (e.g., 'db_name.table_name' or 'table_name'). If database is omitted, uses STARROCKS_DB environment variable if set.", "refresh": false // Optional, boolean. Set to true to bypass the cache. Defaults to false. } - Выходные данные: Текстовое содержимое, содержащее форматированный обзор (столбцы, количество строк, образцы данных) или сообщение об ошибке. Кэшированные результаты включают предыдущие ошибки, если применимо.
- Описание: Получение обзора конкретной таблицы: столбцы (из
-
db_overview- Описание: Получение обзора (столбцы, количество строк, образцы строк) для всех таблиц в указанной базе данных. Использует кэш уровня таблицы для каждой таблицы, если только
refreshне равно true. - Входные данные:
{ "db": "database_name", // Optional if default database is set. "refresh": false // Optional, boolean. Set to true to bypass the cache for all tables in the DB. Defaults to false. } - Выходные данные: Текстовое содержимое, содержащее объединённые обзоры для всех таблиц, найденных в базе данных, разделённые заголовками. Возвращает сообщение об ошибке, если к базе данных невозможно получить доступ или она не содержит таблиц.
- Описание: Получение обзора (столбцы, количество строк, образцы строк) для всех таблиц в указанной базе данных. Использует кэш уровня таблицы для каждой таблицы, если только
Ресурсы
Прямые ресурсы
starrocks:///databases- Описание: Выводит список всех баз данных, доступных настроенному пользователю.
- Эквивалентный запрос:
SHOW DATABASES - MIME-тип:
text/plain
Шаблоны ресурсов
-
starrocks:///{db}/{table}/schema- Описание: Получает определение схемы конкретной таблицы.
- Эквивалентный запрос:
SHOW CREATE TABLE {db}.{table} - MIME-тип:
text/plain
-
starrocks:///{db}/tables- Описание: Выводит список всех таблиц в конкретной базе данных.
- Эквивалентный запрос:
SHOW TABLES FROM {db} - MIME-тип:
text/plain
-
proc:///{+path}- Описание: Доступ к внутренней системной информации StarRocks, аналогично Linux
/proc. Параметрpathуказывает желаемый информационный узел. - Эквивалентный запрос:
SHOW PROC '/{path}' - MIME-тип:
text/plain - Распространённые пути:
/frontends— Информация об узлах FE./backends— Информация об узлах BE (для развёртываний, не являющихся облачно-нативными)./compute_nodes— Информация об узлах CN (для облачно-нативных развёртываний)./dbs— Информация о базах данных./dbs/<DB_ID>— Информация о конкретной базе данных по ID./dbs/<DB_ID>/<TABLE_ID>— Информация о конкретной таблице по ID./dbs/<DB_ID>/<TABLE_ID>/partitions— Информация о партициях таблицы./transactions— Информация о транзакциях, сгруппированная по базам данных./transactions/<DB_ID>— Информация о транзакциях для конкретного ID базы данных./transactions/<DB_ID>/running— Выполняющиеся транзакции для ID базы данных./transactions/<DB_ID>/finished— Завершённые транзакции для ID базы данных./jobs— Информация об асинхронных заданиях (Schema Change, Rollup и т. д.)./statistic— Статистика по каждой базе данных./tasks— Информация о задачах агента./cluster_balance— Информация о состоянии балансировки нагрузки./routine_loads— Информация о заданиях Routine Load./colocation_group— Информация о группах Colocation Join./catalog— Информация о настроенных каталогах (например, Hive, Iceberg).
- Описание: Доступ к внутренней системной информации StarRocks, аналогично Linux
Подсказки
Данный сервер не определяет подсказок.
Поведение кэширования
- Инструменты
table_overviewиdb_overviewиспользуют кэш в памяти для хранения сгенерированного текста обзора. - Ключом кэша является кортеж из
(database_name, table_name). - При вызове
table_overviewсначала проверяется кэш. Если результат существует и параметрrefreshравенfalse(по умолчанию), кэшированный результат возвращается немедленно. В противном случае данные извлекаются из StarRocks, сохраняются в кэше и затем возвращаются. - При вызове
db_overviewвыводится список всех таблиц в базе данных, а затем предпринимается попытка получить обзор для каждой таблицы с использованием той же логики кэширования, что и дляtable_overview(сначала проверка кэша, извлечение при необходимости и еслиrefreshравенfalseили произошёл промах кэша). Еслиrefreshравенtrueдляdb_overview, это принудительно обновляет данные для всех таблиц в этой базе данных. - Переменная окружения
STARROCKS_OVERVIEW_LIMITзадаёт мягкий лимит максимальной длины строки обзора, генерируемой для каждой таблицы при заполнении кэша, помогая управлять использованием памяти. - Кэшированные результаты, включая любые сообщения об ошибках, возникшие при первоначальном извлечении, сохраняются и возвращаются при последующих попаданиях в кэш.
Отладка
После запуска mcp-сервера для отладки можно использовать инспектор:
npx @modelcontextprotocol/inspector
Демонстрация

