Tous les produits
Search
Centre de documentation

Simple Log Service:Serveur MCP SLS

Dernière mise à jour :Sep 23, 2026

Simple Log Service (SLS) fournit un serveur Model Context Protocol (MCP) officiel qui connecte les agents d'IA à vos ressources SLS. Après avoir ajouté le serveur MCP SLS à un agent tel que Qoder ou Codex, vous pouvez parcourir les projets et les LogStores, interroger et analyser les journaux, et diagnostiquer les alertes en utilisant le langage naturel.

Fonctionnalités du serveur MCP SLS

Le serveur MCP SLS propose 11 outils répartis en trois catégories. L'agent d'IA sélectionne l'outil correspondant à votre demande, ce qui vous évite de devoir mémoriser les points d'entrée de la console ou rédiger manuellement des instructions de requête.

  • Découverte des ressources : Demandez quels projets et LogStores vous possédez au lieu de vous connecter à la console pour les parcourir un par un.

  • Interrogation et analyse des journaux : Décrivez en une phrase ce que vous souhaitez interroger plutôt que de naviguer entre les pages de la console. Ces outils couvrent le parcours classique d'analyse des journaux : vérification de la configuration de l'index, exécution d'une requête, puis examen de la distribution temporelle.

  • Diagnostic des alertes : Lorsqu'une alerte est déclenchée, demandez à l'agent d'IA d'en analyser la cause et de localiser rapidement le problème.

    Pour consulter les outils de chaque catégorie, reportez-vous à la section Outils pris en charge.

Fonctionnement du serveur MCP SLS

Model Context Protocol (MCP) est une norme ouverte qui permet aux assistants d'IA de se connecter à des sources de données et à des outils externes de manière uniforme. Lorsqu'un service fournit un serveur MCP, les assistants d'IA peuvent utiliser ses fonctionnalités selon le principe du Plug and Play.

Le serveur MCP SLS s'exécute sur votre machine locale. Une fois qu'un agent d'IA y est connecté, le serveur appelle l'API OpenAPI SLS en votre nom en utilisant les identifiants OAuth que vous avez configurés. Le schéma suivant illustre le parcours de bout en bout.

AI agent (Qoder, Codex, and so on)
 │ MCP protocol (stdio transport)
 ▼
alibabacloud-sls-mcp-proxy (runs locally)
 │ OAuth credentials (from an Alibaba Cloud CLI profile)
 ▼
Simple Log Service (SLS) OpenAPI

Considérations préalables

Examinez les points suivants avant de connecter le serveur MCP SLS à un agent d'IA :

  • Authentification : Le serveur MCP SLS s'authentifie auprès de SLS à l'aide d'identifiants OAuth stockés dans un profil Alibaba Cloud CLI. Vous vous connectez via un navigateur, ce qui vous évite de créer ou de coller une paire AccessKey.

  • Autorisation RAM unique : Avant que toute personne disposant d'un compte Alibaba Cloud ne se connecte avec OAuth pour la première fois, un administrateur RAM doit installer l'application official-cli et ajouter les utilisateurs RAM ou les rôles qui utilisent Alibaba Cloud CLI à la liste d'autorisation. Pour obtenir des instructions, consultez la section Accorder l'accès OAuth à Alibaba Cloud CLI.

  • Accès indépendant de la région : Vous n'avez pas besoin de spécifier la région d'un projet lorsque vous y accédez. Le serveur MCP SLS fait correspondre automatiquement la région appropriée, de sorte qu'un seul profil d'identifiants vous offre un accès interrégional à tous vos projets.

  • Comportement des outils d'alerte : Les outils de diagnostic des alertes sont en lecture seule et ne modifient pas l'état des alertes. Le masquage varie selon l'outil : sls_list_alerts ne renvoie ni instructions de requête ni cibles de notification, et sls_get_alert renvoie des requêtes de diagnostic avec les configurations de notification sensibles masquées.

