> ## Documentation Index
> Fetch the complete documentation index at: https://docs.appsignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Référence des outils MCP

AppSignal MCP expose 24 outils répartis sur sept domaines : **incidents d'erreur**, **performance**, **détection d'anomalies**, **journalisation**, **métriques**, **tableaux de bord** et **découverte d'applications**. Les outils comprennent à la fois des opérations de lecture et d'écriture.

## Flux de travail

Ces exemples montrent comment les outils se combinent pour des tâches courantes.

### Enquête sur une erreur en production

1. Lister les exceptions ouvertes récentes : *« Show me all open incidents in production from the last 24 hours »*
2. Obtenir les détails complets sur un incident spécifique : *« Get the details for incident #847 including the stack trace »*
3. Récupérer les traces pour voir ce qui s'est passé au niveau du code : *« Get the error traces for incident #847 »*
4. Documenter vos conclusions : *« Add a note to incident #847: investigated the database timeout — connection pool was exhausted during peak traffic »*
5. La résoudre : *« Close incident #847 »*

### Profilage d'une action lente

1. Obtenir un aperçu des performances : *« Which actions are slowest in the web namespace right now? »*
2. Récupérer les traces pour le pire contrevenant : *« Get traces for BlogPostsController#index from the last hour »*
3. Inspecter l'arbre des spans pour trouver le goulot d'étranglement : *« Show me the full span tree for trace abc123 »*
4. Plonger dans un span spécifique : *« Get the details for span def456 in trace abc123 »*

### Triage d'un lot d'incidents

1. *« Find all open incidents in the background namespace from the last week »*
2. *« Mark incidents #120, #121, and #122 as work in progress and assign them to Jana »*
3. *« Close all incidents related to ActionMailer — they were fixed in the last deploy »*

### Recherche de journaux pendant un incident

1. *« Find all error logs from the last hour »*
2. *« Show me logs where message contains 'timeout' on web-1 between 14:00 and 15:00 »*
3. *« Get fatal logs from the payments source over the last 30 minutes »*

### Reconstruction du parcours d'un client

Lorsqu'un utilisateur signale qu'un problème est survenu, la réponse est généralement répartie sur les journaux de plusieurs sources, ainsi que sur les erreurs et les traces. Recoller cette chronologie à la main est le genre de travail que l'interface de journalisation ne peut pas faire pour vous, mais qu'un agent peut faire.

1. *« Get all logs for user.id=4321 from production over the last 24 hours, across every source »*
2. *« Narrow that to the window between 14:00 and 15:30 UTC and group the results by source »*
3. *« List any open exception incidents from production in that same window — anything tagged with user.id=4321? »*
4. *« For incident #903, pull the error traces and walk the span tree »*
5. *« Summarize what happened: which actions did this user hit, what failed, and where did the error originate? »*

Cela utilise `get_log_lines`, `get_exception_incidents` et `get_traces` dans une seule conversation. L'étape finale de résumé est là où MCP justifie son intérêt — l'agent compose le récit, pas vous.

### Configuration du traitement des journaux

AppSignal exécute les actions de ligne de journal lors de l'ingestion, dans l'ordre que vous définissez. Un modèle courant consiste à émettre une métrique, créer un déclencheur, puis filtrer — cela garantit qu'AppSignal capture le signal avant d'écarter la ligne de journal.

1. Vérifier les actions de ligne de journal existantes et leur ordre : utilisez `get_app_resources` avec `sections: ["log_line_actions"]`
2. *« Create a metrics action that counts log lines where severity is error as log.error\_count »*
3. *« Add a trigger action that fires an alert when severity is fatal »*
4. *« Add a filter to drop all health check log lines »*
5. *« Reorder those actions so the metrics action runs first, then the trigger, then the filter »*

### Création d'un déclencheur de détection d'anomalies

1. Découvrir les métriques disponibles : *« What metrics are available for my production app? »*
2. Vérifier les tags disponibles : *« What tags are available for response\_time? »*
3. Créer le déclencheur : *« Create a trigger that fires when mean response time exceeds 500ms for more than 5 minutes, and notify the Slack #alerts channel »*
4. Archiver un ancien déclencheur une fois remplacé : utilisez `get_triggers` pour trouver d'abord l'ID, puis *« Archive the old response\_time trigger »*

### Construction d'un tableau de bord de surveillance

