MATLAB MCP Core Server

официальный

Запускайте MATLAB® с помощью AI-приложений, используя официальный MATLAB MCP Server от MathWorks®.

Что можно делать с MATLAB Core MCP?

  • Запуск кода MATLAB — Попросите вашего ИИ выполнить фрагменты кода MATLAB и вернуть результат через evaluate_matlab_code.
  • Выполнение скриптов и тестов — Пусть ваш ИИ запускает файлы .m или .p, включая модульные тесты, и получает результаты через run_matlab_file или run_matlab_test_file.
  • Проверка качества кода — Запросите статический анализ скрипта MATLAB на стиль, ошибки и лучшие практики с помощью check_matlab_code.
  • Просмотр среды MATLAB — Попросите вашего ИИ перечислить установленные наборы инструментов MATLAB и сведения о версиях с помощью detect_matlab_toolboxes.

Документация

MATLAB MCP Server

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

Запускайте MATLAB® с помощью AI-приложений, используя официальный MATLAB MCP Server от MathWorks®. MATLAB MCP Server позволяет вашим AI-приложениям:

  • Запускать и завершать работу MATLAB.
  • Писать и выполнять код MATLAB.
  • Оценивать ваш код MATLAB на соответствие стилю и корректность.

Чтобы помочь вашему агенту в использовании MATLAB и Simulink, вы можете использовать навыки из MATLAB Agentic Toolkit (GitHub) и Simulink Agentic Toolkit (GitHub), которые также могут установить этот MCP-сервер для вас.

Содержание

Настройка

  1. Установите MATLAB (MathWorks) R2021a или более позднюю версию и добавьте его в системный PATH.

  2. Сервер поддерживает любое AI-приложение, использующее Model Context Protocol. Чтобы настроить MATLAB MCP Server для Claude Desktop, перейдите к инструкциям для Claude Desktop. Чтобы настроить сервер для других приложений, следуйте этим инструкциям:

    • Для Windows или Linux скачайте последний релиз. (В качестве альтернативы вы можете собрать из исходного кода: установите Go и соберите бинарный файл с помощью go install github.com/matlab/matlab-mcp-server/cmd/matlab-mcp-server@latest).

    • Для macOS сначала скачайте последний релиз, выполнив следующую команду в терминале:

      • Для процессоров Apple silicon выполните:
        curl -L -o ~/Downloads/matlab-mcp-server https://github.com/matlab/matlab-mcp-server/releases/latest/download/matlab-mcp-server-macos-arm64
        
      • Для процессоров Intel выполните:
        curl -L -o ~/Downloads/matlab-mcp-server https://github.com/matlab/matlab-mcp-server/releases/latest/download/matlab-mcp-server-macos-x64
        

      Затем предоставьте права на выполнение скачанному бинарному файлу, чтобы вы могли запускать MATLAB MCP Server:

      chmod +x ~/Downloads/matlab-mcp-server
      
  3. Добавьте MATLAB MCP Server в ваше AI-приложение. Инструкции по добавлению MCP-серверов вы можете найти в документации вашего AI-приложения. Примеры инструкций по использованию Claude Code®, Claude Desktop® и GitHub Copilot в Visual Studio® Code см. ниже. Обратите внимание, что вы можете настроить сервер, указав необязательные Аргументы.

Claude Code

В терминале выполните следующую команду, не забыв указать полный путь к бинарному файлу сервера, полученному при настройке:

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

Вы можете настроить сервер, указав необязательные Аргументы. Обратите внимание на разделитель -- между параметрами Claude Code и аргументами сервера:

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

Подробнее о добавлении MCP-серверов в Claude Code см. Добавление локального stdio-сервера (Claude Code). Чтобы удалить сервер позже, выполните:

claude mcp remove matlab

Claude Desktop

