Passer au contenu

Référence de l'API MCP

Découvrez les 11 outils MCP de Maguyva, leurs paramètres et leurs usages. Consultez la réponse tools/list de votre client connecté pour connaître les arguments disponibles.

Vue d'ensemble de l'API

#

Les outils sont répartis en 4 catégories :

  • Outils de recherche principaux - Fonctionnalités de recherche avancées dans votre base de code
  • Outils structurels et de graphes - Requêtes AST, recherche de symboles et analyse des dépendances
  • Outils d'analyse de code - Analyse approfondie du code et cartographie des relations
  • Outils système et utilitaires - Contexte du dépôt, aide sur les outils et retours d’expérience

Pour les outils acceptant un dépôt, utilisez ce format d'identifiant de dépôt : "owner/repo:branch". Sans précision, la branche est main.

Omettez repository lorsque votre client MCP fournit une valeur par défaut pour la requête ou lorsque la clé permet d’accéder à un seul dépôt ; sinon, transmettez-le explicitement. Utilisez repository_context(action="info", repository="owner/repo") pour vérifier la manière dont un dépôt est résolu.

Format du paramètre de dépôt

#

Utilisez ces formats pour préciser un dépôt :

  • Avec branche: "owner/repo:branch" - ex. : "owner/repository:develop"
  • Branche par défaut: "owner/repo" - utilise la branche main quand aucune branche n'est précisée "owner/repository"
  • Valeur par défaut de la requête ou du dépôt unique: Omettez le dépôt lorsque le client MCP fournit une valeur par défaut pour la requête ou lorsque la clé permet d’accéder à un seul dépôt ; sinon, transmettez-le explicitement

Exemples de prompts:

Interroger un dépôt précis :     "Cherche dans owner/my-repo le middleware d'authentification"
Lister les dépôts accessibles :  "À quels dépôts cette clé Maguyva peut-elle accéder ?"
Surcharger pour une requête :    "Cherche dans owner/other-repo:develop des patterns d'auth"

Filtrage par langage

#

Utilisez language_filter dans les modes de recherche compatibles. Pour text_pattern_search, choisissez search_scope="content" ; pour get_task_context, utilisez scope="semantic" sans points de départ ni contexte associé.

  • language_filter="python" - Filtrer sur les fichiers Python uniquement
  • language_filter="typescript" - Filtrer sur les fichiers TypeScript uniquement
  • Sensible à la casse: Utilisez les noms de langages en minuscules
  • Par défaut: Chaîne vide (aucun filtrage) - renvoie les résultats de tous les langages
  • Couverture supportée: Les filtres de langage fonctionnent sur l'ensemble des 285+ langages et technologies textuelles supportés. Voir compatibilité pour la liste complète.
"Trouve le middleware d'authentification uniquement dans les fichiers Python"
"Cherche les connexions base de données en TypeScript"

Référence de l'API générée à partir du code source le 21 octobre 2026.

Outils de recherche principaux

#

Commencez ici pour toute question sur la base de code. Par défaut, auto/balanced oriente les questions de définition dont l’intention est identifiée avec confiance vers la recherche structurelle, les questions de références ou d’impact vers le graphe et les recherches de correspondance exacte vers le texte. Les autres questions utilisent le sens sémantique et le texte indexé. Utilisez mode=hybrid ou auto avec quality=thorough pour solliciter les quatre modalités de recherche. Un mode explicite prend le pas sur quality. language_filter exclut le graphe d’auto/hybrid et est refusé avec un mode=graph explicite. Préférez cet outil à Grep/Glob lorsque vous ne connaissez pas déjà le chemin.

Paramètres :

query Requis
Type
str minLength=1
Description
Requête de recherche
repository Optionnel
Type
str
Description
Dépôt au format owner/repo[:branch]. Facultatif — omettez-le pour utiliser la valeur par défaut du client limitée à la requête (si elle est fournie) ou l'unique dépôt accessible ; transmettez-le explicitement uniquement pour cibler un autre dépôt indexé. Les branches indexées exactes sont privilégiées ; une branche indisponible peut basculer vers main ou vers l'unique branche accessible. Les métadonnées de la réponse indiquent l'identité demandée et résolue, et signalent tout repli.
mode Optionnel
Type
Literal[auto, hybrid, semantic, text, structural, ast, graph]
Par défaut
auto
Description
Mode de recherche
limit Optionnel
Type
int minimum=1, maximum=50
Par défaut
10
Description
Nombre maximal de résultats dans cette fenêtre top-K classée
language_filter Optionnel
Type
str
Description
Filtre de langage
path_filter Optionnel
Type
str
Description
Filtre les candidats à la recherche par préfixe de chemin de fichier. Les voisins dans le graphe et le contexte de communauté joint peuvent inclure des fichiers en dehors de ce préfixe.
boost_by_importance Optionnel
Type
bool
Par défaut
false
Description
Facultatif : reclasse selon la centralité à l'aide des métriques de graphe par symbole (is_articulation_point, bridge_count, k_core, centrality, etc.). Désactivé par défaut pour un classement sûr pour les agents (les hubs globaux peuvent noyer les résultats d'implémentation) ; activez-le pour les visites d'architecture. S'applique aux 4 modalités lorsque chaque résultat porte une liaison de symbole.
branch Optionnel
Type
str
Description
Remplacement de branche
quality Optionnel
Type
Literal[quick, balanced, thorough]
Par défaut
balanced
Description
Préréglage de qualité de recherche
include_content Optionnel
Type
bool
Par défaut
true
Description
Inclure le contenu dans les résultats
explain_routing Optionnel
Type
bool
Par défaut
false
Description
Inclure l'explication de la décision de routage
importance_weight Optionnel
Type
float minimum=0, maximum=1
Par défaut
0.3
Description
Poids de l'amplification par importance (0=aucune, 1=totale)
orphans Optionnel
Type
bool
Par défaut
false
Description
Inclure les symboles orphelins (sans références entrantes)
include_community_context Optionnel
Type
bool
Par défaut
false
Description
Inclure les symboles apparentés de la même communauté de code
community_depth Optionnel
Type
int minimum=1, maximum=3
Par défaut
1
Description
Profondeur d'expansion du contexte de communauté
graph_view Optionnel
Type
Literal[dependency, type, data_flow, control_flow]
Par défaut
dependency
Description
Vue du graphe pour les métriques
seed_symbol_ids Optionnel
Type
list[str] maxItems=20
Description
Points de départ de tâche Tier-1 : identifiants des symboles centraux pour la tâche en cours. Lorsque ce paramètre est défini, les résultats fusionnés sont reclassés selon la proximité avec atténuation en fonction de la profondeur (Approach A : correspondance exacte avec le point de départ + sauts le long des arêtes du graphe). Ce signal s'ajoute au classement ; omettez ce paramètre pour un classement global.
seed_file_paths Optionnel
Type
list[str] maxItems=10
Description
Points de départ de tâche Tier-1 : chemins de fichiers indexés que l'agent a ouverts ou vient de modifier. Lorsque ce paramètre est défini, les résultats fusionnés sont reclassés selon la proximité des chemins, avec une atténuation 1/(1+d) en fonction de la profondeur (même fichier → même répertoire → packages voisins). Ce signal s'ajoute au classement ; omettez ce paramètre pour un classement global.