1. *« What metrics are available for my production app? »*
2. *« Create a dashboard called 'API Health' in production »*
3. *« Add a line chart of p95 response time by action to the API Health dashboard »*
4. *« Add an area chart of error rate broken down by namespace »*

***

## Référence des outils

Chaque outil prend `app_name` et `app_environment` pour identifier l'application cible. Les deux sont mis en correspondance sans tenir compte de la casse, donc `MyApp/Production` et `myapp/production` se résolvent vers la même application.

### Découverte d'applications

#### `get_applications`

Obtenez toutes les applications AppSignal auxquelles l'utilisateur a accès.

Retourne les applications au format `app_name/app_environment`. Utilisez-le d'abord pour découvrir les applications disponibles avant d'appeler d'autres outils.

Aucun paramètre requis.

***

#### `get_app_resources`

Découvrez les ressources disponibles dans une application AppSignal — espaces de noms, tableaux de bord, utilisateurs, notifieurs, sources de journaux, actions de ligne de journal et marqueurs de déploiement.

Particulièrement utile lors de la configuration de déclencheurs, de l'attribution d'incidents ou de la compréhension de la structure d'une application.

| Paramètre         | Requis | Description                                                                                                                                                               |
| ----------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `app_name`        | oui    | Nom de l'application AppSignal.                                                                                                                                           |
| `app_environment` | oui    | Environnement (par exemple `production`, `staging`).                                                                                                                      |
| `sections`        | non    | Sections à récupérer : `users`, `notifiers`, `namespaces`, `dashboards`, `log_sources`, `log_line_actions`, `log_views`, `deploy_markers`. Retourne tout si non spécifié. |

***

### Incidents d'erreur

#### `get_exception_incidents`

Listez et recherchez les exceptions et erreurs AppSignal.

Utilisez-le pour obtenir un aperçu des exceptions récentes, rechercher dans une période, trouver des incidents par état, ou vérifier quels incidents nécessitent attention. Retourne 50 incidents par page.

| Paramètre         | Requis | Description                                                                                        |
| ----------------- | ------ | -------------------------------------------------------------------------------------------------- |
| `app_name`        | oui    | Nom de l'application AppSignal.                                                                    |
| `app_environment` | oui    | Environnement.                                                                                     |
| `namespaces`      | non    | Liste séparée par des virgules des espaces de noms à filtrer (par exemple `web,background`).       |
| `start`           | non    | Début de la plage horaire au format ISO 8601. Par défaut, le déploiement le plus récent si omis.   |
| `end`             | non    | Fin de la plage horaire au format ISO 8601. Requis si `start` est fourni.                          |
| `states`          | non    | États séparés par des virgules : `open`, `closed`, `wip`. Retourne tous les états si non spécifié. |
| `page`            | non    | Numéro de page (basé sur 1, par défaut 1).                                                         |

***

#### `get_incident`

Obtenez des informations détaillées sur un incident AppSignal.

Retourne l'état actuel, l'attribution, la première et la dernière occurrence, les messages d'erreur, les traces de pile ou les détails de l'alerte d'anomalie. Prend en charge les incidents d'exception et d'anomalie.

| Paramètre         | Requis | Description                                                                        |
| ----------------- | ------ | ---------------------------------------------------------------------------------- |
| `app_name`        | oui    | Nom de l'application AppSignal.                                                    |
| `app_environment` | oui    | Environnement.                                                                     |
| `number`          | oui    | L'ID numérique de l'incident affiché dans les URL et listes d'incidents AppSignal. |

***

#### `update_incidents`

Mettez à jour en masse les incidents d'une application AppSignal.

Utilisez-le pour modifier l'état d'incidents, mettre à jour la gravité ou attribuer et désattribuer des membres d'équipe sur plusieurs incidents à la fois. Utilisez `get_app_resources` avec `sections: ["users"]` pour trouver les ID utilisateur pour l'attribution.

| Paramètre         | Requis | Description                                                                   |
| ----------------- | ------ | ----------------------------------------------------------------------------- |
| `app_name`        | oui    | Nom de l'application AppSignal.                                               |
| `app_environment` | oui    | Environnement.                                                                |
| `incidents`       | non    | Liste des numéros d'incident à mettre à jour (par exemple `[123, 456, 789]`). |
| `state`           | non    | `open`, `closed` ou `wip` (work in progress).                                 |
| `severity`        | non    | `critical`, `high`, `low`, `none`, `informational` ou `untriaged`.            |
| `assign_users`    | non    | Liste des ID utilisateur à attribuer comme gestionnaires.                     |
| `unassign_users`  | non    | Liste des ID utilisateur à retirer de l'incident.                             |