Вы устанавливаете MATLAB MCP Server в Claude Desktop с помощью пакета MATLAB MCP Server.

  1. Установите расширение Filesystem в Claude Desktop, чтобы позволить Claude читать и записывать файлы в вашей системе. В Claude Desktop нажмите Settings > Extensions > Browse extensions. Найдите расширение Filesystem, разработанное Anthropic, и нажмите Install. Укажите папки, к которым вы хотите разрешить доступ MCP-серверу, затем переключите кнопку Disabled в положение Enable, чтобы включить расширение Filesystem.

  2. Скачайте пакет MATLAB MCP Server matlab-mcp-server.mcpb со страницы Latest Release.

  3. Чтобы установить пакет MATLAB MCP Server как расширение рабочего стола, дважды щелкните скачанный файл matlab-mcp-server.mcpb и нажмите Install в Claude Desktop. (В качестве альтернативы перейдите в Claude в File menu > Settings > Extensions > Advanced Settings > Install Extension и выберите файл matlab-mcp-server.mcpb. Нажмите Install).

Чтобы настроить поведение MATLAB MCP Server, перейдите в Settings > Extensions > Configure, где вы можете изменить Аргументы сервера.

GitHub Copilot в Visual Studio Code

В рабочей области VS Code создайте файл с именем .vscode/mcp.json. Вставьте следующий JSON, не забыв указать полный путь к бинарному файлу сервера, полученному при настройке, а также любые Аргументы. Затем сохраните файл. (Обратите внимание, что в Windows в путях требуются дополнительные обратные слэши как escape-символы).

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

Дополнительную информацию об использовании MCP-серверов в VS Code см. Добавление и управление MCP-серверами в VS Code (VS Code).

Codex

В терминале выполните следующую команду, не забыв указать полный путь к бинарному файлу сервера, полученному при настройке:

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

Вы можете настроить сервер, указав необязательные Аргументы. Например:

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