Idéal pour :

  • Exploration à l'échelle de l'index ou en démarrage à froid lorsque l'outil approprié n'est pas évident
  • Classement fusionné multimodal combinant recherche sémantique, textuelle, structurelle et de graphe

Déconseillé pour :

  • Un nom de symbole connu — utilisez directement find_symbol
  • Un chemin connu sur le disque — utilisez d'abord Read/Grep en local

Trouvez le code par son sens, pas par correspondance textuelle exacte. Pour des requêtes conceptuelles comme « logique de relance » ou « parcours d'accueil utilisateur » sans connaître le mot-clé ni le nom du symbole. Renvoie des fragments pertinents avec une diversité de fichiers bornée ; le reclassement par importance dans le graphe s'active via boost_by_importance. Préférez cet outil à Grep pour une recherche conceptuelle.

Paramètres :

query Requis
Type
str minLength=1
Description
Requête de recherche (conceptuelle, fondée sur le sens)
repository Optionnel
Type
str
Description
Dépôt au format owner/repo[:branch]. Facultatif — omettez-le pour utiliser la valeur par défaut du client limitée à la requête (si elle est fournie) ou l'unique dépôt accessible ; transmettez-le explicitement uniquement pour cibler un autre dépôt indexé. Les branches indexées exactes sont privilégiées ; une branche indisponible peut basculer vers main ou vers l'unique branche accessible. Les métadonnées de la réponse indiquent l'identité demandée et résolue, et signalent tout repli.
limit Optionnel
Type
int minimum=1, maximum=50
Par défaut
5
Description
Nombre maximal de résultats dans cette fenêtre top-K classée
similarity_threshold Optionnel
Type
float minimum=0, maximum=1
Par défaut
0.6
Description
Score de similarité minimal
language_filter Optionnel
Type
str
Description
Filtre de langage (python, typescript, etc.)
path_filter Optionnel
Type
str
Description
Filtrer par préfixe de chemin de fichier
boost_by_importance Optionnel
Type
bool
Par défaut
false
Description
Activation facultative : reclassement par importance normalisée dans le graphe pour chaque symbole (désactivé par défaut ; plafonné à 1,5 fois la similarité).
branch Optionnel
Type
str
Description
Remplacement de branche (par défaut : paramètre repository ou main)
include_content Optionnel
Type
bool
Par défaut
true
Description
Inclure le contenu des extraits dans les résultats
graph_view Optionnel
Type
Literal[dependency, type, data_flow, control_flow]
Par défaut
dependency
Description
Vue du graphe pour les métriques