Prérequis

  • Un compte Alibaba Cloud. Si vous utilisez un utilisateur Resource Access Management (RAM), celui-ci doit disposer des autorisations d'accès pour SLS.

  • L'outil uv installé sur votre machine locale. Le serveur MCP SLS est démarré avec la commande uvx, fournie avec uv. Pour les instructions d'installation, consultez la documentation uv.

Accorder l'accès OAuth à Alibaba Cloud CLI

Un administrateur RAM effectue les étapes suivantes une seule fois pour le compte Alibaba Cloud. Vous n'avez pas besoin de les répéter ultérieurement. Si vous n'êtes pas administrateur RAM, confirmez auprès de votre administrateur que cette autorisation est complète avant de commencer le démarrage rapide.

  1. Installez l'application CLI : Connectez-vous à la console RAM. Dans le volet de navigation de gauche, choisissez OAuth (Preview), puis cliquez sur l'onglet Third-party Application. Si l'application official-cli ne figure pas dans la liste, sélectionnez Official CLI pour l'installer.

  2. Attribuez des identités : Ouvrez la page des détails de l'application official-cli et cliquez sur l'onglet Allowed Identities. Cliquez sur Add Users or roles pour ajouter les utilisateurs RAM ou les rôles devant utiliser Alibaba Cloud CLI à la liste d'autorisation.

Démarrage rapide

Les étapes suivantes sont effectuées par l'utilisateur de l'agent d'IA. Elles supposent que l'autorisation OAuth unique décrite dans la section précédente est terminée.

Étape 1 : Installer Alibaba Cloud CLI

Exécutez la commande suivante pour installer Alibaba Cloud CLI.

sudo /bin/bash -c "$(curl -fsSL https://aliyuncli.alicdn.com/install.sh)"

Une fois l'installation terminée, exécutez aliyun version. Si la commande renvoie un numéro de version, l'installation a réussi.

Étape 2 : Se connecter avec OAuth et créer un profil d'identifiants

Exécutez la commande suivante. Une page de navigateur s'ouvre automatiquement. Terminez la connexion pour finaliser l'authentification.

aliyun configure --mode OAuth

Une fois la connexion réussie, Alibaba Cloud CLI stocke les identifiants OAuth dans un profil. Le nom de profil par défaut est default. Pour gérer plusieurs comptes ou environnements, utilisez le paramètre -p afin de spécifier un nom de profil personnalisé.

aliyun configure --mode OAuth -p sls-test-oauth

Notez le nom du profil que vous utilisez. Vous le spécifierez avec le paramètre --profile à l'étape 3.

Remarque

Saisissez cn-hangzhou lorsque l'interface CLI vous demande une région. La région que vous spécifiez ne limite pas les projets auxquels le serveur MCP SLS peut accéder.

Étape 3 : Ajouter le serveur MCP SLS à votre agent d'IA

Effectuez la configuration pour le client que vous utilisez. Il n'est pas nécessaire de configurer plus d'un client. Le serveur MCP SLS utilise le transport stdio standard, vous pouvez donc le connecter à tout agent d'IA prenant en charge MCP : définissez la commande de démarrage sur uvx et les arguments sur alibabacloud-sls-mcp-proxy@latest --profile <your profile name>.

Les exemples suivants utilisent le profil default. Si vous avez créé un profil personnalisé avec le paramètre -p à l'étape 2, remplacez default par ce nom de profil.

Remarque

La commande uvx alibabacloud-sls-mcp-proxy@latest télécharge et exécute localement la dernière version du serveur MCP SLS. Chaque commande de cette étape nécessite uvx, fourni avec uv.

Clients configurés via une commande CLI

Qoder

# Add the MCP Server
qodercli mcp add \
  --scope user \
  --transport stdio \
  alibabacloud-sls \
  -- uvx alibabacloud-sls-mcp-proxy@latest --profile default

# List the MCP Servers that you added
qodercli mcp list

Codex

# Add the MCP Server
codex mcp add alibabacloud-sls \
  -- uvx alibabacloud-sls-mcp-proxy@latest --profile default

