MATLAB MCP Core Server

officiel

Exécutez MATLAB® en utilisant des applications d'IA avec le serveur MCP officiel de MathWorks®.

Que pouvez-vous faire avec MATLAB Core MCP ?

  • Exécuter du code MATLAB — Demandez à votre IA d’évaluer des extraits de code MATLAB et de renvoyer la sortie via evaluate_matlab_code.
  • Exécuter des scripts et des tests — Faites exécuter à votre IA des fichiers .m ou .p, y compris des tests unitaires, et récupérez les résultats via run_matlab_file ou run_matlab_test_file.
  • Vérifier la qualité du code — Demandez une analyse statique d’un script MATLAB pour le style, les erreurs et les bonnes pratiques à l’aide de check_matlab_code.
  • Inspecter l’environnement MATLAB — Demandez à votre IA de lister les boîtes à outils MATLAB installées et les détails de version avec detect_matlab_toolboxes.

Documentation

Serveur MCP MATLAB

English • Español • 日本語 • 한국어 • 简体中文

Exécutez MATLAB® à l'aide d'applications d'IA avec le serveur MCP MATLAB officiel de MathWorks®. Le serveur MCP MATLAB permet à vos applications d'IA de :

  • Démarrer et quitter MATLAB.
  • Écrire et exécuter du code MATLAB.
  • Évaluer votre code MATLAB pour le style et l'exactitude.

Pour aider votre agent à utiliser MATLAB et Simulink, vous pouvez utiliser les compétences de MATLAB Agentic Toolkit (GitHub) et Simulink Agentic Toolkit (GitHub), qui peuvent également installer ce serveur MCP pour vous.

Table des matières

Configuration

  1. Installez MATLAB (MathWorks) R2021a ou une version ultérieure et ajoutez-le au PATH du système.

  2. Le serveur prend en charge toute application d'IA utilisant le Model Context Protocol. Pour configurer le serveur MCP MATLAB pour Claude Desktop, passez directement aux instructions pour Claude Desktop. Pour configurer le serveur pour d'autres applications, suivez ces instructions :

    • Pour Windows ou Linux, Téléchargez la dernière version. (Vous pouvez également compiler à partir des sources : installez Go et compilez le binaire à l'aide de go install github.com/matlab/matlab-mcp-server/cmd/matlab-mcp-server@latest).

    • Pour macOS, téléchargez d'abord la dernière version en exécutant la commande suivante dans votre terminal :

      • Pour les processeurs Apple silicon, exécutez :
        curl -L -o ~/Downloads/matlab-mcp-server https://github.com/matlab/matlab-mcp-server/releases/latest/download/matlab-mcp-server-macos-arm64
        
      • Pour les processeurs Intel, exécutez :
        curl -L -o ~/Downloads/matlab-mcp-server https://github.com/matlab/matlab-mcp-server/releases/latest/download/matlab-mcp-server-macos-x64
        

      Accordez ensuite les permissions d'exécution au binaire téléchargé afin de pouvoir exécuter le serveur MCP MATLAB :

      chmod +x ~/Downloads/matlab-mcp-server
      
  3. Ajoutez le serveur MCP MATLAB à votre application d'IA. Vous trouverez des instructions pour ajouter des serveurs MCP dans la documentation de votre application d'IA. Pour des exemples d'instructions sur l'utilisation de Claude Code®, Claude Desktop® et GitHub Copilot dans Visual Studio® Code, voir ci-dessous. Notez que vous pouvez personnaliser le serveur en spécifiant des Arguments facultatifs.

Claude Code

Dans votre terminal, exécutez la commande suivante, en veillant à insérer le chemin complet vers le binaire du serveur que vous avez obtenu lors de la configuration :

claude mcp add --transport stdio matlab -- /fullpath/to/matlab-mcp-server-binary

Vous pouvez personnaliser le serveur en spécifiant des Arguments facultatifs. Notez le séparateur -- entre les options de Claude Code et les arguments du serveur :

claude mcp add --transport stdio matlab -- /fullpath/to/matlab-mcp-server-binary --initial-working-folder=/home/username/myproject

Pour plus de détails sur l'ajout de serveurs MCP dans Claude Code, voir Ajouter un serveur stdio local (Claude Code). Pour supprimer le serveur ultérieurement, exécutez :

claude mcp remove matlab

Claude Desktop

Vous installez le serveur MCP MATLAB dans Claude Desktop à l'aide du bundle du serveur MCP MATLAB.

  1. Installez l'extension Filesystem dans Claude Desktop pour permettre à Claude de lire et d'écrire des fichiers sur votre système. Dans Claude Desktop, cliquez sur Paramètres > Extensions > Parcourir les extensions. Recherchez l'extension Filesystem développée par Anthropic et cliquez sur Installer. Spécifiez les dossiers auxquels vous souhaitez autoriser le serveur MCP à accéder, puis basculez le bouton Désactivé sur Activer pour activer l'extension Filesystem.

  2. Téléchargez le bundle du serveur MCP MATLAB matlab-mcp-server.mcpb depuis la page Dernière version.

  3. Pour installer le bundle du serveur MCP MATLAB en tant qu'extension de bureau, double-cliquez sur le fichier matlab-mcp-server.mcpb téléchargé et cliquez sur Installer dans Claude Desktop. (Vous pouvez également naviguer dans Claude vers Menu Fichier > Paramètres > Extensions > Paramètres avancés > Installer l'extension et sélectionner le fichier matlab-mcp-server.mcpb. Cliquez sur Installer).