Idéal pour :

  • Requêtes conceptuelles (« comment fonctionne l'authentification ? », « stratégie de cache »)
  • Recherche de similarité inter-paquets

Déconseillé pour :

  • Un nom de symbole connu — utilisez plutôt find_symbol
  • Des chaînes exactes ou des messages d'erreur — utilisez text_pattern_search

Recherche dans le contenu indexé. exact et regex appliquent grep à tout le corpus de fichiers/blobs ; fuzzy content recherche dans le corpus borné de fragments sémantiques. Les périmètres file et symbol utilisent uniquement les trigrammes — mode=exact, par défaut, est converti en fuzzy. Les contrôles de langage, de casse et de seuil personnalisé exigent le périmètre content. Le filtrage par chemin utilise une fenêtre bornée de candidats et signale une couverture incomplète. Utilisez Grep localement pour un répertoire restreint déjà sur disque.

Paramètres :

query Requis
Type
str minLength=1
Description
Motif textuel
repository Optionnel
Type
str
Description
Dépôt au format owner/repo[:branch]. Facultatif — omettez-le pour utiliser la valeur par défaut du client limitée à la requête (si elle est fournie) ou l'unique dépôt accessible ; transmettez-le explicitement uniquement pour cibler un autre dépôt indexé. Les branches indexées exactes sont privilégiées ; une branche indisponible peut basculer vers main ou vers l'unique branche accessible. Les métadonnées de la réponse indiquent l'identité demandée et résolue, et signalent tout repli.
mode Optionnel
Type
Literal[fuzzy, exact, regex]
Par défaut
exact
Description
Mode de recherche. Regex exécute la syntaxe avancée/POSIX de PostgreSQL ; utilisez \y pour les limites de mot (\b signifie retour arrière). Les motifs passent également un validateur de sécurité JavaScript, donc les constructions propres à PostgreSQL comme les indicateurs (?i) en ligne sont rejetées ; utilisez plutôt case_sensitive.
search_scope Optionnel
Type
Literal[content, symbols, files]
Par défaut
content
Description
Éléments à rechercher
limit Optionnel
Type
int minimum=1, maximum=50
Par défaut
5
Description
Nombre maximal de résultats par page sans cursor. La poursuite utilise la taille de page stockée dans cursor ; omettez cursor pour recommencer avec un limit différent.
offset Optionnel
Type
int minimum=0
Description
Décalage conservé pour compatibilité, désormais obsolète. Préférez le cursor fourni dans pagination.next_cursor.
cursor Optionnel
Type
str
Description
Curseur opaque provenant de pagination.next_cursor. Transmettez-le inchangé et conservez query et les filtres inchangés. Sa position et sa taille de page priment sur offset et limit.
language_filter Optionnel
Type
str
Description
Filtre de langage
path_filter Optionnel
Type
str
Description
Filtrer par préfixe de chemin de fichier
case_sensitive Optionnel
Type
bool
Par défaut
false
Description
Sensible à la casse
branch Optionnel
Type
str
Description
Remplacement de branche
fuzzy_algorithm Optionnel
Type
Literal[hybrid, trigram, levenshtein]
Par défaut
hybrid
Description
Algorithme de correspondance approximative
threshold Optionnel
Type
float minimum=0, maximum=1
Par défaut
0.05
Description
Seuil minimal de similarité pour la recherche approximative
semantic_fallback Optionnel
Type
bool
Par défaut
false
Description
Tente une recherche sémantique après une première page lexicale vide ; metadata.fallback_status distingue les états de repli used, empty et unavailable.

Idéal pour :

  • Chaînes exactes, messages d'erreur et regex
  • Correspondance floue par trigrammes pour un texte presque identique

Déconseillé pour :

  • Un chemin connu sur le disque — préférez Grep en local
  • Requêtes conceptuelles — utilisez semantic_search

Outils structurels et de graphe

#

Préférez preset=functions|classes|methods|imports|variables ou un pattern= libre. Recherchez le code par sa forme AST, pas par le texte. Filtres intermédiaires : name_pattern, node_type, decorator, parent_child. Les filtres de chemin, ltree et appel sont avancés : définissez advanced=true pour les utiliser délibérément. Sinon, ils sont tout de même appliqués avec un avertissement dans les métadonnées. Fournissez au moins un sélecteur structurel.

Paramètres :

repository Optionnel
Type
str
Description
Dépôt au format owner/repo[:branch]. Facultatif — omettez-le pour utiliser la valeur par défaut du client limitée à la requête (si elle est fournie) ou l'unique dépôt accessible ; transmettez-le explicitement uniquement pour cibler un autre dépôt indexé. Les branches indexées exactes sont privilégiées ; une branche indisponible peut basculer vers main ou vers l'unique branche accessible. Les métadonnées de la réponse indiquent l'identité demandée et résolue, et signalent tout repli.
preset Optionnel
Type
Literal[functions, classes, methods, imports, variables]
Description
Sélecteur structurel privilégié. Se développe en types de nœuds AST multilingues — functions (définitions de fonction/flèche/méthode selon les langages) ; classes (déclarations de classe/struct/interface, corps de types et implémentations) ; methods (définitions de méthode, et function_definition pour les langages sans nœud de méthode) ; imports (instructions import/use/include) ; variables (déclarations variable/let/const/static). À préférer à pattern/node_type libre pour les requêtes de type parcours.
pattern Optionnel
Type
str
Description
Un pattern libre complète les sélecteurs manquants (détection automatique : 'def foo(' → node_type + name_pattern). Peut se combiner avec preset ; les sélecteurs explicites priment. Préférez preset= pour les requêtes de parcours.
name_pattern Optionnel
Type
str maxLength=256
Description
Motif de nom de symbole (caractère générique shell, expression régulière POSIX bornée ou texte approximatif ; 256 caractères max.)
node_type Optionnel
Type
str
Description
Type de nœud AST (function_definition, class_definition, etc.) — préférez preset= pour les formes courantes
decorator Optionnel
Type
str
Description
Filtre par nom de décorateur
base_class Optionnel
Type
str
Description
Filtre de classe de base
language_filter Optionnel
Type
str
Description
Filtre de langage (python, typescript, etc.)
limit Optionnel
Type
int minimum=1, maximum=50
Par défaut
20
Description
Nombre maximal de résultats par page sans cursor. La poursuite utilise la taille de page stockée dans cursor ; omettez cursor pour recommencer avec un limit différent.
offset Optionnel
Type
int minimum=0
Description
Décalage conservé pour compatibilité, désormais obsolète. Préférez le cursor fourni dans pagination.next_cursor.
cursor Optionnel
Type
str
Description
Curseur opaque provenant de pagination.next_cursor. Transmettez-le inchangé et conservez query et les filtres inchangés. Sa position et sa taille de page priment sur offset et limit.
path_filter Optionnel
Type
str
Description
Filtrer par préfixe de chemin de fichier
branch Optionnel
Type
str
Description
Remplacement de branche
query_type Optionnel
Type
Literal[node_type, name_pattern, parent_child]
Description
Type de requête explicite
parent_type Optionnel
Type
str
Description
Filtre du type de nœud AST parent
relationship Optionnel
Type
Literal[parent, ancestor]
Par défaut
parent
Description
Pour les requêtes parent_child : parent direct uniquement, ou n'importe quel ancêtre (utilisez ancestor pour les méthodes de classe imbriquées dans le corps/bloc d'une classe)
has_modifier Optionnel
Type
str
Description
Filtrer par modificateur (export, async, static, etc.)
advanced Optionnel
Type
bool
Par défaut
false
Description
Définissez true pour utiliser délibérément les filtres avancés de chemin, ltree ou appel (ltree_ancestor, ltree_descendant, min_depth, max_depth, field_role, definition_name, callee_text, callee_name). Avec false, les filtres avancés fournis sont appliqués avec un avertissement dans les métadonnées. Préférez preset= pour les requêtes structurelles courantes.
callee_text Optionnel
Type
str
Description
Avancé — préférez preset=functions|classes|methods|imports|variables. Filtre de texte de l'appelé d'une expression d'appel. Définissez advanced=true lorsque vous utilisez intentionnellement des filtres de chemin/ltree/appel.
callee_name Optionnel
Type
str
Description
Avancé — préférez preset=functions|classes|methods|imports|variables. Filtre de nom de l'appelé d'une expression d'appel. Définissez advanced=true lorsque vous utilisez intentionnellement des filtres de chemin/ltree/appel.
field_role Optionnel
Type
str
Description
Avancé — préférez preset=functions|classes|methods|imports|variables. Filtre de rôle de champ AST. Définissez advanced=true lorsque vous utilisez intentionnellement des filtres de chemin/ltree/appel.
ltree_ancestor Optionnel
Type
str
Description
Avancé — préférez preset=functions|classes|methods|imports|variables. Filtre de chemin ancêtre AST ltree. Définissez advanced=true lorsque vous utilisez intentionnellement des filtres de chemin/ltree/appel.
ltree_descendant Optionnel
Type
str
Description
Avancé — préférez preset=functions|classes|methods|imports|variables. Filtre de chemin descendant AST ltree. Définissez advanced=true lorsque vous utilisez intentionnellement des filtres de chemin/ltree/appel.
definition_name Optionnel
Type
str
Description
Avancé — préférez preset=functions|classes|methods|imports|variables. Filtre de nom de définition. Définissez advanced=true lorsque vous utilisez intentionnellement des filtres de chemin/ltree/appel.
min_depth Optionnel
Type
int
Description
Avancé — préférez preset=functions|classes|methods|imports|variables. Profondeur AST minimale. Définissez advanced=true lorsque vous utilisez intentionnellement des filtres de chemin/ltree/appel.
max_depth Optionnel
Type
int
Description
Avancé — préférez preset=functions|classes|methods|imports|variables. Profondeur AST maximale. Définissez advanced=true lorsque vous utilisez intentionnellement des filtres de chemin/ltree/appel.

Idéal pour :

  • Structure au niveau AST : classes, décorateurs, presets function/method
  • Trouver du code par sa forme plutôt que par son texte

Déconseillé pour :

  • Requêtes en texte libre ou conceptuelles — utilisez semantic_search ou intelligent_search

Interface principale pour le rayon d'impact et le graphe. Répond à « qu'est-ce qui appelle ceci ? » / « qu'est-ce que ceci utilise ? » via le vrai graphe d'appels/imports. Pour l'impact avant modification : analysis_type="dependents" ou analysis_type="impact" (entrant, faible profondeur par défaut pour impact), include_metrics=false par défaut (activez-le pour la centralité + refactor_risk). Impact PR/diff : transmettez changed_paths et/ou patch (diff unifié) — résout les symboles par chemin et renvoie une réponse compacte issue d'un parcours entrant peu profond du code dépendant sans nécessiter de nom de symbole. Après une modification, définissez verify_after_edit=true avec targets et/ou changed_paths pour une nouvelle requête compacte multi-racine des symboles impactés. Prend aussi en charge dependencies, centrality et orphans. analyze_dependencies utilise le même parcours pour l’analyse d’impact à plusieurs sauts. dependents/impact incluent production_callers par défaut : sites d’utilisation uniques en production par catégorie (call, instantiate, value_reference pour les fonctions passées comme valeurs), plus les sites IMPORT, tests exclus, avec le niveau de confiance EXTRACTED/INFERRED — pas un simple déversement de métriques.

Paramètres :