***

#### `create_incident_note`

Créez une note sur un incident AppSignal. Markdown est pris en charge.

Utilisez-le pour ajouter des commentaires, mises à jour de statut, conclusions d'enquête ou étapes de résolution.

| Paramètre         | Requis | Description                                                   |
| ----------------- | ------ | ------------------------------------------------------------- |
| `app_name`        | oui    | Nom de l'application AppSignal.                               |
| `app_environment` | oui    | Environnement.                                                |
| `number`          | oui    | L'ID numérique de l'incident.                                 |
| `content`         | oui    | Contenu de la note. Le formatage Markdown est pris en charge. |

***

### Performance

#### `get_performance`

Aperçu des performances : incidents de performance basés sur des échantillons et actions lentes à partir des traces.

Pour les applications Ruby et Elixir standard, retourne les incidents de performance basés sur des échantillons. Pour les applications qui envoient également des traces OpenTelemetry, retourne en plus une liste classée d'actions avec la durée moyenne, le débit et le taux d'erreur. Les applications en cours de migration vers OpenTelemetry peuvent retourner les deux.

Outils de suivi : utilisez `get_incident` pour inspecter un incident de performance spécifique, `get_traces` pour récupérer des traces d'échantillon pour une action lente, et `update_incidents` pour modifier l'état, la gravité ou les attributions.

| Paramètre         | Requis | Description                                                                                                                                                                                                                                                          |
| ----------------- | ------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `app_name`        | oui    | Nom de l'application AppSignal.                                                                                                                                                                                                                                      |
| `app_environment` | oui    | Environnement.                                                                                                                                                                                                                                                       |
| `namespaces`      | non    | Espaces de noms séparés par des virgules. S'applique à la fois aux incidents de performance et aux actions OpenTelemetry.                                                                                                                                            |
| `start`           | non    | Début de la plage horaire au format ISO 8601. Par défaut, le déploiement le plus récent pour les incidents basés sur des échantillons, ou il y a 24 heures pour les actions OpenTelemetry.                                                                           |
| `end`             | non    | Fin de la plage horaire au format ISO 8601. Requis si `start` est fourni.                                                                                                                                                                                            |
| `states`          | non    | États séparés par des virgules : `open`, `closed`, `wip`. S'applique uniquement aux incidents basés sur des échantillons.                                                                                                                                            |
| `revision`        | non    | Limiter à un déploiement spécifique. Utilisez `"last"` pour le déploiement le plus récent, ou passez un hash de révision. Ignoré lorsque `start`/`end` est fourni. Utilisez `get_app_resources(sections: ["deploy_markers"])` pour lister les révisions disponibles. |
| `page`            | non    | Numéro de page pour les incidents basés sur des échantillons (basé sur 1, par défaut 1). Les actions OpenTelemetry sont retournées sous forme de liste classée complète.                                                                                             |

***

#### `get_traces`

Interrogez les traces de performance et d'erreur, inspectez les arbres de spans et consultez les détails des spans.

Prend en charge deux types de traces :

* **Traces de performance** — identifiées par l'espace de noms et `action_name`. Utilisez-les pour enquêter sur des requêtes lentes.
* **Traces d'erreur** — identifiées par digest. Obtenez le digest depuis `get_incident` ou `get_exception_incidents`, puis utilisez-le ici pour voir les traces d'erreur réelles.

Chaque type de trace prend en charge trois modes :

1. **Mode liste** — trouvez des traces et obtenez les ID de trace. Fournissez l'espace de noms + `action_name`, ou `digest`.
2. **Mode arbre** — passez un `trace_id` pour voir tous les spans sous forme d'arbre compact.
3. **Mode détail de span** — passez `trace_id` et `span_id` pour les attributs de span complets, les événements et les informations de ressource.

Le flux de travail typique est : lister les traces → inspecter un arbre de trace → plonger dans un span.

