Интеграция MATLAB MCP
Это реализация сервера Model Context Protocol (MCP) для MATLAB. Он позволяет клиентам MCP (таким как агенты LLM или Claude Desktop) взаимодействовать с общей сессией MATLAB с помощью API MATLAB Engine для Python.
Функции
Выполнение кода MATLAB: запуск произвольных фрагментов кода MATLAB с помощью инструмента
runMatlabCode.Извлечение переменных: получение значений переменных из рабочего пространства MATLAB с помощью инструмента
getVariable.Структурированная коммуникация: инструменты возвращают результаты и ошибки в виде структурированного JSON для более удобного программного использования клиентами.
Неблокируемое выполнение: вызовы движка MATLAB выполняются асинхронно с использованием
asyncio.to_threadдля предотвращения блокировки сервера.Стандартное ведение журнала: использует стандартный модуль
loggingPython, выводя данные вstderrдля видимости в клиентских журналах.Общий сеанс: подключается к существующему общему сеансу MATLAB.
ТО, ЧТО ДЕЛАТЬ:
Добавьте инструмент
setVariableдля записи данных в рабочее пространство MATLAB.Добавьте инструмент
runScriptдля непосредственного выполнения файлов.m.Добавьте инструменты для управления рабочим пространством (например,
clearWorkspace,getWorkspaceVariables).Расширьте вспомогательный модуль
matlab_to_pythonдля обработки более сложных типов данных (структуры, массивы ячеек, объекты).Добавить поддержку взаимодействия с моделями Simulink.
Требования
Python 3.12 или выше
MATLAB ( рекомендуется R2023a или выше — проверьте совместимость MATLAB Engine API с Python) с установленным MATLAB Engine API для Python.
Пакет
numpyPython.
Установка
Клонируйте этот репозиторий:
git clone https://github.com/jigarbhoye04/MatlabMCP.git cd MatlabMCPНастройте виртуальную среду Python (рекомендуется):
# Install uv if you haven't already: https://github.com/astral-sh/uv uv init uv venv source .venv/bin/activate # On Windows use: .venv\Scripts\activateУстановить зависимости:
uv pip syncУбедитесь, что MATLAB установлен и MATLAB Engine API для Python настроен для вашей среды Python. См. документацию MATLAB .
Запустите MATLAB и поделитесь его движком: выполните следующую команду в командном окне MATLAB:
matlab.engine.shareEngineВы можете проверить, что он общий, запустив
matlab.engine.isEngineSharedв MATLAB (он должен вернутьtrueили1). Серверу MCP нужен этот общий движок для подключения.
Конфигурация (для Claude Desktop)
Чтобы использовать этот сервер с Claude Desktop:
Перейдите в Claude Desktop -> Настройки -> Разработчик -> Изменить конфигурацию.
Это откроет
claude_desktop_config.json. Добавьте или измените разделmcpServers, чтобы включить конфигурациюMatlabMCP:{ "mcpServers": { "MatlabMCP": { "command": "C:\\Users\\username\\.local\\bin\\uv.exe", // Path to your uv executable "args": [ "--directory", "C:\\Users\\username\\Desktop\\MatlabMCP\\", // ABSOLUTE path to the cloned repository directory "run", "main.py" ] // Optional: Add environment variables if needed // "env": { // "MY_VAR": "value" // } } // Add other MCP servers here if you have them } }ВАЖНО: Замените пути
C:\\Users\\username\\...на правильные абсолютные пути для вашей системы.Сохраните файл и перезапустите Claude Desktop .
Ведение журнала: журналы сервера (из модуля
loggingPython) будут отображаться в файлах журнала MCP Claude Desktop (доступных черезtail -f ~/Library/Logs/Claude/mcp-server-MatlabMCP.logна macOS или проверку%APPDATA%\Claude\logs\на Windows).
Разработка
Структура проекта:
Документация
Подробную документацию по функциям сервера, его использованию и заметкам по разработке см. в разделе « Обновления ».
Внося вклад
Вклады приветствуются! Если у вас есть предложения или улучшения, смело открывайте issue или отправляйте pull request.
Давайте сделаем это еще лучше вместе!
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
Позволяет выполнять код MATLAB из Python с использованием API MATLAB Engine, обеспечивая общий сеанс MATLAB для нескольких запросов для бесшовной интеграции с Claude Desktop.
Related MCP Servers
- -security-license-qualityAllows interaction with MATLAB by creating and executing scripts and functions through Claude or other MCP clients, supporting script management and execution result retrieval with environment configuration capabilities.Last updated -32
- Asecurity-licenseAqualityFacilitates running Python code in a sandbox and generating images using the FLUX model via an MCP server compatible with clients like Goose and the Claude Desktop App.Last updated -222MIT License
- Asecurity-licenseAqualityIntegrates MATLAB with AI to execute code, generate scripts from natural language, and access MATLAB documentation seamlessly.Last updated -246Apache 2.0
Fused MCP Agentsofficial
-security-license-qualityA Python-based MCP server that allows Claude and other LLMs to execute arbitrary Python code directly through your desktop Claude app, enabling data scientists to connect LLMs to APIs and executable code.Last updated -26MIT License