repository Optionnel
Type
str
Description
Dépôt au format owner/repo[:branch]. Facultatif — omettez-le pour utiliser la valeur par défaut du client limitée à la requête (si elle est fournie) ou l'unique dépôt accessible ; transmettez-le explicitement uniquement pour cibler un autre dépôt indexé. Les branches indexées exactes sont privilégiées ; une branche indisponible peut basculer vers main ou vers l'unique branche accessible. Les métadonnées de la réponse indiquent l'identité demandée et résolue, et signalent tout repli.
query Optionnel
Type
str
Description
Nom de symbole ou terme de recherche
target Optionnel
Type
str
Description
Nom du symbole (alias de query)
symbol_id Optionnel
Type
UUID
Description
Sélectionnez par UUID une occurrence précise parmi les candidats correspondant au nom indiqué dans query/target, après filtrage par espace de noms, chemin et langage. Utilisez un ID renvoyé par find_symbol ou par les résultats alternatifs du graphe. Uniquement pour un parcours avec un nom indiqué ; un ID hors de la fenêtre limitée de candidats provoque une erreur.
changed_paths Optionnel
Type
list[str] maxItems=50
Description
Chemins de fichiers exacts relatifs au dépôt servant de points de départ à l'analyse d'impact PR/diff (par défaut) ou à la vérification après modification avec verify_after_edit=true. Les chemins non résolus peuvent renvoyer des suggestions étiquetées ; les fichiers suggérés ne deviennent jamais des points de départ d'impact. PR/diff : sans information de ligne, parcourt les définitions de premier niveau de chaque chemin (exportées d'abord, dans l'ordre du fichier) et signale changed_lines_unknown ; passez patch= pour obtenir les symboles modifiés ligne par ligne. Vérification : jusqu'à 5 définitions de premier niveau par chemin comme points de départ de la vérification (avec un plafond inférieur en mode vérification). L'analyse d'impact PR/diff ne nécessite pas query/target.
patch Optionnel
Type
str maxLength=500000
Description
Impact PR/diff : texte au format unified diff / git patch. Les chemins proviennent des en-têtes diff --git / --- / +++ ; les lignes des hunks (ancien côté = le commit indexé) sont rattachées aux fonctions, méthodes et classes qui les contiennent, parcourues ensuite pour obtenir les dépendants exacts, public_api_changed et les appelants que le diff ne touche pas.
head_commit Optionnel
Type
str pattern=^[0-9a-fA-F]{7,64}$
Description
SHA du commit du code sur lequel porte votre question (git rev-parse HEAD, ou le commit de base du patch). complete:true exige que l'index soit à ce commit et construit par le résolveur actuel ; sinon la valeur reste complete:false avec index_stale / index_freshness_unverified / index_built_by_older_resolver, et index_basis.statement indique dans quelles limites la réponse est complète. La ligne 'base-commit:' d'un patch (git format-patch --base) le fournit aussi.
analysis_type Optionnel
Type
Literal[centrality, dependencies, dependents, impact, orphans]
Par défaut
dependencies
Description
Mode d'analyse. impact = rayon d'impact (dépendants entrants ; profondeur superficielle quand depth est omis). dependents répond aussi à impact. Quand changed_paths ou patch est défini, l'analyse est forcée sur l'impact PR/diff. centrality/orphans ne nécessitent pas de target. Les orphans sont des candidats au code inutilisé, pas la preuve qu'on peut le supprimer sans risque ; vérifiez les références dans les sources.
depth Optionnel
Type
Literal[shallow, balanced, deep]
Description
Profondeur de parcours. Par défaut balanced ; impact et PR/diff impact utilisent shallow par défaut. Un depth explicite remplace ces valeurs par défaut. Le mode de vérification utilise toujours shallow.
limit Optionnel
Type
int minimum=1, maximum=50
Par défaut
20
Description
Nombre maximal de résultats par page sans cursor. La poursuite utilise la taille de page stockée dans cursor ; omettez cursor pour recommencer avec un limit différent.
offset Optionnel
Type
int minimum=0
Description
Décalage conservé pour compatibilité, désormais obsolète. Préférez le cursor fourni dans pagination.next_cursor.
cursor Optionnel
Type
str
Description
Curseur opaque provenant de pagination.next_cursor. Transmettez-le inchangé et conservez query et les filtres inchangés. Sa position et sa taille de page priment sur offset et limit.
path_filter Optionnel
Type
str
Description
Restreint la résolution du symbole cible par préfixe de chemin de fichier ; les relations de graphe renvoyées peuvent sortir de ce chemin.
language_filter Optionnel
Type
str
Description
Filtrer la résolution de la cible et les résultats de parcours par langage
direction Optionnel
Type
Literal[outgoing, incoming, both]
Description
Direction de parcours (remplace l’inférence de analysis_type)
relationship_types Optionnel
Type
list[str]
Description
Filtrer les types d'arête (CALL, IMPORT, INHERITS_FROM, etc.). Une liste non vide remplace les valeurs par défaut de graph_view.
exclude_test_paths Optionnel
Type
bool
Par défaut
true
Description
Par défaut true : exclut les chemins des tests, fixtures de test, code tiers et exemples des résultats de parcours et de centralité. Définissez false pour les inclure. L'analyse des orphelins ne le respecte que là où le backend déployé le prend en charge ; sinon, elle conserve ses propres exclusions de bruit plus strictes et signale l'ajustement.
exclude_generated_paths Optionnel
Type
bool
Par défaut
false
Description
Exclure des résultats de parcours les déclarations générées ainsi que les chemins des artefacts de build, de couverture de code, de cache, des source maps et des fichiers minifiés
include_module_symbols Optionnel
Type
bool
Par défaut
false
Description
Valeur par défaut : false. Exclut les arêtes dont from_name ou to_name est le symbole synthétique __module__ (bruit au niveau du module). Définissez true pour inclure les arêtes au niveau du module dans les résultats dependents/dependencies.
include_isolated Optionnel
Type
bool
Description
Orphelins uniquement. Valeur par défaut : false. Définissez true pour renvoyer aussi les symboles sans ligne de métriques de graphe (aucune arête nulle part dans le graphe). Tant que exclude_test_paths vaut true, les symboles de feuilles de style, de balisage et de données (CSS, HTML, ...), les déclarations .d.ts et les chemins test/fixture/vendor/example restent exclus là où le backend le prend en charge, sauf si language_filter désigne ce langage ; les propriétés de littéraux d'objet TypeScript peuvent encore apparaître comme des fonctions isolées.
exclude_exported Optionnel
Type
bool
Par défaut
false
Description
Uniquement pour les symboles orphelins. false par défaut : les symboles exportés (API publique) inutilisés dans le dépôt sont renvoyés avec is_exported=true. Passez à true pour ne garder que les candidats internes.
branch Optionnel
Type
str
Description
Remplacement de branche
per_hop_limit Optionnel
Type
int minimum=1, maximum=300
Description
Nombre maximal de relations par saut (1-300)
include_metrics Optionnel
Type
bool
Par défaut
false
Description
Métriques de graphe facultatives sur les lignes de résultats (compactées avec refactor_risk). Les métriques sont aussi récupérées en interne quand min_centrality>0 mais ne sont renvoyées que si ce paramètre est true.
metrics_detail Optionnel
Type
Literal[summary, full]
Par défaut
summary
Description
Lorsque include_metrics=true : summary (par défaut) renvoie des signaux de décision + refactor_risk ; full renvoie un ensemble plus large de métriques sélectionnées
include_edge_metadata Optionnel
Type
bool
Par défaut
false
Description
Inclure les métadonnées brutes et les pondérations des arêtes (volume important). Cette option reste désactivée dans les réponses compactes d'analyse d'impact.
symbol_types Optionnel
Type
list[str]
Description
Filtre les symboles renvoyés par nature (function, class, method, etc.). Non pris en charge dans l'analyse orphan ; utilisez plutôt path_filter ou language_filter. Une liste vide n'applique aucun filtre par nature.
exact_match Optionnel
Type
bool
Par défaut
false
Description
Exiger une correspondance exacte du nom du symbole
find_similar_patterns Optionnel
Type
bool
Par défaut
false
Description
Trouver des motifs d’utilisation similaires
min_centrality Optionnel
Type
float minimum=0
Par défaut
0
Description
Score PageRank minimal pour le parcours de symboles nommés et l’analyse d’impact PR/diff. Les seuils positifs ne sont pas pris en charge dans les modes de parcours centrality/orphans. Les métriques sont récupérées en interne pour le filtrage ; graph_metrics n'est renvoyé que lorsque include_metrics=true. Ignoré par verify_after_edit, qui utilise des contrôles compacts fixes.
graph_view Optionnel
Type
Literal[dependency, type, data_flow, control_flow]
Par défaut
dependency
Description
Vue du graphe utilisée pour les valeurs par défaut des relations de parcours, les métriques et le classement de centralité ; l'analyse des orphelins est calculée sur toutes les vues
verify_after_edit Optionnel
Type
bool
Par défaut
false
Description
Interroge à nouveau le graphe d'impact indexé pour les symboles modifiés, dans une réponse compacte à racines multiples. Nécessite targets et/ou changed_paths (ou target/query). Utilise un parcours shallow fixe et des budgets compacts ; les contrôles depth/limit/cursor/metrics ne s'appliquent pas. Par défaut, renvoie les incoming dependents ; les résultats reflètent le graphe indexé (peuvent être en retard sur les modifications en direct). Si true, prime sur PR/diff impact pour les mêmes changed_paths.
targets Optionnel
Type
list[str] maxItems=15
Description
Lorsque verify_after_edit=true : noms de symboles à revérifier (appelants/dépendants). Fusionné avec target/query si les deux sont fournis.