# List the MCP Servers that you added
codex mcp list

Claude Code

# Add the MCP Server. --scope user applies the configuration to all projects of the current user.
claude mcp add --scope user alibabacloud-sls \
  -- uvx alibabacloud-sls-mcp-proxy@latest --profile default

# List the MCP Servers that you added
claude mcp list

OpenClaw

# Add the MCP Server
openclaw mcp add alibabacloud-sls \
  --command uvx \
  --arg alibabacloud-sls-mcp-proxy@latest \
  --arg --profile \
  --arg default

# List the MCP Servers that you added
openclaw mcp list

Clients configurés via un fichier de configuration

Cursor, Cline, Cherry Studio et autres clients basés sur JSON

Pour les clients qui configurent les serveurs MCP dans un fichier JSON, ajoutez le contenu suivant au fichier de configuration MCP :

{
  "mcpServers": {
    "alibabacloud-sls": {
      "command": "uvx",
      "args": [
        "alibabacloud-sls-mcp-proxy@latest",
        "--profile",
        "default"
      ]
    }
  }
}

Hermes Agent

Hermes Agent gère les serveurs MCP dans un fichier de configuration. Modifiez le fichier ~/.hermes/config.yaml dans votre répertoire personnel, ou créez-le s'il n'existe pas, et ajoutez le contenu suivant :

mcp_servers:
  alibabacloud-sls:
    command: uvx
    args:
      - alibabacloud-sls-mcp-proxy@latest
      - --profile
      - default

Enregistrez le fichier et redémarrez Hermes Agent, ou exécutez /reload-mcp dans une session pour recharger la configuration MCP.

Étape 4 : Vérifier la connexion

Ouvrez votre agent d'IA et saisissez une demande en langage naturel.

List the SLS projects that I can access

Si l'agent d'IA renvoie votre liste de projets, le serveur MCP SLS est connecté. Si la liste des projets n'est pas renvoyée, vérifiez les points suivants :

  • La commande uvx est disponible sur votre machine locale.

  • L'autorisation OAuth unique couvre votre utilisateur ou rôle RAM.

  • La valeur --profile dans la configuration du client correspond au nom du profil que vous avez créé à l'étape 2.

Exemples d'utilisation

Une fois la connexion établie, posez directement des questions en langage naturel dans votre agent d'IA. Les exemples suivants illustrent des utilisations typiques.

Exemple 1 : Trouver des ressources

List the SLS projects that I can access in the China (Hangzhou) region

L'agent d'IA appelle sls_list_projects et renvoie la liste des projets. Vous pouvez ensuite poser une question de suivi :

Which Logstores does the nginx-prod project contain?

L'agent d'IA appelle sls_list_logstores et répertorie les LogStores correspondants.

Exemple 2 : Interroger les journaux

Query the logs that contain error in the access-log Logstore of the nginx-prod project over the last 1 hour

L'agent d'IA appelle sls_query_logs et utilise automatiquement une plage de temps relative telle que now-1h à now. Pour comprendre la distribution du volume de journaux, posez une question de suivi :

Approximately how many logs are there? Show me the distribution over time

L'agent d'IA appelle sls_get_log_histogram et renvoie le nombre total de journaux correspondants ainsi que leur distribution temporelle.

Exemple 3 : Afficher le contexte du journal

Un seul journal ne fournit souvent pas suffisamment d'informations lors du dépannage. Demandez à l'agent d'IA de récupérer le contexte du journal :

Show me the 20 log lines before and after this error log

L'agent d'IA utilise les valeurs __pack_id__ et __pack_meta__ du résultat de la requête précédente, appelle sls_get_context_logs, et renvoie le contexte complet avant et après le journal cible.

Exemple 4 : Diagnostiquer une alerte

Why was my cpu-high alert triggered over the last 24 hours? Run a diagnosis for me

L'agent d'IA appelle sls_diagnose_alert, qui résume le cycle de vie, la gravité, la raison de l'évaluation et les preuves de requête de l'instance d'alerte. Ce résumé vous aide à localiser rapidement la cause.