| Paramètre         | Requis            | Description                                                                                                                      |
| ----------------- | ----------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `app_name`        | oui               | Nom de l'application AppSignal.                                                                                                  |
| `app_environment` | oui               | Environnement.                                                                                                                   |
| `namespace`       | oui (performance) | L'espace de noms dans lequel rechercher (par exemple `web`, `background`). Non nécessaire pour les traces d'erreur.              |
| `action_name`     | oui (performance) | Le nom de l'action (par exemple `BlogPostsController#index`). Non nécessaire pour les traces d'erreur.                           |
| `digest`          | oui (erreur)      | Le digest de l'incident d'exception. Bascule en mode trace d'erreur. Ne peut pas être combiné avec `namespace` ou `action_name`. |
| `trace_id`        | non               | Bascule en mode arbre. Retourne tous les spans pour cette trace.                                                                 |
| `span_id`         | non               | Bascule en mode détail de span. Nécessite `trace_id`.                                                                            |
| `start`           | non               | Début de la plage horaire au format ISO 8601. Par défaut, il y a 24 heures. Traces de performance uniquement.                    |
| `end`             | non               | Fin de la plage horaire au format ISO 8601. Par défaut, maintenant. Traces de performance uniquement.                            |
| `min_duration_ms` | non               | Filtrer les traces plus lentes que ce seuil en millisecondes. Mode liste uniquement.                                             |
| `limit`           | non               | Nombre maximum de traces à retourner (1–100, par défaut 25). Mode liste uniquement.                                              |

***

### Détection d'anomalies

#### `get_anomaly_incidents`

Listez et recherchez les alertes de détection d'anomalies AppSignal.

Retourne 50 alertes par page, y compris les horodatages et valeurs pour chaque alerte.

| Paramètre         | Requis | Description                                                                                                    |
| ----------------- | ------ | -------------------------------------------------------------------------------------------------------------- |
| `app_name`        | oui    | Nom de l'application AppSignal.                                                                                |
| `app_environment` | oui    | Environnement.                                                                                                 |
| `state`           | non    | `open`, `closed`, `warmup`, `cooldown` ou `archived`. Retourne tous les états si non spécifié.                 |
| `trigger_id`      | non    | Filtrer les incidents d'un déclencheur spécifique. Utilisez `get_triggers` pour trouver les ID de déclencheur. |
| `page`            | non    | Numéro de page (basé sur 1, par défaut 1).                                                                     |

***

#### `get_triggers`

Listez les déclencheurs de détection d'anomalies pour une application AppSignal.

Retourne les déclencheurs actifs (non archivés) avec leur configuration complète — conditions, notifieurs et liens vers les tableaux de bord. Utilisez-le pour trouver les ID de déclencheur avant d'appeler `manage_trigger` ou `archive_trigger`.

| Paramètre         | Requis | Description                                                              |
| ----------------- | ------ | ------------------------------------------------------------------------ |
| `app_name`        | oui    | Nom de l'application AppSignal.                                          |
| `app_environment` | oui    | Environnement.                                                           |
| `metric_name`     | non    | Filtrer par nom de métrique (par exemple `response_time`, `error_rate`). |
| `kind`            | non    | Filtrer par type de déclencheur.                                         |
| `tags`            | non    | Filtrer par tags, par exemple `[{"key": "hostname", "value": "web-1"}]`. |
| `page`            | non    | Numéro de page (basé sur 1, par défaut 1).                               |

***

#### `manage_trigger`

Créer ou mettre à jour un déclencheur de détection d'anomalies.

Les déclencheurs sont immuables. Lorsque vous mettez à jour un déclencheur, AppSignal archive celui existant (fermant toutes ses alertes et incidents) et en crée un nouveau avec une référence de chaîne de versions. Fournissez tous les champs pour les opérations de création et de mise à jour.

Utilisez `get_metric_names` et `get_metric_tags` pour découvrir les métriques et champs disponibles. Utilisez `get_app_resources(sections: ["notifiers"])` pour trouver les ID de notifieur.