Idéal pour :

  • Analyse du rayon d'impact avant de modifier un symbole partagé
  • Impact PR/diff via changed_paths ou patch
  • Vérification après modification via verify_after_edit

Déconseillé pour :

  • Recherches simples de texte ou de symboles — préférez text_pattern_search ou find_symbol

Outils d'analyse de code

#

find_symbol Stable

Accédez à la définition et aux utilisations d'une fonction, d'une classe ou d'une variable. À utiliser lorsque vous connaissez le nom (p. ex. « getCurrentUser ») : plus rapide et plus précis que Grep, sur tout le dépôt indexé. Peut aussi renvoyer les références et les métriques d'importance.

Paramètres :

symbol_name Optionnel
Type
str
Description
Nom du symbole à rechercher (facultatif — omettez-le pour parcourir par métriques)
repository Optionnel
Type
str
Description
Dépôt au format owner/repo[:branch]. Facultatif — omettez-le pour utiliser la valeur par défaut du client limitée à la requête (si elle est fournie) ou l'unique dépôt accessible ; transmettez-le explicitement uniquement pour cibler un autre dépôt indexé. Les branches indexées exactes sont privilégiées ; une branche indisponible peut basculer vers main ou vers l'unique branche accessible. Les métadonnées de la réponse indiquent l'identité demandée et résolue, et signalent tout repli.
scope Optionnel
Type
Literal[definitions, references, both]
Par défaut
both
Description
Portée de la recherche ; references nécessite un symbol_name non vide.
limit Optionnel
Type
int minimum=1, maximum=50
Par défaut
15
Description
Nombre maximal de résultats par page sans cursor. La poursuite utilise la taille de page stockée dans cursor ; omettez cursor pour recommencer avec un limit différent.
offset Optionnel
Type
int minimum=0
Description
Décalage conservé pour compatibilité, désormais obsolète. Préférez le cursor fourni dans pagination.next_cursor.
cursor Optionnel
Type
str
Description
Curseur opaque provenant de pagination.next_cursor. Transmettez-le inchangé et conservez query et les filtres inchangés. Sa position et sa taille de page priment sur offset et limit.
find_similar Optionnel
Type
bool
Par défaut
false
Description
Inclure les noms de symboles similaires
include_metrics Optionnel
Type
bool
Par défaut
false
Description
Inclure les métriques de centralité
metrics_detail Optionnel
Type
Literal[summary, full]
Par défaut
summary
Description
Lorsque include_metrics=true : summary (par défaut) renvoie des signaux de décision + refactor_risk ; full renvoie un ensemble plus large de métriques sélectionnées
path_filter Optionnel
Type
str
Description
Filtrer par préfixe de chemin de fichier
branch Optionnel
Type
str
Description
Remplacement de branche
symbol_type Optionnel
Type
str minLength=1
Description
Filtrer par type de symbole indexé, par ex. function, class, struct, enum ou trait. Utilisez le type renvoyé par un résultat de symbole ; le type varie selon le langage.
high_impact Optionnel
Type
bool
Par défaut
false
Description
Parcourir les symboles importants pour l'architecture (omettez symbol_name). Le mode par défaut est popularity (les 10 % de symboles au PageRank le plus élevé, hors méga-hubs utilitaires). Définissez high_impact_mode=risk pour les sommets d'articulation qui font le pont entre les parties du graphe.
high_impact_mode Optionnel
Type
Literal[popularity, risk]
Par défaut
popularity
Description
Lorsque high_impact=true : popularity = les 10 % de symboles au PageRank le plus élevé, hors méga-hubs/modules utilitaires ; risk = points d'articulation classés selon bridge_count dans la SMV, puis k_core (risque structurel de refactorisation, et non popularité des hubs)
in_cycle Optionnel
Type
bool
Par défaut
false
Description
Filtre les symboles dont l'appartenance à un cycle de dépendances est enregistrée.
exclude_test_paths Optionnel
Type
bool
Par défaut
true
Description
Lorsque vous parcourez les métriques du graphe, excluez les tests, les fixtures, le code tiers et les exemples avant le classement. La recherche de symboles nommés reste inchangée.
reference_views Optionnel
Type
list[Literal[dependency, type, data_flow, control_flow, all]] minItems=1, maxItems=5
Description
Vues du graphe dont les arêtes entrantes alimentent references/reference_count (scope references/both). Par défaut ["dependency", "type"] : appels, imports, exports, références, instanciations, héritage, redéfinitions, décorateurs et usages de types. Sans sélection de data_flow, les usages data_flow résolus exactement (fonctions de rappel, gestionnaires, clés de tri) sont renvoyés séparément dans value_references/value_reference_count, sans correspondances déduites du seul nom. Ajoutez data_flow ou control_flow, ou passez ["all"] pour tous les types et niveaux d’arêtes. Mêmes familles de vues que graph_view de dependency_search.
relationship_types Optionnel
Type
list[str]
Description
Types explicites d’arêtes de référence (CALL, IMPORT, READS, etc.). Une liste non vide remplace reference_views.

Idéal pour :

  • Repérer la définition, les références et les métriques de graphe d'un symbole connu
  • Parcourir par centrality, high_impact ou in_cycle lorsque symbol_name est omis

Déconseillé pour :

  • Requêtes conceptuelles ou zones inconnues — utilisez intelligent_search ou semantic_search

analyze_dependencies Stable