Déboguer avec MCP Inspector

Pour déboguer les outils et les paramètres du serveur MCP SLS pendant le développement, utilisez l'outil officiel MCP Inspector pour ouvrir une interface de débogage basée sur un navigateur. Cette commande nécessite Node.js sur votre machine locale, car Node.js fournit la commande npx. Remplacez sls-test-oauth par le nom de votre profil d'identifiants.

npx -y @modelcontextprotocol/inspector@latest -- uvx alibabacloud-sls-mcp-proxy@latest --profile sls-test-oauth

Outils pris en charge

Outil

Catégorie

Description

sls_list_projects

Découverte des ressources

Récupère les projets SLS auxquels l'appelant actuel peut accéder. Prend en charge des conditions de filtrage telles que la région, le nom et le groupe de ressources.

sls_list_logstores

Découverte des ressources

Récupère les LogStores qui stockent les données de journal dans un projet spécifié. Cet outil exclut les metricstores.

sls_list_metricstores

Découverte des ressources

Récupère les metricstores qui stockent les données de métriques dans un projet spécifié.

sls_get_logstore_index

Interrogation et analyse des journaux

Récupère la configuration de l'index d'un LogStore.

sls_query_logs

Interrogation et analyse des journaux

Interroge les journaux bruts ou exécute une analyse SQL SLS. Prend en charge les plages de temps relatives.

sls_get_log_histogram

Interrogation et analyse des journaux

Interroge le nombre total de journaux correspondants et leur distribution temporelle dans une plage de temps spécifiée.

sls_get_context_logs

Interrogation et analyse des journaux

Récupère le contexte avant et après un journal cible. Les paramètres pack_id et pack_meta prennent les valeurs __pack_id__ et __pack_meta__ du journal cible.

sls_list_alerts

Diagnostic des alertes

Répertorie un résumé de sécurité des règles d'alerte par page. Les instructions de requête et les cibles de notification ne sont pas renvoyées.

sls_get_alert

Diagnostic des alertes

Récupère la planification, les conditions de déclenchement et les requêtes de diagnostic d'une règle d'alerte unique. Les configurations de notification sensibles sont masquées.

sls_list_alert_history

Diagnostic des alertes

Interroge l'historique de déclenchement et de résolution d'une règle d'alerte, ainsi que les résultats de requête enregistrés par le moteur d'alerte à ce moment-là.

sls_diagnose_alert

Diagnostic des alertes

Résume le cycle de vie, la gravité, la raison de l'évaluation et les preuves de requête des instances d'alerte récentes. Ne modifie pas l'état de l'alerte.

Paramètres des outils

Les tableaux suivants décrivent les paramètres d'entrée de chaque outil. Lorsque vous appelez un outil via un agent IA, il n'est généralement pas nécessaire de gérer ces paramètres, car l'agent IA les renseigne automatiquement. Consultez ces tableaux pour une utilisation avancée et le débogage.

sls_list_projects

Paramètre

Type

Obligatoire

Description

offset

integer

Non

Décalage de pagination basé sur zéro. Valeur par défaut : 0.

size

integer

Non

Nombre de projets à renvoyer par page. La valeur par défaut et la valeur maximale dans SLS sont toutes deux de 500.

region_id

string

Non

Filtre par ID de région SLS, par exemple cn-hangzhou.

project_name

string

Non

Filtre par nom de projet. Ce champ sert de condition de recherche et n'est pas validé selon les règles exactes de dénomination des ressources.

resource_group_id

string

Non

Filtre par ID de groupe de ressources.

search_text

string

Non

Condition de recherche en texte libre pour les projets.

sls_list_logstores

Paramètre

Type

Obligatoire

Description

project

string

Oui

Nom du projet SLS cible.

offset

integer

Non

Décalage de pagination basé sur zéro. Valeur par défaut : 0.

size

integer

Non

Nombre de LogStores à renvoyer par page. La valeur par défaut et la valeur maximale dans SLS sont toutes deux de 500.