| Paramètre             | Requis | Description                                                                                                                               |
| --------------------- | ------ | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `app_name`            | oui    | Nom de l'application AppSignal.                                                                                                           |
| `app_environment`     | oui    | Environnement.                                                                                                                            |
| `metric_name`         | oui    | La métrique que ce déclencheur surveille.                                                                                                 |
| `kind`                | oui    | Type de déclencheur. Utilisez `"Advanced"` pour les métriques personnalisées.                                                             |
| `field`               | oui    | Champ de métrique à comparer : `gauge`, `mean`, `p90`, `p95`, `counter` ou `count`.                                                       |
| `condition_value`     | oui    | Valeur seuil (par exemple `500.0` pour « response time > 500ms »).                                                                        |
| `comparison_operator` | oui    | `<`, `>`, `<=`, `>=`, `==` ou `!=`.                                                                                                       |
| `warmup_duration`     | oui    | Minutes pendant lesquelles la condition doit être remplie avant qu'une alerte ne s'ouvre. Utilisez `0` pour immédiat.                     |
| `cooldown_duration`   | oui    | Minutes pendant lesquelles la condition ne doit plus être remplie avant qu'une alerte ne se ferme.                                        |
| `id`                  | non    | ID d'un déclencheur existant à mettre à jour. Si fourni, archive l'ancien déclencheur et en crée un nouveau.                              |
| `notifier_ids`        | non    | ID des notifieurs vers lesquels envoyer les alertes.                                                                                      |
| `tags`                | non    | Filtres de tags pour limiter quelles métriques sont incluses. Prend en charge les caractères génériques (`*`).                            |
| `name`                | non    | Nom d'affichage. Par défaut, le nom de la métrique si non fourni.                                                                         |
| `description`         | non    | Description de ce que ce déclencheur surveille et de ce qu'il faut faire lorsqu'il se déclenche.                                          |
| `dashboard_id`        | non    | ID du tableau de bord à lier dans les notifications.                                                                                      |
| `no_match_is_zero`    | non    | Si vrai, traiter les données métriques manquantes comme 0. Utile pour les compteurs qui peuvent ne pas signaler lorsqu'ils sont inactifs. |
| `format`              | non    | Format des données de la métrique (par exemple `duration`, `size`, `percent`).                                                            |

***

#### `archive_trigger`

Archiver un déclencheur de détection d'anomalies et fermer toutes les alertes et incidents associés.

Idempotent — n'effectue aucune opération si le déclencheur est déjà archivé. Utilisez `get_triggers` pour trouver l'ID du déclencheur.

| Paramètre         | Requis | Description                     |
| ----------------- | ------ | ------------------------------- |
| `app_name`        | oui    | Nom de l'application AppSignal. |
| `app_environment` | oui    | Environnement.                  |
| `id`              | oui    | ID du déclencheur à archiver.   |

***

### Journalisation

#### `get_log_lines`

Interrogez les lignes de journal en utilisant la syntaxe d'expression d'AppSignal.

Prend en charge la correspondance exacte, contient, la négation, les comparaisons numériques, la logique booléenne et les attributs imbriqués. Retourne jusqu'à 100 lignes par appel, du plus récent au plus ancien par défaut. Pour les grandes plages horaires, divisez en plusieurs appels et itérez vers l'avant.

**Syntaxe de requête :**

| Modèle                   | Exemple                                                 |
| ------------------------ | ------------------------------------------------------- |
| Correspondance exacte    | `severity=error`                                        |
| Contient                 | `message:timeout`                                       |
| Ne contient pas          | `message!:debug`                                        |
| Non égal                 | `hostname!=web-1`                                       |
| Comparaison numérique    | `duration>100`                                          |
| Logique booléenne        | `severity=error AND (hostname=web-1 OR hostname=web-2)` |
| Valeurs entre guillemets | `group="background jobs"`                               |
| Attributs imbriqués      | `user.id=123`                                           |

Champs disponibles : `severity`, `hostname`, `group`, `message` et tout attribut personnalisé.

| Paramètre         | Requis | Description                                                                                                                                                                   |
| ----------------- | ------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `app_name`        | oui    | Nom de l'application AppSignal.                                                                                                                                               |
| `app_environment` | oui    | Environnement.                                                                                                                                                                |
| `query`           | oui    | Requête d'expression. Utilisez une chaîne vide pour récupérer tous les journaux.                                                                                              |
| `source_ids`      | non    | ID des sources de journaux à interroger. Interroge toutes les sources si non spécifié. Utilisez `get_app_resources(sections: ["log_sources"])` pour trouver les ID de source. |
| `start`           | non    | Début de la plage horaire au format ISO 8601. Par défaut, une fenêtre de requête plus tôt.                                                                                    |
| `end`             | non    | Fin de la plage horaire au format ISO 8601. Par défaut, maintenant.                                                                                                           |
| `limit`           | non    | Nombre de lignes de journal à retourner (1–100, par défaut 50).                                                                                                               |
| `order`           | non    | `desc` (du plus récent au plus ancien, par défaut) ou `asc` (du plus ancien au plus récent).                                                                                  |

***

#### `manage_log_line_action`

Créer ou mettre à jour une action de ligne de journal.