Analyse le rayon d'impact avec le même parcours que dependency_search (dependents/incoming). Préférez dependency_search avec analysis_type="dependents" ou "impact" pour l’analyse d’impact. Renvoie une réponse d’impact à plusieurs sauts avec graph, connection_summary et des métriques facultatives contenant refactor_risk. Utilisez graph_view pour limiter la famille de relations : dependency (par défaut), type, data_flow, control_flow. connection_summary compte, pour la racine choisie, les arêtes limitées à la famille de relations, avant tout filtrage par tests ou par chemin. Les champs hérités incoming_production/outgoing_production désignent les arêtes hors module, tests compris ; ce ne sont pas des décomptes d’appelants de production.

Paramètres :

repository Optionnel
Type
str
Description
Dépôt au format owner/repo[:branch]. Facultatif — omettez-le pour utiliser la valeur par défaut du client limitée à la requête (si elle est fournie) ou l'unique dépôt accessible ; transmettez-le explicitement uniquement pour cibler un autre dépôt indexé. Les branches indexées exactes sont privilégiées ; une branche indisponible peut basculer vers main ou vers l'unique branche accessible. Les métadonnées de la réponse indiquent l'identité demandée et résolue, et signalent tout repli.
target Requis
Type
str minLength=1
Description
Nom du symbole à analyser
symbol_id Optionnel
Type
UUID
Description
Sélectionnez par UUID une occurrence précise parmi les candidats de target, après filtrage par espace de noms, chemin et langage ; les ID hors de la fenêtre limitée de candidats provoquent une erreur.
depth Optionnel
Type
Literal[shallow, balanced, deep]
Par défaut
balanced
Description
Profondeur d'analyse
limit Optionnel
Type
int minimum=1, maximum=50
Par défaut
10
Description
Nombre maximal de résultats par page sans cursor. La poursuite utilise la taille de page stockée dans cursor ; omettez cursor pour recommencer avec un limit différent.
offset Optionnel
Type
int minimum=0
Description
Décalage conservé pour compatibilité, désormais obsolète. Préférez le cursor fourni dans pagination.next_cursor.
cursor Optionnel
Type
str
Description
Curseur opaque provenant de pagination.next_cursor. Transmettez-le inchangé et conservez query et les filtres inchangés. Sa position et sa taille de page priment sur offset et limit.
direction Optionnel
Type
Literal[incoming, outgoing, both]
Par défaut
incoming
Description
Sens du parcours
relationship_types Optionnel
Type
list[str]
Description
Filtre les types d'arêtes (CALL, IMPORT, INHERITS_FROM, etc.). Une liste non vide remplace les valeurs par défaut de graph_view ; une liste vide utilise ces valeurs par défaut.
graph_view Optionnel
Type
Literal[dependency, type, data_flow, control_flow]
Par défaut
dependency
Description
Vue du graphe : détermine à la fois les types d'arêtes parcourus par défaut et les métriques de quelle vue sont utilisées lorsque include_metrics=true. dependency=[CALL,IMPORT,EXPORTS,REFERENCE,INSTANTIATES] (par défaut), type=[INHERITS_FROM,IMPLEMENTS,OVERRIDE,DECORATES,OF_TYPE], data_flow=[READS,WRITES,ASSIGNS_TO], control_flow=[CONTROL_FLOW,THROWS,CATCHES]. Appliqué comme valeur par défaut de relationship_types lorsque relationship_types est omis ou vide. Correspond au nom de paramètre graph_view déjà utilisé par dependency_search, par souci de cohérence entre les outils.
path_filter Optionnel
Type
str
Description
Restreint la résolution du symbole cible par préfixe de chemin de fichier ; les relations de graphe renvoyées peuvent sortir de ce chemin.
language_filter Optionnel
Type
str
Description
Restreindre les résultats à un langage
branch Optionnel
Type
str
Description
Remplacement de branche
per_hop_limit Optionnel
Type
int minimum=1, maximum=300
Description
Nombre maximal de relations par saut (1-300)
include_metrics Optionnel
Type
bool
Par défaut
false
Description
Inclure les métriques du graphe dans les résultats, chacune enrichie d'un bloc refactor_risk dérivé ({risk: "low"|"medium"|"high", is_articulation_point, bridge_count, k_core, graph_view, reasons}). Le risque vaut "low" si le symbole n'est pas un point d'articulation dans la vue choisie, "medium" s'il relie peu d'arêtes et "high" s'il en relie beaucoup (seuil heuristique non validé empiriquement). Le bloc est omis si aucune ligne de métriques n'existe pour ce symbole/cette vue.
metrics_detail Optionnel
Type
Literal[summary, full]
Par défaut
summary
Description
Lorsque include_metrics=true : summary (par défaut) renvoie des signaux de décision + refactor_risk ; full renvoie un ensemble plus large de métriques sélectionnées
include_edge_metadata Optionnel
Type
bool
Par défaut
false
Description
Inclure les métadonnées brutes et les pondérations des arêtes. Désactivé par défaut, car les métadonnées de l'extracteur peuvent être volumineuses ; le taux de couverture de l'enrichissement est indiqué lorsque cette option est activée.
exclude_test_paths Optionnel
Type
bool
Par défaut
true
Description
Valeur par défaut : true. Exclut les chemins des tests, fixtures de test, code tiers et exemples des arêtes du graphe renvoyées. Définissez false pour les inclure.
include_module_symbols Optionnel
Type
bool
Par défaut
false
Description
Valeur par défaut : false. Exclut les arêtes dont from_name ou to_name est le symbole synthétique __module__. Définissez true pour inclure les arêtes au niveau du module.
head_commit Optionnel
Type
str pattern=^[0-9a-fA-F]{7,64}$
Description
SHA du commit du code sur lequel porte votre question (git rev-parse HEAD, ou le commit de base du patch). complete:true exige que l'index soit à ce commit et construit par le résolveur actuel ; sinon la valeur reste complete:false avec index_stale / index_freshness_unverified / index_built_by_older_resolver, et index_basis.statement indique dans quelles limites la réponse est complète. La ligne 'base-commit:' d'un patch (git format-patch --base) le fournit aussi.

Idéal pour :

  • Analyse d’impact à plusieurs sauts lorsque les champs de réponse graph et connection_summary sont nécessaires

Déconseillé pour :

  • Analyse d’impact générale — préférez dependency_search pour un parcours flexible et des vérifications à plusieurs points de départ

get_task_context Stable

Vous commencez à travailler dans une zone que vous ne connaissez pas ? Décrivez la tâche (par ex. « ajouter la prise en charge SSO », « corriger le webhook de facturation ») et obtenez, en un seul appel, un ensemble limité de fichiers, code, symboles et dépendances pertinents. Les fichiers fournis en amorce (seed) apportent un contenu directement indexé même s'ils ne définissent aucun symbole. Les couches en échec sont signalées ; un échec total de récupération renvoie une erreur d'outil. Pour plus de résultats, poursuivez avec l'outil de recherche spécialisé de cette couche.

Paramètres :