[!NOTE] Пользователи Windows: Codex не передает переменную окружения WINDIR, которая необходима для запуска MATLAB и Simulink (см. #32).

Чтобы добавить переменную, откройте файл конфигурации Codex по пути C:\Users\<username>\.codex\config.toml и добавьте env_vars = ["WINDIR"] в раздел [mcp_servers.matlab]:

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

Аргументы

Настройте поведение сервера, указав аргументы одним из следующих способов:

  • Вставьте аргументы в настройки конфигурации вашего AI-приложения (обычно файл .json).
  • Введите аргументы как флаги интерфейса командной строки (CLI) при запуске сервера.
  • Используйте переменные окружения, указанные либо в CLI, либо в настройках конфигурации приложения. Чтобы получить имя переменной окружения из флага CLI, добавьте префикс MW_MCP_SERVER_, преобразуйте в верхний регистр и замените дефисы (-) на подчеркивания (_). Например, аргумент --matlab-root становится переменной окружения MW_MCP_SERVER_MATLAB_ROOT. Если вы используете оба способа, флаги CLI имеют приоритет над переменными окружения.
АргументОписаниеПример
helpОтображает справочную информацию по всем аргументам.--help
versionОтображает версию MATLAB MCP Server.--version
matlab-rootПолный путь, указывающий, какой MATLAB запускать. Не включайте /bin в путь. По умолчанию сервер пытается найти первый MATLAB в системном PATH.Windows: --matlab-root=C:\\Program Files\\MATLAB\\R2026a

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

Как переменная окружения: MW_MCP_SERVER_MATLAB_ROOT=/home/usr/MATLAB/R2026a
initialize-matlab-on-startupЧтобы инициализировать MATLAB сразу после запуска сервера, установите этот аргумент в true. По умолчанию MATLAB запускается только при вызове первого инструмента.--initialize-matlab-on-startup=true
initial-working-folderУкажите папку, в которой запускается MATLAB. Если вы не укажете значение, MATLAB запускается в пути первого Root (MCP) вашего AI-приложения. Если корень не определен, MATLAB запускается в следующих местах:
  • 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-modeУкажите, показывать ли рабочий стол MATLAB. Используйте режим desktop (по умолчанию), чтобы показывать рабочий стол MATLAB. Используйте режим nodesktop, чтобы использовать MATLAB только из вашего AI-приложения, без рабочего стола MATLAB. Обратите внимание, что в режиме nodesktop команды, требующие графического интерфейса (такие как edit, open, open_system, uifigure и appdesigner), по-прежнему будут открывать окна MATLAB на вашем рабочем столе.--matlab-display-mode=nodesktop
matlab-session-modeУкажите, запускает ли MCP-сервер новый MATLAB или подключается к существующему сеансу MATLAB (поддерживается для MATLAB R2023a и новее). По умолчанию используется режим auto.

Режим new: MCP-сервер запускает новый сеанс MATLAB.

Режим auto (по умолчанию): Сервер пытается подключиться к существующему сеансу MATLAB, который вы должны настроить для режима existing, используя инструкции ниже. Если сервер не может найти существующий сеанс MATLAB, он запускает новый.

Режим existing: Сервер пытается подключиться к существующему сеансу MATLAB. Не используйте этот режим вместе с аргументами matlab-root, initial-working-folder или matlab-display-mode. Вы должны заранее настроить свой сеанс MATLAB для использования этого режима, выполнив следующие шаги:

  1. Если вы используете режим existing впервые, выполните ./matlab-mcp-server --setup-matlab.

    Эта команда устанавливает в MATLAB надстройку с именем MATLAB MCP Server Toolbox. Вы можете настроить команду с другими аргументами из этой таблицы. Например, чтобы указать, какой MATLAB использовать для установки набора инструментов, вы можете использовать ./matlab-mcp-server --setup-matlab --matlab-root=/home/usr/MATLAB/R2026a.

    Для Claude Desktop вы должны скачать бинарный файл MATLAB MCP Server, используя инструкции в Настройка, перед выполнением ./matlab-mcp-server --setup-matlab.

  2. В окне команд запущенного сеанса MATLAB выполните shareMATLABSession(). MCP-сервер подключится к этому MATLAB, когда вы запустите сервер с --matlab-session-mode=existing или --matlab-session-mode=auto. Если вы запускаете несколько сеансов MATLAB, сервер подключается к тому сеансу MATLAB, в котором вы последний раз выполняли команду shareMATLABSession().

    В качестве альтернативы ручному выполнению shareMATLABSession() вы можете добавить команду в ваш Startup Script (MathWorks) MATLAB.
--matlab-session-mode=existing
extension-fileЧтобы использовать пользовательские MCP-инструменты, укажите путь к JSON-файлу, определяющему ваши инструменты. Вы также можете использовать несколько файлов расширений. Подробнее об использовании пользовательских инструментов см. Использование пользовательских инструментов с MATLAB MCP Server.

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

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

Использование нескольких файлов расширений:

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

Использование переменных окружения:

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-folderУкажите папку, в которой MCP-сервер хранит файлы журналов. Если не указано, сервер использует временную папку по умолчанию вашей операционной системы.Windows: --log-folder=C:\\Users\\name\\AppData\\Local\\Temp

Linux/macOS: --log-folder=/tmp/my-logs
log-levelУровни журналирования MCP-сервера. Допустимые значения в порядке убывания подробности: debug, info, warn и error. По умолчанию используется info.--log-level=debug
disable-telemetryЧтобы отключить сбор анонимизированных данных, установите этот аргумент в true. Подробнее см. Сбор данных.--disable-telemetry=true

Инструменты

  1. detect_matlab_toolboxes

    • Возвращает информацию об установленных MATLAB и наборах инструментов, включая номера версий.
  2. check_matlab_code

    • Выполняет статический анализ кода MATLAB-скрипта. Возвращает предупреждения о стиле кодирования, потенциальных ошибках, устаревших функциях, проблемах производительности и нарушениях лучших практик. Это неразрушающая операция только для чтения, которая помогает выявить проблемы качества кода без выполнения скрипта.
    • Входные данные:
      • script_path (строка): абсолютный путь к файлу MATLAB-скрипта для анализа. Должен быть допустимым файлом .m. Файл не изменяется во время анализа. Пример: C:\Users\username\matlab\myFunction.m или /home/user/scripts/analysis.m.
  3. evaluate_matlab_code

    • Вычисляет строку кода MATLAB и возвращает результат.
    • Входные данные:
      • code (строка): код MATLAB для вычисления.
      • project_path (строка): абсолютный путь к каталогу вашего проекта. MATLAB устанавливает этот каталог как текущую рабочую папку. Пример: C:\Users\username\matlab-project или /home/user/research.
  4. run_matlab_file

    • Выполняет MATLAB-скрипт и возвращает результат. Скрипт должен быть допустимым исходным файлом MATLAB (.m) или P-код файлом (.p). Если исходный файл MATLAB (.m) и P-код файл (.p) имеют одинаковое имя и находятся в одной папке, MATLAB запускает файл .p.
    • Входные данные:
      • script_path (строка): абсолютный путь к файлу MATLAB-скрипта для выполнения. Должен быть допустимым исходным файлом MATLAB (.m) или P-код файлом (.p). Пример: C:\Users\username\projects\analysis.m или /home/user/matlab/simulation.m.
  5. run_matlab_test_file

    • Выполняет тестовый скрипт MATLAB и возвращает подробные результаты тестирования. Предназначен специально для файлов модульных тестов MATLAB, которые соответствуют соглашениям среды тестирования MATLAB.
    • Входные данные:
      • script_path (строка): абсолютный путь к файлу тестового скрипта MATLAB. Должен быть допустимым исходным файлом MATLAB (.m) или P-код файлом (.p), содержащим модульные тесты MATLAB. Пример: C:\Users\username\tests\testMyFunction.m или /home/user/matlab/tests/test_analysis.m.

Ресурсы

MCP-сервер предоставляет Ресурсы (MCP), чтобы помочь вашему ИИ-приложению писать код MATLAB. Чтобы увидеть инструкции по использованию этого ресурса, обратитесь к документации вашего ИИ-приложения, в которой объясняется, как использовать ресурсы.

  1. matlab_coding_guidelines

    • Предоставляет всеобъемлющие стандарты кодирования MATLAB для улучшения читаемости, поддерживаемости и совместной работы над кодом. Рекомендации охватывают соглашения об именовании, форматирование, комментирование, оптимизацию производительности и обработку ошибок.
    • URI: guidelines://coding
    • Тип MIME: text/markdown
    • Источник: Стандарты кодирования MATLAB (GitHub)
  2. plain_text_live_code_guidelines

    • Предоставляет правила и рекомендации по созданию живых скриптов с использованием текстового формата файла Live Code .m, подходящего для контроля версий и разработки с помощью ИИ. Обратите внимание, что для запуска текстовых живых скриптов требуется MATLAB R2025a или новее. Подробнее см. Формат файла Live Code (MathWorks).
    • URI: guidelines://plain-text-live-code
    • Тип MIME: text/markdown
    • Источник: Генерация текстового Live Code (GitHub)

Сбор данных

MATLAB MCP-сервер может собирать полностью анонимизированную информацию об использовании сервера и отправлять её в MathWorks. Этот сбор данных помогает MathWorks улучшать продукты и включён по умолчанию. Чтобы отказаться от сбора данных, установите аргумент --disable-telemetry в значение true.

Вопросы безопасности

При использовании MATLAB MCP-сервера следует тщательно проверять и подтверждать все вызовы инструментов перед их выполнением. Всегда держите человека в цикле для важных действий и продолжайте только после того, как уверены, что вызов сделает именно то, что вы ожидаете. Дополнительную информацию см. в разделах Модель взаимодействия с пользователем (MCP) и Вопросы безопасности (MCP).

Лицензирование и использование

Лицензия доступна в файле LICENSE.md в этом репозитории GitHub.

MCP-серверы разрешается использовать только с MATLAB в соответствии с Лицензионным соглашением MathWorks Software License Agreement, и они не должны использоваться несколькими пользователями совместно. Свяжитесь с MathWorks, если вам нужна поддержка совместного или централизованного использования сервера.

Контактная поддержка

MathWorks рекомендует использовать этот репозиторий и оставлять отзывы. Чтобы запросить техническую поддержку или отправить запрос на улучшение, создайте issue на GitHub или свяжитесь с технической поддержкой MathWorks.


Copyright 2025-2026 The MathWorks, Inc.