sls_list_metricstores

Paramètre

Type

Obligatoire

Description

project

string

Oui

Nom du projet SLS cible.

offset

integer

Non

Décalage de pagination basé sur zéro. Valeur par défaut : 0.

size

integer

Non

Nombre de metricstores à renvoyer par page. La valeur par défaut et la valeur maximale dans SLS sont toutes deux de 500.

sls_get_logstore_index

Paramètre

Type

Obligatoire

Description

project

string

Oui

Nom du projet SLS cible.

logstore

string

Oui

Nom du LogStore dont vous souhaitez lire la configuration d'index.

sls_query_logs

Paramètre

Type

Obligatoire

Description

project

string

Oui

Nom du projet SLS cible.

logstore

string

Oui

Nom du LogStore que vous souhaitez interroger.

query

string

Non

Instruction de requête ou d'analyse SLS. Valeur par défaut : vide.

topic

string

Non

Condition de filtre de topic SLS.

from

string

Oui

Début de la plage temporelle de la requête. Le point dans le temps spécifié est inclus, par exemple 1786342175. Prend en charge les secondes Unix ou une heure relative telle que now-1h.

to

string

Oui

Fin de la plage temporelle de la requête. Le point dans le temps spécifié est exclu, par exemple 1786342175. Prend en charge les secondes Unix ou une heure relative telle que now.

lines

integer

Non

Nombre maximal de lignes à renvoyer pour une requête non SQL. La valeur par défaut et la valeur maximale dans SLS sont toutes deux de 100.

offset

integer

Non

Décalage de résultat basé sur zéro pour une requête non SQL. Valeur par défaut : 0.

reverse

boolean

Non

Indique si les résultats d'une requête non SQL doivent être renvoyés dans l'ordre chronologique inverse. Valeur par défaut : false.

power_sql

boolean

Non

Indique s'il faut utiliser des ressources de calcul SQL dédiées. Valeur par défaut : false.

sls_get_log_histogram

Paramètre

Type

Obligatoire

Description

project

string

Oui

Nom du projet SLS cible.

logstore

string

Oui

Nom du LogStore que vous souhaitez interroger.

from

integer

Oui

Début de la plage temporelle de la requête, en secondes Unix. Le point dans le temps spécifié est inclus.

to

integer

Oui

Fin de la plage temporelle de la requête, en secondes Unix. Le point dans le temps spécifié est exclu.

topic

string

Non

Condition de filtre de topic SLS.

query

string

Non

Expression de requête SLS. L'analyse SQL n'est pas prise en charge.

sls_get_context_logs

Paramètre

Type

Obligatoire

Description

project

string

Oui

Nom du projet SLS cible.

logstore

string

Oui

Nom du LogStore contenant le journal cible.

pack_id

string

Oui

Valeur __pack_id__ issue du résultat précédent de sls_query_logs.

pack_meta

string

Oui

Valeur __pack_meta__ issue du résultat précédent de sls_query_logs.

back_lines

integer

Non

Nombre de lignes de journal à renvoyer avant le journal cible. Valeur par défaut : 10. Valeur maximale : 100.

forward_lines

integer

Non

Nombre de lignes de journal à renvoyer après le journal cible. Valeur par défaut : 10. Valeur maximale : 100.

sls_list_alerts

Paramètre

Type

Obligatoire

Description

project

string

Oui

Nom du projet SLS contenant les règles d'alerte cibles.

alert_name

string

Non

Condition de filtre par nom de règle d'alerte.

dashboard

string

Non

Condition de filtre par fournisseur de ressource de tableau de bord.

offset

integer

Non

Décalage de pagination basé sur zéro. Valeur par défaut : 0.

size

integer

Non

Nombre de règles d'alerte à renvoyer par page. Si la valeur est 0 ou si le paramètre est omis, la valeur par défaut de l'API SLS est utilisée.

sls_get_alert

Paramètre

Type

Obligatoire

Description

project

string

Oui