Pour personnaliser le comportement du serveur MCP MATLAB, accédez à Paramètres > Extensions > Configurer, où vous pouvez modifier les Arguments du serveur.

GitHub Copilot dans Visual Studio Code

Dans votre espace de travail VS Code, créez un fichier nommé .vscode/mcp.json. Insérez le JSON suivant, en veillant à spécifier le chemin complet vers le binaire du serveur que vous avez obtenu lors de la configuration, ainsi que tous les Arguments. Enregistrez ensuite le fichier. (Notez que sous Windows, vos chemins nécessitent des barres obliques supplémentaires comme caractères d'échappement).

{
    "servers": {
        "matlab": {
            "type": "stdio",
            "command": "C:\\fullpath\\to\\matlab-mcp-server-windows-x64.exe",
            "args": []
        }
    }
}

Pour plus d'informations sur l'utilisation des serveurs MCP dans VS Code, voir Ajouter et gérer les serveurs MCP dans VS Code (VS Code).

Codex

Dans votre terminal, exécutez la commande suivante, en veillant à insérer le chemin complet vers le binaire du serveur que vous avez obtenu lors de la configuration :

codex mcp add matlab -- /fullpath/to/matlab-mcp-server-binary

Vous pouvez personnaliser le serveur en spécifiant des Arguments facultatifs. Par exemple :

codex mcp add matlab -- /fullpath/to/matlab-mcp-server-binary --initial-working-folder=/home/username/myproject

[!NOTE] Utilisateurs Windows : Codex ne transmet pas la variable d'environnement WINDIR, dont vous avez besoin pour exécuter MATLAB et Simulink (voir #32).

Pour ajouter la variable, ouvrez votre fichier de configuration Codex à C:\Users\<username>\.codex\config.toml, et ajoutez env_vars = ["WINDIR"] à la section [mcp_servers.matlab] :

[mcp_servers.matlab]
command = 'C:\fullpath\to\matlab-mcp-server-windows-x64.exe'
args = []
env_vars = ["WINDIR"]

Arguments

Personnalisez le comportement du serveur en spécifiant des arguments de l'une des manières suivantes :

  • Insérez les arguments dans les paramètres de configuration de votre application d'IA (généralement un fichier .json).
  • Saisissez les arguments comme indicateurs d'interface en ligne de commande (CLI) lorsque vous démarrez le serveur.
  • Utilisez des variables d'environnement, spécifiées soit dans votre CLI, soit dans les paramètres de configuration de l'application. Pour dériver le nom de la variable d'environnement à partir d'un indicateur CLI, ajoutez le préfixe MW_MCP_SERVER_, convertissez en majuscules et remplacez les traits d'union (-) par des underscores (_). Par exemple, l'argument --matlab-root devient la variable d'environnement MW_MCP_SERVER_MATLAB_ROOT. Les indicateurs CLI ont priorité sur les variables d'environnement, si vous utilisez les deux.
ArgumentDescriptionExemple
helpAffiche les informations d'aide pour tous les arguments.--help
versionAffiche la version du serveur MCP MATLAB.--version
matlab-rootChemin complet spécifiant quel MATLAB démarrer. N'incluez pas /bin dans le chemin. Par défaut, le serveur essaie de trouver le premier MATLAB sur le PATH du système.Windows : --matlab-root=C:\\Program Files\\MATLAB\\R2026a

Linux/macOS : --matlab-root=/home/usr/MATLAB/R2026a

Comme variable d'environnement : MW_MCP_SERVER_MATLAB_ROOT=/home/usr/MATLAB/R2026a
initialize-matlab-on-startupPour initialiser MATLAB dès que vous démarrez le serveur, définissez cet argument sur true. Par défaut, MATLAB ne démarre que lorsque le premier outil est appelé.--initialize-matlab-on-startup=true
initial-working-folderSpécifiez le dossier où MATLAB démarre. Si vous ne spécifiez pas de valeur, MATLAB démarre au chemin du premier Root (MCP) de votre application d'IA. Si vous n'avez pas défini de racine, MATLAB démarre dans ces emplacements :
  • Linux : /home/username
  • Windows : C:\Users\username\Documents
  • Mac : /Users/username/Documents
Windows : --initial-working-folder=C:\\Users\\username\\MyProject

Linux/macOS : --initial-working-folder=/Users/username/MyProject
matlab-display-modeSpécifiez s'il faut afficher le bureau MATLAB. Utilisez le mode desktop (par défaut) pour afficher le bureau MATLAB. Utilisez le mode nodesktop pour utiliser MATLAB uniquement à partir de votre application d'IA, sans le bureau MATLAB. Notez qu'en mode nodesktop, les commandes nécessitant une interface graphique (telles que edit, open, open_system, uifigure et appdesigner) ouvriront toujours des fenêtres MATLAB sur votre bureau.--matlab-display-mode=nodesktop
matlab-session-modeSpécifiez si le serveur MCP démarre un nouveau MATLAB ou se connecte à une session MATLAB existante (pris en charge pour MATLAB R2023a et versions ultérieures). La valeur par défaut est le mode auto.

Mode new : Le serveur MCP démarre une nouvelle session MATLAB.

Mode auto (par défaut) : Le serveur essaie de se connecter à une session MATLAB existante, que vous devez avoir configurée pour le mode existing en suivant les instructions ci-dessous. Si le serveur ne parvient pas à trouver une session MATLAB existante, il en démarre une nouvelle.

Mode existing : Le serveur essaie de se connecter à une session MATLAB existante. N'utilisez pas ce mode en conjonction avec les arguments matlab-root, initial-working-folder ou matlab-display-mode. Vous devez avoir configuré votre session MATLAB au préalable pour utiliser ce mode, avec ces étapes :

  1. Si vous utilisez le mode existing pour la première fois, exécutez ./matlab-mcp-server --setup-matlab.

    Cette commande installe un module complémentaire nommé MATLAB MCP Server Toolbox dans MATLAB. Vous pouvez personnaliser la commande avec d'autres arguments de ce tableau. Par exemple, pour spécifier quel MATLAB utiliser pour installer la toolbox, vous pouvez utiliser ./matlab-mcp-server --setup-matlab --matlab-root=/home/usr/MATLAB/R2026a.

    Pour Claude Desktop, vous devez télécharger le binaire du serveur MCP MATLAB en suivant les instructions de Configuration avant d'exécuter ./matlab-mcp-server --setup-matlab.

  2. Dans la fenêtre de commande d'une session MATLAB en cours, exécutez shareMATLABSession(). Le serveur MCP se connectera à ce MATLAB lorsque vous démarrerez le serveur avec --matlab-session-mode=existing ou --matlab-session-mode=auto. Si vous exécutez plusieurs sessions MATLAB, le serveur se connecte à la session MATLAB où vous avez exécuté le plus récemment la commande shareMATLABSession().

    Comme alternative à l'exécution manuelle de shareMATLABSession(), vous pouvez ajouter la commande à votre Script de démarrage MATLAB (MathWorks).
--matlab-session-mode=existing
extension-filePour utiliser des outils MCP personnalisés, fournissez un chemin vers un fichier JSON qui définit vos outils. Vous pouvez également utiliser plusieurs fichiers d'extension. Pour plus de détails sur l'utilisation d'outils personnalisés, voir Utiliser des outils personnalisés avec le serveur MCP MATLAB.

Windows : --extension-file=C:\\Users\\name\\my-tools.json

Linux/macOS : --extension-file=/path/to/my-tools.json

Utilisation de plusieurs fichiers d'extension :

Windows :--extension-file=C:\\path\\to\\tools-1.json --extension-file=C:\\path\\to\\tools-2.json

Linux/macOS :--extension-file=/path/to/tools1.json --extension-file=/path/to/tools2.json

Utilisation de variables d'environnement :

Windows : MW_MCP_SERVER_EXTENSION_FILE=C:\Users\name\tools1.json;C:\Users\name\tools2.json

Linux/macOS : MW_MCP_SERVER_EXTENSION_FILE=/path/to/tools1.json:/path/to/tools2.json
log-folderSpécifiez le dossier où le serveur MCP stocke les fichiers journaux. S'il n'est pas spécifié, le serveur utilise le dossier temporaire par défaut de votre système d'exploitation.Windows : --log-folder=C:\\Users\\name\\AppData\\Local\\Temp

Linux/macOS : --log-folder=/tmp/my-logs
log-levelLes niveaux de journalisation du serveur MCP. Les valeurs valides, par ordre décroissant de verbosité, sont debug, info, warn et error. La valeur par défaut est info.--log-level=debug
disable-telemetryPour désactiver la collecte de données anonymisées, définissez cet argument sur true. Pour plus de détails, voir Collecte de données.--disable-telemetry=true

Outils

  1. detect_matlab_toolboxes

    • Renvoie des informations sur MATLAB installé et les toolboxes, y compris les numéros de version.
  2. check_matlab_code

    • Effectue une analyse statique de code sur un script MATLAB. Renvoie des avertissements concernant le style de codage, les erreurs potentielles, les fonctions obsolètes, les problèmes de performance et les violations des bonnes pratiques. Il s'agit d'une opération non destructive et en lecture seule qui permet d'identifier les problèmes de qualité du code sans exécuter le script.
    • Entrées :
      • script_path (chaîne) : Chemin absolu du fichier de script MATLAB à analyser. Doit être un fichier .m valide. Le fichier n'est pas modifié pendant l'analyse. Exemple : C:\Users\username\matlab\myFunction.m ou /home/user/scripts/analysis.m.
  3. evaluate_matlab_code

    • Évalue une chaîne de code MATLAB et renvoie la sortie.
    • Entrées :
      • code (chaîne) : Code MATLAB à évaluer.
      • project_path (chaîne) : Chemin absolu de votre répertoire de projet. MATLAB définit ce répertoire comme dossier de travail courant. Exemple : C:\Users\username\matlab-project ou /home/user/research.
  4. run_matlab_file

    • Exécute un script MATLAB et renvoie la sortie. Le script doit être un fichier source MATLAB valide (.m) ou un fichier P-code (.p). Si un fichier source MATLAB (.m) et un fichier P-code (.p) portent le même nom et se trouvent dans le même dossier, MATLAB exécute le fichier .p.
    • Entrées :
      • script_path (chaîne) : Chemin absolu du fichier de script MATLAB à exécuter. Doit être un fichier source MATLAB valide (.m) ou un fichier P-code (.p). Exemple : C:\Users\username\projects\analysis.m ou /home/user/matlab/simulation.m.
  5. run_matlab_test_file

    • Exécute un script de test MATLAB et renvoie des résultats de test complets. Conçu spécifiquement pour les fichiers de test unitaire MATLAB qui suivent les conventions du framework de test MATLAB.
    • Entrées :
      • script_path (chaîne) : Chemin absolu du fichier de script de test MATLAB. Doit être un fichier source MATLAB valide (.m) ou un fichier P-code (.p) contenant des tests unitaires MATLAB. Exemple : C:\Users\username\tests\testMyFunction.m ou /home/user/matlab/tests/test_analysis.m.

Ressources

Le serveur MCP fournit des Ressources (MCP) pour aider votre application IA à écrire du code MATLAB. Pour voir les instructions d'utilisation de cette ressource, reportez-vous à la documentation de votre application IA qui explique comment utiliser les ressources.

  1. matlab_coding_guidelines

    • Fournit des normes complètes de codage MATLAB pour améliorer la lisibilité, la maintenabilité et la collaboration du code. Les directives couvrent les conventions de nommage, le formatage, les commentaires, l'optimisation des performances et la gestion des erreurs.
    • URI : guidelines://coding
    • Type MIME : text/markdown
    • Source : Normes de codage MATLAB (GitHub)
  2. plain_text_live_code_guidelines

    • Fournit des règles et des directives pour générer des scripts en direct à l'aide du format de fichier Live Code .m en texte brut, adapté au contrôle de version et au développement assisté par IA. Notez que pour exécuter des scripts en direct en texte brut, vous avez besoin de MATLAB R2025a ou plus récent. Pour plus de détails, consultez Format de fichier Live Code (MathWorks).
    • URI : guidelines://plain-text-live-code
    • Type MIME : text/markdown
    • Source : Génération de Live Code en texte brut (GitHub)

Collecte de données

Le serveur MCP MATLAB peut collecter des informations entièrement anonymisées sur votre utilisation du serveur et les envoyer à MathWorks. Cette collecte de données aide MathWorks à améliorer ses produits et est activée par défaut. Pour vous désinscrire de la collecte de données, définissez l'argument --disable-telemetry sur true.

Considérations de sécurité

Lorsque vous utilisez le serveur MCP MATLAB, vous devez examiner et valider soigneusement tous les appels d'outils avant de les exécuter. Gardez toujours un humain dans la boucle pour les actions importantes et ne procédez que lorsque vous êtes sûr que l'appel fera exactement ce que vous attendez. Pour plus d'informations, consultez Modèle d'interaction utilisateur (MCP) et Considérations de sécurité (MCP).

Licence et utilisation

La licence est disponible dans le fichier LICENSE.md de ce dépôt GitHub.

Les serveurs MCP ne sont autorisés à être utilisés avec MATLAB que conformément au contrat de licence logicielle MathWorks, et ne doivent pas être partagés par plusieurs utilisateurs. Contactez MathWorks si vous avez besoin de prendre en charge une utilisation partagée ou centralisée du serveur.

Contacter le support

MathWorks vous encourage à utiliser ce dépôt et à fournir des commentaires. Pour demander une assistance technique ou soumettre une demande d'amélioration, créez un problème GitHub ou contactez le support technique MathWorks.


Copyright 2025-2026 The MathWorks, Inc.