Cette page explique comment configurer le serveur MCP de Mainframe Assessment Tool et interagir avec lui. Vous pouvez explorer des domaines d'activité, rechercher des composants et récupérer des métriques de complexité à partir de vos évaluations de mainframe à l'aide de requêtes en langage naturel. Pour interagir avec le serveur MCP, connectez-vous via des agents d'IA ou des clients MCP (Model Context Protocol), tels que Antigravity.
Par exemple, vous pouvez effectuer les opérations suivantes :
- Lister et afficher les évaluations existantes.
- Explorez les domaines d'activité détectés dans vos évaluations.
- Recherchez et filtrez les composants en fonction de différents critères.
- Récupérez les spécifications des composants, y compris les dépendances et les métriques de complexité.
Pour en savoir plus sur MCP, consultez Qu'est-ce que le protocole MCP (Model Context Protocol) ?.
Avant de commencer
Pour vous préparer à activer le serveur MCP et à vous y connecter, effectuez les tâches suivantes :
- Familiarisez-vous avec Mainframe Assessment Tool. Assurez-vous d'avoir déjà utilisé Mainframe Assessment Tool pour effectuer une évaluation.
- Accordez les autorisations nécessaires. Les autorisations dont vous avez besoin dépendent de la façon dont vous avez déployé Mainframe Assessment Tool :
- Sur une instance de VM Compute Engine, vous devez être autorisé à définir des métadonnées personnalisées sur l'instance. Pour en savoir plus sur les rôles requis, consultez Définir et supprimer des métadonnées personnalisées.
- Sur un cluster GKE, vous devez être autorisé à mettre à jour les déploiements dans le cluster et configurer l'outil de ligne de commande
kubectlpour vous connecter au cluster. Pour en savoir plus, consultez Configurer l'accès au cluster pour kubectl.
- Configurez Google Cloud CLI : installez et configurez la dernière version de Google Cloud CLI. Pour en savoir plus, consultez Installer Google Cloud CLI.
Activer le serveur MCP
Le serveur MCP est désactivé par défaut. Pour activer le serveur MCP, suivez les instructions correspondant à votre environnement de déploiement.
Sur une instance Compute Engine
Pour activer le serveur MCP sur votre instance Compute Engine Mainframe Assessment Tool, ajoutez la clé de métadonnées MAT_ENABLE_MCP et définissez sa valeur sur true en exécutant la commande gcloud suivante :
gcloud compute instances add-metadata INSTANCE_NAME \
--metadata=MAT_ENABLE_MCP=true \
--zone=ZONE
Remplacez les éléments suivants :
INSTANCE_NAME: nom de votre instance de VM.ZONE: zone où se trouve votre instance de VM.
Si vous définissez la clé de métadonnées sur une VM en cours d'exécution, vous devez redémarrer la VM pour que les modifications soient prises en compte.
Sur un cluster GKE
Pour activer le serveur MCP sur un déploiement GKE, définissez la variable d'environnement MAT_ENABLE_MCP sur le conteneur mcp-server sur true :
kubectl set env deployment/mat-apps --containers=mcp-server \
MAT_ENABLE_MCP=true --namespace=VERSION
Remplacez VERSION par la version de Mainframe Assessment Tool déployée sur le cluster. Cette version correspond également à l'espace de noms du déploiement (par exemple, mainframe-assessment-2-8-0). La mise à jour de la variable d'environnement redémarre le pod Mainframe Assessment Tool avec le serveur MCP activé.
Étant donné que Mainframe Assessment Tool s'exécute en tant que pod unique, il est brièvement indisponible pendant le démarrage du nouveau pod. Pour désactiver le serveur MCP, définissez la variable d'environnement MAT_ENABLE_MCP sur false.
Se connecter au serveur MCP
Vous pouvez vous connecter au serveur MCP à l'aide d'agents d'IA standards qui acceptent les connexions MCP via HTTP transmissible.
Le serveur MCP se trouve sous la route /mcp/ sur le même port que celui utilisé pour accéder à l'UI Mainframe Assessment Tool. Pour en savoir plus, consultez Accéder à la VM Mainframe Assessment Tool depuis votre ordinateur ou Accéder à Mainframe Assessment Tool déployé sur GKE depuis votre ordinateur.
Exemples de configuration
Les sections suivantes fournissent des exemples de configuration de différents agents d'IA pour se connecter au serveur MCP.
Remplacez LOCAL_PORT par le port local utilisé pour accéder à l'interface utilisateur de Mainframe Assessment Tool.
Antigravity
Pour utiliser Antigravity, configurez le serveur MCP dans le fichier mcp_config.json comme suit :
{
"mcpServers": {
"mainframe-assessment-tool": {
"serverUrl": "http://localhost:LOCAL_PORT/mcp/"
}
}
}
Pour en savoir plus, consultez Protocole MCP (Model Context Protocol).
Outils du serveur MCP
Le serveur MCP de Mainframe Assessment Tool fournit des outils qui permettent aux agents IA de récupérer des données à partir de vos évaluations.
ListAssessments
Liste toutes les évaluations de l'instance Mainframe Assessment Tool. Chaque évaluation inclut son nom, son ID, sa description et ses codes temporels.
ListDomains
Liste les domaines pour un ID d'évaluation Mainframe Assessment Tool donné. Chaque domaine inclut son nom, sa description et son ID.
Arguments
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
AssessmentId |
string | Oui | ID de l'évaluation Mainframe Assessment Tool. |
ListAssets
Liste les composants pour un ID d'évaluation Mainframe Assessment Tool donné. Chaque composant inclut son ID, son nom, son chemin d'accès, son type et les ID de domaine qui lui sont attribués.
Arguments
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
AssessmentId |
string | Oui | ID de l'évaluation Mainframe Assessment Tool. |
FetchDomain
Récupère les détails du domaine pour un ID de domaine et un ID d'évaluation Mainframe Assessment Tool donnés. Les détails du domaine incluent l'ID, le nom, la description et le résumé.
Arguments
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
AssessmentId |
string | Oui | ID de l'évaluation Mainframe Assessment Tool. |
DomainId |
string | Oui | ID du domaine Mainframe Assessment Tool. |
FetchAsset
Récupère le récapitulatif des spécifications d'un composant pour un ID d'évaluation Mainframe Assessment Tool donné. La spécification de l'asset inclut son ID, son nom, son utilisation, sa description, son graphique ETL et ses cartes BMS.
Arguments
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
AssessmentId |
string | Oui | ID de l'évaluation Mainframe Assessment Tool. |
AssetId |
string | Oui | ID de l'élément Mainframe Assessment Tool. |
DetailedSpec |
booléen | Non (par défaut : false) |
Si la valeur est définie sur "true", la réponse inclut également les spécifications de la méthode avec leurs cas de test. |
FetchAssetsCyclomaticComplexity
Récupère les scores de complexité cyclomatique pour une liste d'éléments pour un ID d'évaluation Mainframe Assessment Tool donné.
Arguments
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
AssessmentId |
string | Oui | ID de l'évaluation Mainframe Assessment Tool. |
AssetIds |
chaîne[] | Oui | Liste des ID des composants Mainframe Assessment Tool. |
SearchContent
Recherchez dans le code source, les spécifications générées par l'IA et les règles métier d'une évaluation mainframe spécifique. Il prend en charge les modes de recherche par mots clés (bm25), sémantique (embedding) et hybride (hybrid), ce qui permet aux utilisateurs de trouver les composants et la documentation pertinents.
L'outil peut filtrer les résultats par type de document (source, spec ou bre), limiter le nombre de correspondances renvoyées et, si vous le souhaitez, récupérer le contenu complet des documents correspondants.
Arguments
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
AssessmentId |
string | Oui | ID de l'évaluation Mainframe Assessment Tool. |
Query |
string | Oui | Requête de recherche. |
DocTypes |
chaîne[] | Non | Filtrer les résultats par type de document. Les valeurs acceptées sont source, spec ou bre. |
Limit |
entier | Non | Limitez le nombre de correspondances renvoyées. |
IncludeContent |
booléen | Non | Si la valeur est définie sur "true", la réponse inclut également le contenu complet des documents correspondants. La valeur par défaut est false. |
SearchMode |
string | Non | Mode de recherche à utiliser. Les valeurs acceptées sont bm25 (basée sur les mots clés), embedding (sémantique) ou hybrid. La valeur par défaut est hybrid. |
ExploreData
Exécute un agent IA interactif (l'explorateur de données) qui agit comme un analyste de données pour votre évaluation. L'agent peut interroger la base de données structurée sous-jacente d'une évaluation spécifique pour répondre à des questions complexes.
Arguments
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
AssessmentId |
string | Oui | ID de l'évaluation Mainframe Assessment Tool. |
Query |
string | Oui | Question ou requête pour l'exploration des données. |
ListBusinessRulesExtractionJobs
Liste les jobs de règles métier pour un ID d'évaluation Mainframe Assessment Tool donné. La liste renvoyée inclut l'ID, le nom, l'état, la requête ciblée et d'autres informations pour chaque job.
Arguments
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
AssessmentId |
string | Oui | ID de l'évaluation Mainframe Assessment Tool. |
ListBusinessRules
Liste les règles métier extraites par un ID de job d'extraction de règles métier et un ID d'évaluation de l'outil d'évaluation Mainframe spécifiques. Pour gérer le grand nombre de règles, cette action est compatible avec la pagination.
Arguments
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
AssessmentId |
string | Oui | ID de l'évaluation Mainframe Assessment Tool. |
JobId |
string | Oui | ID du job d'extraction des règles métier. |
PageSize |
string | Non | Taille de la page à récupérer. La valeur maximale acceptée est de 25. |
PageToken |
string | Non | Jeton de la page à extraire. Cette valeur a été renvoyée par un appel précédent à cette action. |
OrderList |
objet | Non | Ordre dans lequel renvoyer les résultats. Consultez les descriptions de chaque champ. |
OrderList.OrderBy |
string | Non | Nom du champ selon lequel les résultats doivent être triés. Exemples : business_rule_id, business_rule_name, status. |
OrderList.Order |
string | Non | Sens de la commande. Valeurs acceptées : ASCENDING et DESCENDING. |
Filter |
objet | Non | Filtrez les résultats renvoyés. Consultez les descriptions de chaque champ. |
Filter.Status |
string | Non | État des règles métier à utiliser pour le filtrage. Les valeurs acceptées sont "PENDING", "VALIDATED" et "OBSOLETE". |
Filter.Tags |
chaîne[] | Non | Liste des tags associés aux règles métier. |
Filter.AssetIDs |
chaîne[] | Non | Liste des ID d'assets Mainframe Assessment Tool associés aux règles métier. |
FetchJobSpec
Récupère la spécification du job d'extraction des règles métier pour un ID d'évaluation Mainframe Assessment Tool.
Arguments
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
AssessmentId |
string | Oui | ID de l'évaluation Mainframe Assessment Tool. |
JobId |
string | Oui | ID du job d'extraction des règles métier. |
Exemples d'utilisation
Voici des exemples de requêtes en langage naturel auxquelles un agent IA peut répondre en utilisant les outils du serveur MCP pour récupérer et traiter les données d'évaluation :
- Scénario : Rechercher des programmes complexes dans une évaluation
- Requête utilisateur : "Liste les 10 programmes COBOL les plus complexes de l'évaluation intitulée
AssessmentName." - Scénario : rechercher et filtrer les composants appartenant à un domaine d'entreprise
- Requête utilisateur : "Liste tous les jobs JCL liés au domaine
DomainNamedans l'évaluationAssessmentName." - Scénario : Obtenir les dépendances des composants à partir d'une évaluation.
- Requête utilisateur : "Quelles sont les dépendances du job JCL
JCLJobNamedans l'évaluation intituléeAssessmentName?" - Scénario : trouver les règles métier extraites d'un job spécifique.
- Requête utilisateur : "Liste toutes les règles métier extraites par
BusinessRuleJobNamedans l'évaluation intituléeAssessmentName." - Scénario : explorer les données d'évaluation en langage naturel
- Requête utilisateur : "Explique comment fonctionne le flux de traitement des données pour le système de facturation dans l'évaluation intitulée
AssessmentName."