task_description Requis
Type
str minLength=1
Description
Description de la tâche
repository Optionnel
Type
str
Description
Dépôt au format owner/repo[:branch]. Facultatif — omettez-le pour utiliser la valeur par défaut du client limitée à la requête (si elle est fournie) ou l'unique dépôt accessible ; transmettez-le explicitement uniquement pour cibler un autre dépôt indexé. Les branches indexées exactes sont privilégiées ; une branche indisponible peut basculer vers main ou vers l'unique branche accessible. Les métadonnées de la réponse indiquent l'identité demandée et résolue, et signalent tout repli.
limit Optionnel
Type
int minimum=1, maximum=50
Par défaut
15
Description
Nombre maximal de résultats par couche
scope Optionnel
Type
Literal[semantic, symbols, dependencies, all]
Par défaut
all
Description
Couches de contexte à inclure
language_filter Optionnel
Type
str
Description
Filtre de langage : exige scope=semantic sans points de départ explicites ni contexte associé ; les index des autres couches ne peuvent pas imposer le langage.
path_filter Optionnel
Type
str
Description
Préfixe de chemin de fichier pour les racines de recherche sémantique et par mots-clés. Les points de départ explicites peuvent se situer en dehors de ce préfixe ; le contexte de graphe peut franchir les limites des répertoires.
branch Optionnel
Type
str
Description
Remplacement de branche
include_related_context Optionnel
Type
bool
Par défaut
false
Description
Inclure le contexte associé des symboles adjacents
seed_symbol_ids Optionnel
Type
list[str] maxItems=20
Description
Points de départ explicites de la tâche : figurent en premier dans la couche des symboles et sont conservés dans la fenêtre limitée dependencies/related_context. Les couches de graphe classent les points de départ explicites et leur voisinage immédiat avant le repli sur les mots-clés ; l'importance ne départage qu'à pertinence égale. L'expansion du graphe nécessite scope=all|dependencies (scope=symbols|semantic n'exécute jamais le parcours des dépendances). Omettez ce paramètre pour un classement fondé uniquement sur les mots-clés, par importance décroissante avec la profondeur.
seed_file_paths Optionnel
Type
list[str] maxItems=10
Description
Points de départ explicites : chemins de fichiers indexés exacts que l'agent a ouverts ou vient de modifier. Renvoie directement des éléments probants issus des fichiers, dans un volume limité, ainsi que jusqu'à 5 points de départ de graphe par fichier, en privilégiant les correspondances exactes avec le nom de la tâche issues d'une recherche de symboles bornée, avant les définitions et les symboles incidents. Les fichiers sans symbole fournissent malgré tout des éléments probants. Les fichiers manquants peuvent renvoyer des suggestions étiquetées qui ne sont pas des points de départ. L'expansion du graphe nécessite scope=all|dependencies.

Idéal pour :

  • Contexte adapté à la tâche, mêlant les fichiers de départ aux couches sémantique, symbolique et de dépendances

Déconseillé pour :

  • Recherches à outil unique lorsqu'un outil plus spécifique répond déjà à la question

get_file Stable

Lit un fichier du dépôt indexé par chemin. Préférez les outils de fichiers locaux pour les fichiers sur disque ; utilisez ceci pour les instantanés indexés distants. Poursuivez les réponses bornées avec metadata.next_line_start et next_character_start. Ne retirez le saut de ligne final et le marqueur [truncated] que lorsque metadata.truncated=true ; sinon, il peut s'agir de texte source littéral.

Paramètres :

file_path Requis
Type
str
Description
Chemin du fichier relatif à la racine du dépôt
repository Optionnel
Type
str
Description
Dépôt au format owner/repo[:branch]. Facultatif — omettez-le pour utiliser la valeur par défaut du client limitée à la requête (si elle est fournie) ou l'unique dépôt accessible ; transmettez-le explicitement uniquement pour cibler un autre dépôt indexé. Les branches indexées exactes sont privilégiées ; une branche indisponible peut basculer vers main ou vers l'unique branche accessible. Les métadonnées de la réponse indiquent l'identité demandée et résolue, et signalent tout repli.
line_start Optionnel
Type
int minimum=1
Description
Ligne de début (indexée à partir de 1)
line_end Optionnel
Type
int minimum=1
Description
Ligne de fin (indexée à partir de 1, incluse ; doit être supérieure ou égale à line_start)
character_start Optionnel
Type
int minimum=0
Par défaut
0
Description
Décalage en unités de code UTF-16 uniquement dans la ligne de début (indexé à partir de 0). Utilisez metadata.next_character_start pour poursuivre une ligne partiellement lue.
branch Optionnel
Type
str
Description
Remplacement de branche
max_tokens Optionnel
Type
int minimum=1, maximum=50000
Par défaut
5000
Description
Budget de contenu approximatif (4 unités de code UTF-16 par token ; pas une limite exacte du tokenizer).
include_metadata Optionnel
Type
bool
Par défaut
true
Description
Inclure les métadonnées descriptives du fichier. Les métadonnées de troncature et de continuation sont toujours renvoyées.

Idéal pour :

  • Instantanés de fichiers distants ou indexés (plages de lignes, limites de tokens)

Déconseillé pour :

  • Un chemin déjà présent sur le disque local — utilisez l'outil Read local

Outils système et utilitaires

#

repository_context Stable

Liste les dépôts que vous pouvez rechercher, ou récupère les informations d'identité de l'un d'eux (namespace/branch, indexed_commit_sha / fraîcheur de l'index). Utilisez action:"list" lorsque le slug du dépôt est inconnu ; les outils de recherche acceptent directement un slug connu ou utilisent par défaut l'unique dépôt de votre clé. list utilise pattern et la pagination ; info nécessite repository et prend en charge branch ainsi que l'option include_statistics=true.

Paramètres :

action Requis
Type
Literal[list, info]
Description
Action : lister les dépôts disponibles ou obtenir les informations d'un dépôt
repository Optionnel
Type
str
Description
Uniquement pour info : dépôt au format owner/repo ou owner/repo:branch (requis pour info)
branch Optionnel
Type
str
Description
Uniquement pour info : remplacement de branche
pattern Optionnel
Type
str
Description
Uniquement pour list : sous-chaîne du nom de dépôt, insensible à la casse
include_statistics Optionnel
Type
bool
Par défaut
false
Description
Information uniquement : inclut des comptages de données indexées bornés. Les comptages file/blob sont exacts ; les comptages d'index plus importants sont des estimations. Consultez count_accuracy et estimate_analyzed_at. Valeur par défaut : false.
limit Optionnel
Type
int minimum=1, maximum=50
Par défaut
20
Description
Nombre maximal de résultats par page sans cursor. La poursuite utilise la taille de page stockée dans cursor ; omettez cursor pour recommencer avec un limit différent.
offset Optionnel
Type
int minimum=0
Description
Décalage conservé pour compatibilité, désormais obsolète. Préférez le cursor fourni dans pagination.next_cursor.
cursor Optionnel
Type
str
Description
Curseur opaque provenant de pagination.next_cursor. Transmettez-le inchangé et conservez query et les filtres inchangés. Sa position et sa taille de page priment sur offset et limit.

Idéal pour :

  • Lister les dépôts accessibles
  • Résoudre l'identité du dépôt, la branche et la fraîcheur de HEAD par rapport à l'index

Déconseillé pour :

  • Statistiques à l'échelle du namespace par défaut — transmettez explicitement include_statistics=true, car cela peut être plus lent que la simple résolution

ask_maguyva Stable