Les actions de ligne de journal s'exécutent pendant l'ingestion des journaux, dans l'ordre que vous définissez. Il existe trois types :

* **filter** — écarte les lignes de journal correspondantes afin qu'elles ne soient jamais stockées ni traitées
* **trigger** — déclenche des alertes et incidents lorsque la requête correspond
* **metrics** — extrait des métriques de compteur, jauge ou distribution à partir des lignes de journal correspondantes

L'ordre d'exécution est important : si un filtre écarte une ligne de journal, les actions suivantes ne la verront jamais. Un modèle courant consiste à placer les actions de métriques et de déclencheurs avant toute action de filtre. Utilisez `reorder_log_line_actions` pour modifier l'ordre après la création.

Les nouvelles actions sont ajoutées à la fin de l'ordre d'exécution.

| Paramètre          | Requis         | Description                                                                                                                                                                                                                                                                                                                                          |
| ------------------ | -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `app_name`         | oui            | Nom de l'application AppSignal.                                                                                                                                                                                                                                                                                                                      |
| `app_environment`  | oui            | Environnement.                                                                                                                                                                                                                                                                                                                                       |
| `name`             | oui (création) | Nom de l'action (par exemple `"Drop health checks"`, `"Track error count"`).                                                                                                                                                                                                                                                                         |
| `query`            | oui (création) | Expression de requête à comparer aux lignes de journal.                                                                                                                                                                                                                                                                                              |
| `action_type`      | oui (création) | `filter`, `trigger` ou `metrics`. Ne peut pas être modifié lors d'une mise à jour.                                                                                                                                                                                                                                                                   |
| `id`               | non            | ID d'une action existante à mettre à jour. Si omis, crée une nouvelle action.                                                                                                                                                                                                                                                                        |
| `source_ids`       | non            | ID des sources de journaux auxquelles cette action s'applique. S'applique à toutes les sources si non spécifié.                                                                                                                                                                                                                                      |
| `log_line_metrics` | non            | Définitions de métriques à extraire. Requis lors de la création d'une action `metrics`. Chaque métrique requiert `name` et `metric_type` (`counter`, `gauge` ou `distribution`). `gauge` et `distribution` requièrent également un `field` pour extraire la valeur. Lors d'une mise à jour, remplace toutes les définitions de métriques existantes. |

***

#### `reorder_log_line_actions`

Modifier l'ordre d'exécution des actions de ligne de journal.

Fournissez les ID d'action dans l'ordre souhaité. Les ID d'action non inclus sont ajoutés à la fin dans leur ordre relatif actuel. Utilisez `get_app_resources(sections: ["log_line_actions"])` pour trouver les ID et voir l'ordre actuel.

| Paramètre         | Requis | Description                                                                                                                |
| ----------------- | ------ | -------------------------------------------------------------------------------------------------------------------------- |
| `app_name`        | oui    | Nom de l'application AppSignal.                                                                                            |
| `app_environment` | oui    | Environnement.                                                                                                             |
| `action_ids`      | oui    | Liste ordonnée des ID d'actions de ligne de journal. Le premier ID de la liste est exécuté en premier pendant l'ingestion. |

***

#### `delete_log_line_action`

Supprimer définitivement une action de ligne de journal.

Utilisez `get_app_resources(sections: ["log_line_actions"])` pour d'abord trouver l'ID de l'action.

| Paramètre         | Requis | Description                                     |
| ----------------- | ------ | ----------------------------------------------- |
| `app_name`        | oui    | Nom de l'application AppSignal.                 |
| `app_environment` | oui    | Environnement.                                  |
| `id`              | oui    | ID de l'action de ligne de journal à supprimer. |

***

### Métriques

#### `discover_metrics`

Découvrez les catégories de métriques disponibles et leurs métriques pour la surveillance.

Utilisez-le pour obtenir un aperçu de ce que vous pouvez surveiller, ou pour explorer une catégorie spécifique. Accepte également une référence `dashboard:id` pour afficher les métriques utilisées dans un tableau de bord spécifique.

| Paramètre         | Requis | Description                                                                                                          |
| ----------------- | ------ | -------------------------------------------------------------------------------------------------------------------- |
| `app_name`        | oui    | Nom de l'application AppSignal.                                                                                      |
| `app_environment` | oui    | Environnement.                                                                                                       |
| `metric_subject`  | non    | Nom de la catégorie de métrique (par exemple `performance_metrics`, `host_metrics`) ou une référence `dashboard:id`. |

