StarRocks
officielInteragir avec StarRocks
Que pouvez-vous faire avec StarRocks MCP ?
- Exécuter des requêtes SQL en lecture seule — exécutez des instructions
SELECT,SHOWouDESCRIBEviaread_queryet éventuellement enregistrez les résultats volumineux dans un fichier. - Exécuter des commandes DDL/DML — lancez des opérations
CREATE,INSERT,UPDATEouDELETEavecwrite_queryet obtenez une confirmation du nombre de lignes affectées. - Explorer les schémas de base de données — listez les bases de données, les tables et récupérez les définitions
SHOW CREATE TABLEvia les ressourcesstarrocks://. - Obtenir des aperçus de table et de base de données — utilisez
table_overviewoudb_overviewpour récupérer les définitions de colonnes, les nombres de lignes et des échantillons de lignes, avec mise en cache en mémoire. - Visualiser les résultats de requêtes sous forme de graphiques — fournissez une requête SQL et une expression Plotly à
query_and_plotly_chartet recevez une image de graphique. - Inspecter la santé du cluster et les points chauds — identifiez les tables fréquemment consultées avec
top_hot_tablesou les tables à faible santé avectop_bad_tables, et accédez aux métriques système internes via les ressourcesproc://.
Documentation
Serveur MCP Officiel StarRocks
Le serveur MCP StarRocks agit comme un pont entre les assistants IA et les bases de données StarRocks. Il permet l'exécution directe de SQL, l'exploration de bases de données, la visualisation de données via des graphiques et la récupération d'aperçus détaillés de schémas/données sans nécessiter de configuration complexe côté client.
Fonctionnalités
- Exécution SQL directe : Exécutez des requêtes
SELECT(read_query) et des commandes DDL/DML (write_query). - Exploration de base de données : Listez les bases de données et les tables, récupérez les schémas de table (ressources
starrocks://). - Informations système : Accédez aux métriques et états internes de StarRocks via le chemin de ressource
proc://. - Aperçus détaillés : Obtenez des résumés complets des tables (
table_overview) ou de bases de données entières (db_overview), incluant les définitions de colonnes, le nombre de lignes et des échantillons de données. - Visualisation de données : Exécutez une requête et générez un graphique Plotly directement à partir des résultats (
query_and_plotly_chart). - Mise en cache intelligente : Les aperçus de tables et de bases de données sont mis en cache en mémoire pour accélérer les requêtes répétées. Le cache peut être contourné si nécessaire.
- Configuration flexible : Définissez les détails de connexion et le comportement via des variables d'environnement.
Prérequis
- Python 3.11 ou plus récent.
- Un cluster StarRocks accessible (service FE). Par défaut, le serveur se connecte à
localhost:9030via le protocole MySQL. uv— un gestionnaire de paquets et de projets Python rapide (un remplacement moderne pourpip+virtualenv) d'Astral. Ce projet utiliseuvpour résoudre les dépendances, créer l'environnement virtuel et lancer le serveur. Les commandesuv runtout au long de ce README créent automatiquement un environnement isolé et installent les dépendances requises lors de la première utilisation, donc aucune étape manuellepip installn'est nécessaire.
Installation de 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
Consultez le guide d'installation officiel de uv pour d'autres options. Après l'installation, vérifiez qu'il est dans votre PATH :
uv --version
Installation
Vous n'avez généralement pas besoin d'installer le paquet manuellement — l'hôte MCP le lance pour vous via uv (voir Configuration ci-dessous). uv récupère le paquet et ses dépendances à la demande.
Pour l'exécuter directement à des fins de test ou de développement :
# 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
Configuration
Le serveur MCP est généralement exécuté via un hôte MCP. La configuration est transmise à l'hôte, spécifiant comment lancer le processus du serveur MCP StarRocks.
Utilisation de HTTP diffusable (recommandé) :
Pour démarrer le serveur en mode HTTP diffusable :
Testez d'abord que la connexion à StarRocks est correcte (9030 est le port du protocole MySQL StarRocks, pas le port du serveur HTTP) :
$ STARROCKS_URL=root:@localhost:9030 uv run mcp-server-starrocks --test
Démarrez le serveur :
uv run mcp-server-starrocks --mode streamable-http --port 8000
Configurez ensuite le MCP comme ceci :
{
"mcpServers": {
"mcp-server-starrocks": {
"url": "http://localhost:8000/mcp"
}
}
}
Utilisation de uv avec le paquet installé (variables d'environnement individuelles) :
{
"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"
}
}
}
}
Utilisation de uv avec le paquet installé (URL de connexion) :
{
"mcpServers": {
"mcp-server-starrocks": {
"command": "uv",
"args": ["run", "--with", "mcp-server-starrocks", "mcp-server-starrocks"],
"env": {
"STARROCKS_URL": "root:password@localhost:9030/my_database"
}
}
}
}
Utilisation de uv avec le répertoire local (pour le développement) :
{
"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"
}
}
}
}
Utilisation de uv avec le répertoire local et l'URL de connexion :
{
"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"
}
}
}
}
Arguments de ligne de commande :
Le serveur prend en charge les arguments de ligne de commande suivants :
uv run mcp-server-starrocks --help
--mode {stdio,sse,http,streamable-http}: Mode de transport (par défaut : stdio ou variable d'env MCP_TRANSPORT_MODE)--host HOST: Hôte du serveur pour les modes HTTP (par défaut : localhost)--port PORT: Port du serveur pour les modes HTTP--test: Exécuter en mode test pour vérifier la fonctionnalité
Exemples :
# 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
- Le champ
urldoit pointer vers le point de terminaison HTTP diffusable de votre serveur MCP (ajustez l'hôte/le port selon les besoins). - Avec cette configuration, les clients peuvent interagir avec le serveur en utilisant des requêtes HTTP POST JSON standard. Aucun SDK spécial n'est requis.
- Toutes les API d'outils acceptent et retournent du JSON standard comme décrit ci-dessus.
Remarque : Le mode
sse(Server-Sent Events) est obsolète et n'est plus maintenu. Veuillez utiliser le mode HTTP diffusable pour toutes les nouvelles intégrations.
Variables d'environnement :
Configuration de la connexion
Vous pouvez configurer la connexion StarRocks en utilisant soit des variables d'environnement individuelles, soit une URL de connexion unique :
Option 1 : Variables d'environnement individuelles
STARROCKS_HOST: (Optionnel) Nom d'hôte ou adresse IP du service FE StarRocks. Par défautlocalhost.STARROCKS_PORT: (Optionnel) Port du protocole MySQL du service FE StarRocks. Par défaut9030.STARROCKS_USER: (Optionnel) Nom d'utilisateur StarRocks. Par défautroot.STARROCKS_PASSWORD: (Optionnel) Mot de passe StarRocks. Par défaut, chaîne vide.STARROCKS_PASSWORD_KEYCHAIN_SERVICE: (Optionnel, macOS uniquement) Nom de service de mot de passe générique à utiliser lors de la lecture du mot de passe depuis le Trousseau. Ceci n'est utilisé que lorsqu'aucun mot de passe explicite n'est fourni viaSTARROCKS_PASSWORDouSTARROCKS_URL.STARROCKS_PASSWORD_KEYCHAIN_ACCOUNT: (Optionnel, macOS uniquement) Nom de compte de mot de passe générique à utiliser lors de la lecture du mot de passe depuis le Trousseau. Par défaut, l'utilisateur StarRocks résolu.STARROCKS_DB: (Optionnel) Base de données par défaut à utiliser si elle n'est pas spécifiée dans les arguments de l'outil ou les URI de ressource. Si défini, la connexion tentera deUSEcette base de données. Les outils commetable_overviewetdb_overviewl'utiliseront si la partie base de données est omise dans leurs arguments. Par défaut, vide (pas de base de données par défaut).
Option 2 : URL de connexion (prend le pas sur les variables individuelles)
-
STARROCKS_URL: (Optionnel) Une chaîne d'URL de connexion qui contient tous les paramètres de connexion dans une seule variable. Format :[<schema>://]user:password@host:port/database. La partie schéma est optionnelle. Lorsque cette variable est définie, elle prend le pas sur les variables individuellesSTARROCKS_HOST,STARROCKS_PORT,STARROCKS_USER,STARROCKS_PASSWORDetSTARROCKS_DB.Exemples :
root:mypass@localhost:9030/test_dbmysql://admin:secret@db.example.com:9030/productionstarrocks://user:pass@192.168.1.100:9030/analytics
Priorité du mot de passe :
- Un mot de passe intégré dans
STARROCKS_URLl'emporte, y compris un mot de passe vide explicite commeuser:@host:9030/db. - Si
STARROCKS_URLomet le mot de passe,STARROCKS_PASSWORDest utilisé s'il est défini. - Si aucune source de mot de passe explicite n'est définie et que
STARROCKS_PASSWORD_KEYCHAIN_SERVICEest configuré, le mot de passe est lu depuis le Trousseau macOS.
Exemple de Trousseau macOS
Stockez le mot de passe :
security add-generic-password -U -a root -s mcp-server-starrocks -w 'secret'
Vérifiez le mot de passe stocké :
security find-generic-password -a root -s mcp-server-starrocks -w
Utilisez-le avec ce serveur :
export STARROCKS_URL=root@localhost:9030/test_db
export STARROCKS_PASSWORD_KEYCHAIN_SERVICE=mcp-server-starrocks
export STARROCKS_PASSWORD_KEYCHAIN_ACCOUNT=root
Configuration supplémentaire
-
STARROCKS_FE_ARROW_FLIGHT_SQL_PORT: (Optionnel) Port Arrow Flight SQL du service FE StarRocks. Lorsqu'il est défini, le serveur se connecte en utilisant le protocole Arrow Flight SQL haute performance (via les pilotes ADBC) au lieu du protocole MySQL standard. Laissez non défini pour utiliser la connexion MySQL par défaut. L'hôte, l'utilisateur et le mot de passe sont tirés des mêmes paramètres de connexion décrits ci-dessus. -
STARROCKS_OVERVIEW_LIMIT: (Optionnel) Une limite de caractères approximative pour le texte total généré par les outils d'aperçu (table_overview,db_overview) lors de la récupération des données pour remplir le cache. Cela aide à prévenir une utilisation excessive de la mémoire pour les très grands schémas ou de nombreuses tables. Par défaut20000. -
STARROCKS_MCP_OUTPUT_DIR: (Optionnel) Répertoire utilisé parread_querylorsque son argumentoutput_fileest un chemin relatif. Par défaut~/.mcp-server-starrocks/output/. Le répertoire est créé à la demande. Les chemins absolus passés àoutput_file(y compris les chemins préfixés par~) contournent ce paramètre. Remarque : les fichiers sont écrits sur la machine où le serveur MCP s'exécute. Pour Claude Code / Claude Desktop, le serveur s'exécute localement, donc les fichiers atterrissent sur votre ordinateur portable. Pour les déploiements distants/http, le fichier atterrit sur le serveur, pas sur le client. -
STARROCKS_CHART_OUTPUT_DIR: (Optionnel) Répertoire oùquery_and_plotly_chartécrit les graphiques HTML interactifs (lorsqueformat="html"). Par défaut, le répertoire temporaire du système. Le répertoire est créé à la demande. Remarque : comme les autres fichiers de sortie, les graphiques sont écrits sur la machine où le serveur MCP s'exécute. -
STARROCKS_CHART_INCLUDE_PLOTLYJS: (Optionnel) Contrôle commentplotly.jsest intégré dans les graphiques HTML.cdn(par défaut) garde les fichiers petits mais nécessite un accès réseau lors de la visualisation ;inline/trueintègre la bibliothèque complète pour une utilisation hors ligne ;directoryetfalsesont également acceptés (transmis àwrite_htmlde Plotly). -
STARROCKS_CHART_DEFAULT_FORMAT: (Optionnel) Format de sortie par défaut pourquery_and_plotly_chartlorsque l'argumentformatest omis. L'un parmijson,png,jpeg(par défaut) ouhtml. Définissez surhtmlpour toujours écrire un fichier graphique interactif dansSTARROCKS_CHART_OUTPUT_DIR(avec un aperçu PNG en ligne) sans passerformatà chaque appel. Les valeurs invalides reviennent àjpegavec un avertissement. -
STARROCKS_MYSQL_AUTH_PLUGIN: (Optionnel) Spécifie le plugin d'authentification à utiliser lors de la connexion au service FE StarRocks. Par exemple, définissez surmysql_clear_passwordsi votre déploiement StarRocks nécessite une authentification par mot de passe en texte clair (comme lors de l'utilisation de certaines configurations LDAP ou d'authentification externe). Ne définissez ceci que si votre environnement le nécessite spécifiquement ; sinon, le auth_plugin par défaut est utilisé.
Configuration TLS / SSL
Ces variables contrôlent TLS pour la connexion. Lorsqu'aucune d'entre elles n'est définie, le mysql.connector sous-jacent conserve son comportement par défaut (ssl-mode=PREFERRED) : la connexion est chiffrée si le serveur prend en charge TLS, mais le certificat du serveur n'est pas vérifié. Pour une sécurité réelle, fournissez un certificat CA et activez la vérification.
STARROCKS_SSL_DISABLED: (Optionnel) Définir surtruepour forcer la désactivation de TLS. Remplace tous les autres paramètres SSL. Par défautfalse.STARROCKS_SSL_CA: (Optionnel) Chemin vers le certificat CA (PEM) utilisé pour vérifier le certificat du serveur StarRocks.STARROCKS_SSL_CERT: (Optionnel) Chemin vers le certificat client (PEM) pour TLS mutuel (mTLS).STARROCKS_SSL_KEY: (Optionnel) Chemin vers la clé privée client (PEM) pour TLS mutuel (mTLS).STARROCKS_SSL_VERIFY_CERT: (Optionnel) Définir surtruepour vérifier le certificat du serveur par rapport à la CA. Par défautfalse.STARROCKS_SSL_VERIFY_IDENTITY: (Optionnel) Définir surtruepour vérifier également que le nom d'hôte du serveur correspond au certificat. Par défautfalse.STARROCKS_TLS_VERSIONS: (Optionnel) Liste séparée par des virgules des versions TLS autorisées, par exempleTLSv1.2,TLSv1.3.
Exemple (vérifier le serveur par rapport à un certificat 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"
}
Pour la connexion haute performance Arrow Flight SQL (activée via STARROCKS_FE_ARROW_FLIGHT_SQL_PORT), TLS est contrôlé séparément :
STARROCKS_FE_ARROW_FLIGHT_SQL_USE_TLS: (Optionnel) Définir surtruepour utilisergrpc+tls://au lieu degrpc://en texte clair. Lorsqu'il est activé,STARROCKS_SSL_CAest utilisé comme certificat racine TLS etSTARROCKS_SSL_VERIFY_CERT=false(par défaut) ignore la vérification du certificat du serveur.
Note de sécurité : évitez de stocker des mots de passe en texte clair directement dans
mcp.json. Préférez injecterSTARROCKS_PASSWORD(et les chemins de certificats) depuis un gestionnaire de secrets ou l'environnement, et ne validez jamais les informations d'identification dans le contrôle de version.
MCP_TRANSPORT_MODE: (Optionnel) Mode de communication qui spécifie comment le serveur MCP expose ses services. Options disponibles :stdio(par défaut) : Communique via l'entrée/sortie standard, adapté à l'hébergement par un hôte MCP.streamable-http(HTTP diffusable) : Démarre en tant que serveur HTTP diffusable, prenant en charge les appels API RESTful.sse: (Obsolète, non recommandé) Démarre en mode de diffusion Server-Sent Events (SSE), adapté aux scénarios nécessitant des réponses en continu. Remarque : le mode SSE n'est plus maintenu, il est recommandé d'utiliser uniformément le mode HTTP diffusable.
Composants
Outils
-
read_query- Description : Exécute une requête SELECT ou d'autres commandes qui renvoient un ResultSet (par exemple,
SHOW,DESCRIBE). Permet éventuellement d'écrire le résultat complet dans un fichier local au lieu de le renvoyer en ligne — utile pour les résultats trop volumineux pour le contexte du modèle. - Entrée :
{ "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" } - Sortie : Sans
output_file, contenu textuel contenant les résultats de la requête dans un format similaire à CSV avec une ligne d'en-tête et un résumé du nombre de lignes. Avecoutput_file, un bref résumé incluant le chemin absolu résolu, le nombre d'octets et le nombre de lignes, plus un petit aperçu. Renvoie un message d'erreur en cas d'échec.
- Description : Exécute une requête SELECT ou d'autres commandes qui renvoient un ResultSet (par exemple,
-
write_query- Description : Exécute une commande DDL (
CREATE,ALTER,DROP), DML (INSERT,UPDATE,DELETE) ou toute autre commande StarRocks qui ne renvoie pas de ResultSet. - Entrée :
{ "query": "SQL command string", "db": "database name (optional, uses default database if not specified)" } - Sortie : Contenu textuel confirmant le succès (par exemple, "Query OK, X rows affected") ou signalant une erreur. Les modifications sont validées automatiquement en cas de succès.
- Description : Exécute une commande DDL (
-
analyze_query- Description : Analyser une requête et obtenir le résultat de l'analyse en utilisant le profil de requête ou explain analyze.
- Entrée :
{ "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)" } - Sortie : Contenu textuel contenant les résultats de l'analyse de la requête. Utilise
ANALYZE PROFILE FROMsi uuid est fourni, sinon utiliseEXPLAIN ANALYZEsi sql est fourni.
-
top_hot_tables- Description : Obtenir les principales tables chaudes par nombre de visites dans le journal d'audit. Il joint
information_schema.tablesavecstarrocks_audit_db__.starrocks_audit_tbl__, exclut les instructionsrootetSHOW, fait correspondre le texte SQL d'audit avec les noms de table et trie parvisit_countdécroissant. - Entrée :
{ "db": "optional database/schema filter", "table": "optional table name substring filter", "min_start_time_ms": 1704067200000, "max_start_time_ms": 1704153600000, "top_n": 20 } - Sortie : Résumé textuel plus contenu structuré contenant les lignes classées avec
db,tableetvisit_count.
- Description : Obtenir les principales tables chaudes par nombre de visites dans le journal d'audit. Il joint
-
top_bad_tables- Description : Obtenir les principales tables problématiques par score de santé de table, en suivant la logique
top-bad-tablesde Star Management Studio. Il réutilise le calcul de santé de table basé surinformation_schema.be_tabletsetinformation_schema.partitions_meta, filtre les schémas système, trie partable_health_scorecroissant et renvoie les tables avec les scores les plus bas. - Entrée :
{ "db": "optional database/schema filter", "table": "optional table name substring filter", "top_n": 20 } - Sortie : Résumé textuel plus contenu structuré contenant les lignes classées avec les champs de santé de table tels que
db,table,tablet_num,replica_score,tablet_scoreettable_health_score.
- Description : Obtenir les principales tables problématiques par score de santé de table, en suivant la logique
-
query_and_plotly_chart- Description : Exécute une requête SQL, charge les résultats dans un DataFrame Pandas et génère un graphique Plotly en utilisant une expression Python fournie. Conçu pour la visualisation dans les interfaces utilisateur compatibles.
- Entrée :
{ "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)" } - Sortie : Une liste contenant :
TextContent: Une représentation textuelle du DataFrame et une note indiquant que le graphique est destiné à l'affichage dans l'interface utilisateur.ImageContent: Le graphique Plotly généré encodé en image PNG base64 (image/png). Renvoie un message d'erreur textuel en cas d'échec ou si la requête ne produit aucune donnée.
-
table_overview- Description : Obtenir un aperçu d'une table spécifique : colonnes (depuis
DESCRIBE), nombre total de lignes et lignes d'échantillon (LIMIT 3). Utilise un cache en mémoire sauf sirefreshest vrai. - Entrée :
{ "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. } - Sortie : Contenu textuel contenant l'aperçu formaté (colonnes, nombre de lignes, données d'échantillon) ou un message d'erreur. Les résultats mis en cache incluent les erreurs précédentes le cas échéant.
- Description : Obtenir un aperçu d'une table spécifique : colonnes (depuis
-
db_overview- Description : Obtenir un aperçu (colonnes, nombre de lignes, lignes d'échantillon) pour toutes les tables d'une base de données spécifiée. Utilise le cache au niveau de la table pour chaque table sauf si
refreshest vrai. - Entrée :
{ "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. } - Sortie : Contenu textuel contenant les aperçus concaténés pour toutes les tables trouvées dans la base de données, séparés par des en-têtes. Renvoie un message d'erreur si la base de données est inaccessible ou ne contient aucune table.
- Description : Obtenir un aperçu (colonnes, nombre de lignes, lignes d'échantillon) pour toutes les tables d'une base de données spécifiée. Utilise le cache au niveau de la table pour chaque table sauf si
Ressources
Ressources directes
starrocks:///databases- Description : Liste toutes les bases de données accessibles à l'utilisateur configuré.
- Requête équivalente :
SHOW DATABASES - Type MIME :
text/plain
Modèles de ressources
-
starrocks:///{db}/{table}/schema- Description : Obtient la définition du schéma d'une table spécifique.
- Requête équivalente :
SHOW CREATE TABLE {db}.{table} - Type MIME :
text/plain
-
starrocks:///{db}/tables- Description : Liste toutes les tables d'une base de données spécifique.
- Requête équivalente :
SHOW TABLES FROM {db} - Type MIME :
text/plain
-
proc:///{+path}- Description : Accède aux informations système internes de StarRocks, similaire à
/procsous Linux. Le paramètrepathspécifie le nœud d'information souhaité. - Requête équivalente :
SHOW PROC '/{path}' - Type MIME :
text/plain - Chemins courants :
/frontends- Informations sur les nœuds FE./backends- Informations sur les nœuds BE (pour les déploiements non cloud natifs)./compute_nodes- Informations sur les nœuds CN (pour les déploiements cloud natifs)./dbs- Informations sur les bases de données./dbs/<DB_ID>- Informations sur une base de données spécifique par ID./dbs/<DB_ID>/<TABLE_ID>- Informations sur une table spécifique par ID./dbs/<DB_ID>/<TABLE_ID>/partitions- Informations de partition pour une table./transactions- Informations sur les transactions regroupées par base de données./transactions/<DB_ID>- Informations sur les transactions pour un ID de base de données spécifique./transactions/<DB_ID>/running- Transactions en cours pour un ID de base de données./transactions/<DB_ID>/finished- Transactions terminées pour un ID de base de données./jobs- Informations sur les tâches asynchrones (Schema Change, Rollup, etc.)./statistic- Statistiques pour chaque base de données./tasks- Informations sur les tâches d'agent./cluster_balance- Informations sur l'état de l'équilibrage de charge./routine_loads- Informations sur les tâches Routine Load./colocation_group- Informations sur les groupes Colocation Join./catalog- Informations sur les catalogues configurés (par exemple, Hive, Iceberg).
- Description : Accède aux informations système internes de StarRocks, similaire à
Invites
Aucune définie par ce serveur.
Comportement de la mise en cache
- Les outils
table_overviewetdb_overviewutilisent un cache en mémoire pour stocker le texte d'aperçu généré. - La clé de cache est un tuple de
(database_name, table_name). - Lorsque
table_overviewest appelé, il vérifie d'abord le cache. Si un résultat existe et que le paramètrerefreshestfalse(par défaut), le résultat mis en cache est renvoyé immédiatement. Sinon, il récupère les données depuis StarRocks, les stocke dans le cache, puis les renvoie. - Lorsque
db_overviewest appelé, il liste toutes les tables de la base de données, puis tente de récupérer l'aperçu de chaque table en utilisant la même logique de cache quetable_overview(vérification du cache d'abord, récupération si nécessaire et querefreshestfalseou en cas d'absence dans le cache). Sirefreshesttruepourdb_overview, cela force une actualisation pour toutes les tables de cette base de données. - La variable d'environnement
STARROCKS_OVERVIEW_LIMITfournit une cible indicative pour la longueur maximale de la chaîne d'aperçu générée par table lors du remplissage du cache, aidant à gérer l'utilisation de la mémoire. - Les résultats mis en cache, y compris les messages d'erreur rencontrés lors de la récupération initiale, sont stockés et renvoyés lors des accès ultérieurs au cache.
Débogage
Après avoir démarré le serveur mcp, vous pouvez utiliser l'inspecteur pour déboguer :
npx @modelcontextprotocol/inspector
Démo