Obtenez de l’aide sur les outils Maguyva ou envoyez un rapport de bug ou une demande de fonctionnalité, conservés pour les responsables de Maguyva. N’incluez jamais de secrets ni de données personnelles sensibles dans vos retours. L’opération evaluate accepte des expressions déterministes ; préférez le calcul local ou les outils de l’hôte pour les calculs, hachages et chaînes.

Paramètres :

operation Requis
Type
Literal[guidance, report_bug, request_feature, evaluate]
Description
Utilisez guidance pour l’aide sur les outils, report_bug pour les bugs ou request_feature pour les suggestions. evaluate exécute des expressions déterministes ; privilégiez les calculs locaux.
query Optionnel
Type
str maxLength=500
Description
Sujet d’aide (par exemple tool_selection, semantic_search) ou chaîne d’expression pour evaluate.
description Optionnel
Type
str minLength=1, maxLength=4000
Description
Obligatoire pour report_bug et request_feature. Retour libre destiné aux mainteneurs de Maguyva. N'incluez jamais de secrets ni de données personnelles sensibles.
related_tool Optionnel
Type
Literal[ask_maguyva, get_file, repository_context, find_symbol, structural_search, dependency_search, analyze_dependencies, semantic_search, text_pattern_search, intelligent_search, get_task_context]
Description
Outil facultatif Maguyva le plus étroitement lié au feedback

Idéal pour :

  • Conseils sur les outils (operation="guidance")
  • Rapports de bugs durables et demandes de fonctionnalités pour les mainteneurs de Maguyva

Déconseillé pour :

  • Calculs, hachages et traitement de chaînes — préférez le calcul local ou les outils de l’hôte

Bonnes pratiques

#
  1. Utiliser les remplacements explicites à bon escient: Omettez le dépôt lorsque votre client MCP fournit une valeur par défaut pour la requête ou lorsque la clé permet d’accéder à un seul dépôt ; sinon, transmettez-le explicitement.
  2. Choisir le bon mode de recherche: Utilisez intelligent_search avec mode="auto" pour la plupart des cas. Précisez un mode quand vous savez exactement ce dont vous avez besoin.
  3. Exploiter les filtres de langage: Utilisez language_filter pour restreindre les résultats et améliorer les performances.
  4. Boost GraphRAG: Le boost d'importance GraphRAG est désactivé par défaut pour la recherche sémantique (boost_by_importance=false), afin de garder le classement sûr pour les agents. Passez boost_by_importance=true pour activer le reclassement basé sur la centralité pour les visites d'architecture.
  5. La correspondance de dépôt ignore la casse, mais n'est pas floue: repository_context fait correspondre les noms de dépôt sans tenir compte de la casse — il ne corrige pas les fautes de frappe. Lorsque l'identité servie diffère de celle demandée, metadata.resolution_reason indique "defaulted" (aucune branche n'a été demandée) ou "fallback" (la branche ou le dépôt demandé n'est pas disponible). Le champ est omis lorsque la demande correspond exactement.
  6. Combiner les outils: Utilisez plusieurs méthodes d'API ensemble pour une analyse complète.
  7. Gérer les résultats volumineux: Utilisez limit et les contrôles de pagination spécifiques à l'outil (par exemple line_start/line_end dans get_file).
  8. Utiliser ask_maguyva pour l'orientation sur les outils: Appelez ask_maguyva avec operation="guidance" et query="tool_selection" pour des conseils et exemples de sélection d’outils. Utilisez vos outils locaux pour les calculs et les transformations de chaînes.
  9. Vérifier l'impact avant et après l'édition: Avant de modifier un symbole partagé, appelez dependency_search avec analysis_type="impact" (ou passez changed_paths pour l'impact d'une PR/diff) afin de voir son rayon d'impact. Après l'édition, définissez verify_after_edit=true avec targets et/ou changed_paths pour une revérification compacte des mêmes symboles. Cette vérification porte sur le graphe indexé : elle ne lit pas les modifications locales non commitées et ne remplace pas les tests locaux. Vérifiez indexed_commit_sha et la fraîcheur de l’index avant de considérer les résultats comme une preuve pour une nouvelle révision.

Caractéristiques de performance

#
Opération Remarques sur les performances
Recherche sémantique Comprend la génération du vecteur de la requête et la recherche vectorielle. La latence dépend de ces deux opérations.
Recherche textuelle Pour la recherche approximative dans le contenu, les pages plus lointaines récupèrent davantage de candidats. Affinez la requête avec path_filter et language_filter.
Recherche structurelle Interroge les nœuds AST indexés. Utilisez un préréglage ou un motif précis et limitez le nombre de résultats.
Recherche de dépendances Le coût évolue avec la profondeur — préférez depth="shallow" sauf si vous avez besoin d'un contexte multi-sauts ; per_hop_limit borne l'éventail des résultats
Récupération de fichier Lisez la plage nécessaire avec line_start/line_end ou max_tokens, puis utilisez les métadonnées de continuation renvoyées pour les contenus tronqués.
Contexte du dépôt La résolution du dépôt s’exécute à chaque appel d’outil. Passez repository explicitement si vous souhaitez un dépôt précis.
ask_maguyva (guidance / evaluate) S’exécute dans le serveur MCP sans interroger l’index du dépôt.

Gestion des erreurs

#

Les réponses des outils contiennent des champs de statut communs et des champs de contenu propres à l’outil au premier niveau. Les recherches renvoient results ; get_file renvoie content. Les champs communs comprennent :

  • status: Chaîne — "success" ou "error". Les signaux de correspondance dégradée et de fraîcheur ont leurs propres champs : metadata.resolution_reason sous metadata, et index_freshness.status au premier niveau de l'action info de repository_context.
  • timing_ms: Durée d’exécution de l’outil en millisecondes
  • applied_filters: Paramètres de requête effectivement appliqués et enregistrés pour l’opération
  • error: Message d’erreur sous forme de chaîne lorsque status vaut "error" ; il peut inclure des conseils de résolution.
  • metadata: Informations complémentaires sur l'opération (routage, mise en cache, ajustements de paramètres)
  • pagination: Présent dans les réponses de collections paginées par curseur — inclut has_more et next_cursor. Les fenêtres de recherche classée fournissent un nombre limité de résultats top-K, pas des collections exhaustives paginées.

Vérifiez le champ status avant de traiter la charge utile d'un outil — ses valeurs sont "success" ou "error". Gérez aussi les erreurs de transport MCP/JSON-RPC et de validation de requête, qui peuvent survenir avant même qu'une charge utile ne soit produite. Pour les signaux de correspondance dégradée ou de fraîcheur, lisez plutôt le champ dédié : metadata.resolution_reason sous metadata, ou index_freshness.status au premier niveau de l'action info de repository_context (known/partial/unknown/unavailable).

Bien démarrer

#
  1. Configurer le client MCP: Pointez votre client MCP vers le point de terminaison du serveur Maguyva
  2. Confirmer l'accès au dépôt: Utilisez repository_context avec list ou info pour examiner les dépôts accessibles à la clé API
  3. Commencer à rechercher: Commencez avec intelligent_search et explorez les outils spécialisés au besoin
  4. Combiner les outils: Utilisez plusieurs outils ensemble pour une analyse de code complète

Pour des instructions d'intégration détaillées, voir le guide d'installation.