***

#### `get_metric_names`

Obtenez les noms de toutes les métriques pour l'application donnée.

Retourne les noms des métriques sous forme de chaîne séparée par des virgules. Utilisez-les comme entrée pour `get_metric_tags`, `get_metrics_timeseries` et `get_metrics_list`.

| Paramètre         | Requis | Description                     |
| ----------------- | ------ | ------------------------------- |
| `app_name`        | oui    | Nom de l'application AppSignal. |
| `app_environment` | oui    | Environnement.                  |

***

#### `get_metric_tags`

Obtenez les tags et le type de métrique (Gauge, Counter, etc.) pour une métrique spécifique.

Utilisez les résultats pour construire des requêtes valides avec `get_metrics_timeseries` et `get_metrics_list`.

| Paramètre         | Requis | Description                                                                             |
| ----------------- | ------ | --------------------------------------------------------------------------------------- |
| `app_name`        | oui    | Nom de l'application AppSignal.                                                         |
| `app_environment` | oui    | Environnement.                                                                          |
| `metric_name`     | oui    | Nom de la métrique. Utilisez `get_metric_names` pour trouver les métriques disponibles. |

***

#### `get_metrics_timeseries`

Obtenez une série chronologique pour une métrique dans l'application donnée.

Retourne des données point par point pour une plage horaire, un type de métrique et une combinaison de tags donnés. Les valeurs des tags prennent en charge la correspondance par caractère générique avec `*`.

| Paramètre         | Requis | Description                                                                                                           |
| ----------------- | ------ | --------------------------------------------------------------------------------------------------------------------- |
| `app_name`        | oui    | Nom de l'application AppSignal.                                                                                       |
| `app_environment` | oui    | Environnement.                                                                                                        |
| `metric_name`     | oui    | Nom de la métrique.                                                                                                   |
| `metric_type`     | oui    | `COUNT`, `COUNTER`, `GAUGE`, `MEAN`, `P90` ou `P95`. Utilisez `get_metric_tags` pour trouver le type valide.          |
| `start`           | oui    | Début de la plage horaire au format ISO 8601.                                                                         |
| `end`             | oui    | Fin de la plage horaire au format ISO 8601.                                                                           |
| `tags`            | non    | Filtres de tags, par exemple `[{"key": "hostname", "value": "web*"}]`. Prend en charge les caractères génériques `*`. |

***

#### `get_metrics_list`

Obtenez une valeur agrégée pour une métrique sur une plage horaire.

Retourne une seule valeur agrégée plutôt qu'une série chronologique point par point. Utile pour les vues récapitulatives.

| Paramètre         | Requis | Description                                                                 |
| ----------------- | ------ | --------------------------------------------------------------------------- |
| `app_name`        | oui    | Nom de l'application AppSignal.                                             |
| `app_environment` | oui    | Environnement.                                                              |
| `metric_name`     | oui    | Nom de la métrique.                                                         |
| `metric_type`     | oui    | `COUNT`, `COUNTER`, `GAUGE`, `MEAN`, `P90` ou `P95`.                        |
| `start`           | oui    | Début de la plage horaire au format ISO 8601.                               |
| `end`             | oui    | Fin de la plage horaire au format ISO 8601.                                 |
| `tags`            | non    | Filtres de tags, par exemple `[{"key": "hostname", "value": "frontend1"}]`. |

***

### Tableaux de bord

#### `manage_dashboard`

Créer ou mettre à jour un tableau de bord AppSignal.

Cet outil gère uniquement les métadonnées du tableau de bord (titre et description). Utilisez `create_dashboard_visual` et `update_dashboard_visual` pour ajouter des graphiques.

| Paramètre         | Requis | Description                                                                                             |
| ----------------- | ------ | ------------------------------------------------------------------------------------------------------- |
| `app_name`        | oui    | Nom de l'application AppSignal.                                                                         |
| `app_environment` | oui    | Environnement.                                                                                          |
| `title`           | oui    | Titre du tableau de bord.                                                                               |
| `description`     | non    | Description de l'objectif et du contenu du tableau de bord.                                             |
| `id`              | non    | ID du tableau de bord pour mettre à jour un tableau de bord existant. Omettez pour en créer un nouveau. |

***

#### `create_dashboard_visual`

Ajoutez un nouveau graphique à un tableau de bord existant.

Utilisez `discover_metrics` ou `get_metrics_list` pour trouver d'abord les métriques disponibles.

