Outils MCP

Chaque outil que le serveur expose via MCP, regroupés par fonction.

Recherche et récupération

Outils qui trouvent des choses par mot-clé, motif ou sens.

searchAxonExamples

Recherche par mot-clé dans le code Axon indexé. Supporte les filtres de catégorie et d'étiquette. Retourne les meilleures correspondances avec un score de pertinence et un court extrait.

searchAxonOperatorExamples

Recherche spécifiquement l'utilisation d'opérateurs — passez >=, ==, +, etc., et le serveur retourne des exemples réels où l'opérateur est utilisé en contexte.

searchAxonDocs

Recherche FlexSearch dans l'arborescence de documentation HTML et Markdown. ~50 ms de temps de requête ; les résultats incluent la hiérarchie des en-têtes et des extraits de contenu.

searchAxonRegex

Recherche regex de style grep dans le code. Retourne les lignes correspondantes avec N lignes de contexte environnant (configurable).

listAxonCategories / listAxonPatterns / getAxonPattern / getAxonExample

Naviguer par catégorie ou récupérer une fonction spécifique par ID ou nom.

Analyse de fonction

Outils qui raisonnent sur la façon dont les fonctions se rapportent les unes aux autres.

findFunctionUsage

Chaque site d'appel pour une fonction donnée, avec le chemin du fichier et le numéro de ligne.

getFunctionExamples

Exemples d'utilisation réelle tirés de la base de code indexée — utile quand la propre documentation de la fonction est insuffisante.

getFunctionCallGraph

Le graphe appelant/appelé enraciné à une fonction, à profondeur configurable.

getFunctionUsageStats

Compteurs d'utilisation dans la base de code. Fonctions inutilisées, fonctions sur-utilisées et métriques de couplage.

Génération de code et validation

Outils qui écrivent et vérifient du code.

generateAxonCode

Génération basée sur modèle. 33 modèles YAML organisés couvrent les séquences HVAC, les calculs d'énergie, la détection de pannes et l'agrégation de données. Le résultat est validé avant d'être retourné.

validateAxonCode

Exécute trois passes : vérification sémantique (parse-t-il ? les identifiants sont-ils valides ?), analyse de performance et linting des meilleures pratiques.

parseAxonAst

Analyser une expression Axon en AST. Utile pour construire des outils de niveau supérieur au-dessus du serveur.

executeAxonCode

Évaluer une expression Axon par rapport au projet SkySpark principal. Retourne le résultat sous forme de grille JSON Haystack.

commitAxonFunction

Valider une fonction pour le projet principal. Avec functionVersioning activé, la révision précédente est conservée.

Intégration SkySpark

Outils pour communiquer avec une instance SkySpark en direct.

queryHaystack

Exécuter une requête Haystack (read, readAll, history, etc.) et retourner la grille de résultats.

listSkySparkProjects / switchSkySparkProject

Énumérer les projets sur l'instance configurée, et modifier le contexte de projet actif pour les appels ultérieurs.

discoverProjectFunctions / discoverInstanceProjects

Parourir les projets configurés de l'instance, synchroniser leurs fonctions définies par l'utilisateur dans l'index local, et les rendre consultables.

getProjectSchema

Retourner le schéma Haystack (étiquettes, marqueurs, types définis) pour un projet.

setPrimaryProject / getPrimaryProject

Gérer le contexte de projet principal utilisé par executeAxonCode et commitAxonFunction.

Analyse de graphe et similarité

Outils construits sur le graphe de code et le magasin d'embeddings vectoriels.

getCallers / getCallees

Voisins directs dans le graphe d'appels — qui appelle X et ce que X appelle.

getCodeImpact

Analyse de rayon de souffle. Étant donné une fonction, retourner chaque fonction en aval qui serait affectée par une modification de celle-ci.

findCodePath

Chemin d'appel le plus court entre deux fonctions. Pratique pour tracer comment une fonction feuille est atteinte à partir du point d'entrée.

semanticCodeSearch

Requêtes en langage naturel qui retournent du code par sens. « Trouver anything qui réinitialise les compteurs d'énergie quotidiens à minuit » fonctionne même quand aucun code ne contient littéralement ces mots.

findSimilarCode

Similarité vectorielle entre un extrait de code fourni et la base de code indexée. Utile pour la déduplication et la découverte de refactorisation.

getGraphMetrics / getMostCalledFunctions / getMostComplexFunctions

Centralité de proximité, scores de couplage, classements de complexité.

buildProjectGraph / buildProjectEmbeddings / getGraphStats

Outils de maintenance pour reconstruire et inspecter les indices.

detectCycles

Détection de dépendances circulaires dans le graphe d'appels.

Conventions de gestion des erreurs

Tous les outils retournent une erreur structurée en cas d'échec plutôt que de lever une exception. Le corps de l'erreur inclut un code (par exemple INDEX_NOT_FOUND, SKYSPARK_UNREACHABLE, INVALID_ARGUMENT) et un message lisible par l'homme. Les clients doivent présenter le code aux utilisateurs finaux et enregistrer le message pour le débogage.