Nom du projet SLS contenant la règle d'alerte cible.

alert_name

string

Oui

Nom exact de la règle d'alerte que vous souhaitez récupérer.

sls_list_alert_history

Paramètre

Type

Obligatoire

Description

project

string

Oui

Nom du projet SLS contenant le LogStore internal-alert-history.

alert_name

string

Non

Filtre par nom exact de la règle d'alerte.

alert_id

string

Non

Filtre par ID exact de l'instance d'alerte.

alert_status

string

Non

Filtre par état de cycle de vie de l'alerte, par exemple firing ou resolved.

from

string

Oui

Début de la plage temporelle de la requête d'historique. Le point dans le temps spécifié est inclus. Prend en charge les secondes Unix ou une heure relative telle que now-24h.

to

string

Oui

Fin de la plage temporelle de la requête d'historique. Le point dans le temps spécifié est exclu. Prend en charge les secondes Unix ou une heure relative telle que now.

lines

integer

Non

Nombre maximal d'événements d'historique. Valeur par défaut : 20. Valeur maximale : 100.

offset

integer

Non

Décalage de résultat d'historique basé sur zéro. Valeur par défaut : 0.

sls_diagnose_alert

Paramètre

Type

Obligatoire

Description

project

string

Oui

Nom du projet SLS contenant la règle d'alerte et le LogStore internal-alert-history.

alert_name

string

Oui

Nom exact de la règle d'alerte que vous souhaitez diagnostiquer.

alert_id

string

Non

ID de l'instance d'alerte. Si vous omettez ce paramètre, la dernière instance correspondante dans la plage temporelle de diagnostic est diagnostiquée.

from

string

Oui

Début de la plage temporelle de diagnostic. Le point dans le temps spécifié est inclus. Prend en charge les secondes Unix ou une heure relative telle que now-24h.

to

string

Oui

Fin de la plage temporelle de diagnostic. Le point dans le temps spécifié est exclu. Prend en charge les secondes Unix ou une heure relative telle que now.

max_events

integer

Non

Nombre des derniers événements d'historique à renvoyer comme preuve de diagnostic. Valeur par défaut : 20. Valeur maximale : 100.

FAQ

Dois-je configurer une paire AccessKey pour utiliser SLS MCP Server ?

Non. SLS MCP Server prend en charge la connexion OAuth : vous vous connectez via un navigateur pour effectuer l'authentification, et les identifiants sont stockés dans un profil Alibaba Cloud CLI. Vous ne créez ni ne collez jamais de paire AccessKey.

L'autorisation d'administrateur RAM doit-elle être répétée ?

Non. Il s'agit d'une configuration unique. Une fois qu'un administrateur RAM a installé l'application official-cli et attribué des utilisateurs ou des rôles RAM, ces utilisateurs peuvent se connecter directement avec OAuth sans répéter les étapes.

Comment gérer plusieurs comptes ou plusieurs environnements ?

Utilisez le paramètre -p pour créer plusieurs profils, par exemple aliyun configure --mode OAuth -p sls-test-oauth. Spécifiez ensuite le nom de profil correspondant avec le paramètre --profile lorsque vous ajoutez SLS MCP Server à votre client. Vous pouvez également ajouter un serveur MCP distinct pour chaque profil.

Quelle région dois-je saisir lors de la configuration des identifiants ?

Saisissez cn-hangzhou lorsque l'interface CLI vous demande une région, comme décrit à l'étape 2. Cette valeur ne limite pas les projets accessibles, car SLS MCP Server fait correspondre automatiquement la région appropriée lorsque vous accédez à un projet. Pour afficher les ressources d'une seule région, filtrez à l'aide du paramètre region_id lors de la liste des projets.

Que faire si la commande uvx est introuvable ?

La commande uvx est fournie par l'outil uv, qui est un prérequis pour SLS MCP Server. Installez d'abord uv. Pour obtenir les instructions d'installation, consultez la documentation uv. Une fois l'installation terminée, ouvrez un nouveau terminal et réessayez.