| Paramètre           | Requis | Description                                                                                                                               |
| ------------------- | ------ | ----------------------------------------------------------------------------------------------------------------------------------------- |
| `app_name`          | oui    | Nom de l'application AppSignal.                                                                                                           |
| `app_environment`   | oui    | Environnement.                                                                                                                            |
| `dashboard_id`      | oui    | ID du tableau de bord auquel ajouter le visuel.                                                                                           |
| `title`             | oui    | Titre du graphique.                                                                                                                       |
| `metrics`           | oui    | Tableau de métriques à afficher. Chacune requiert `name`, `fields` (par exemple `mean`, `p90`, `p95`, `count`) et facultativement `tags`. |
| `description`       | non    | Contexte supplémentaire sur le visuel.                                                                                                    |
| `display`           | non    | `line` (par défaut), `area` ou `area_relative`.                                                                                           |
| `line_label`        | non    | Étiquette personnalisée pour les lignes du graphique. Prend en charge les remplacements `%name%`, `%field%` et `%tag%`.                   |
| `format`            | non    | Format de valeur, par exemple `duration`, `size`, `percentage`.                                                                           |
| `draw_null_as_zero` | non    | Indique s'il faut dessiner les points de données manquants comme zéro. Par défaut : `false`.                                              |
| `min_y_axis`        | non    | Valeur minimale de l'axe Y.                                                                                                               |
| `tags`              | non    | Tags globaux appliqués à toutes les métriques de ce visuel.                                                                               |

***

#### `update_dashboard_visual`

Mettez à jour un graphique existant sur un tableau de bord.

Tous les champs sont facultatifs sauf les identifiants. Les champs non spécifiés conservent leurs valeurs actuelles. Si `metrics` est fourni, il remplace toutes les métriques existantes sur ce visuel.

| Paramètre           | Requis | Description                                                                                                             |
| ------------------- | ------ | ----------------------------------------------------------------------------------------------------------------------- |
| `app_name`          | oui    | Nom de l'application AppSignal.                                                                                         |
| `app_environment`   | oui    | Environnement.                                                                                                          |
| `visual_id`         | oui    | ID du composant visuel à mettre à jour.                                                                                 |
| `title`             | non    | Nouveau titre. Le titre actuel est conservé si non fourni.                                                              |
| `description`       | non    | Nouvelle description. Définir sur une chaîne vide pour supprimer.                                                       |
| `metrics`           | non    | Tableau de métriques mis à jour. Remplace toutes les métriques existantes si fourni.                                    |
| `display`           | non    | `line`, `area` ou `area_relative`.                                                                                      |
| `line_label`        | non    | Étiquette personnalisée pour les lignes du graphique. Prend en charge les remplacements `%name%`, `%field%` et `%tag%`. |
| `format`            | non    | Format de valeur, par exemple `duration`, `size`, `percentage`.                                                         |
| `draw_null_as_zero` | non    | Indique s'il faut dessiner les points de données manquants comme zéro.                                                  |
| `min_y_axis`        | non    | Valeur minimale de l'axe Y.                                                                                             |
| `tags`              | non    | Tags globaux. Remplace les tags globaux existants si fourni.                                                            |

***

## Permissions des tokens

Chaque token MCP a des permissions configurables par ensemble d'outils : `app`, `exceptions`, `performance`, `metrics`, `anomalies`, `dashboards`, `logging`. Chaque ensemble d'outils peut être défini sur `read`, `write` ou désactivé.

Les tokens peuvent également être limités à des applications spécifiques et configurés pour exposer automatiquement les nouveaux outils à mesure qu'ils sont ajoutés.

Pour générer un token :

1. Sélectionnez l'icône de votre profil.
2. Allez dans **Account Settings**.
3. Sélectionnez **MCP Tokens** pour créer un nouveau token.

***

## Un outil manquant ?

<Tip>
  Si votre agent IA ou éditeur ne peut pas accomplir quelque chose que vous attendriez
  comme étant possible, faites-le lui savoir. AppSignal MCP comprend un mécanisme de feedback intégré
  qui enregistre les demandes de capacités qui n'existent pas encore — cela aide l'équipe
  AppSignal à prioriser ce qu'il faut construire ensuite. Vous pouvez également publier des demandes
  de fonctionnalités dans la <a href="https://discord.gg/fT2cbMuQSJ">communauté Discord</a>.
</Tip>
