MATLAB MCP 服务器
该模型上下文协议 (MCP) 服务器提供与 MATLAB 的集成,允许您通过 Claude 或其他 MCP 客户端创建和执行 MATLAB 脚本和函数。
设置要求
- Python 3.11(MATLAB Engine 目前不支持 Python 3.13 和 3.12)
- MATLAB R2024a(或兼容版本)
- uv 包管理器
安装
- 创建并设置 Python 环境:
# Pin Python version
uv python pin 3.11
# Create virtual environment
uv venv
# Activate virtual environment
source .venv/bin/activate
# Install MCP
uv add "mcp[cli]"
- 安装 MATLAB 引擎 服务器首次运行时将使用
MATLAB_PATH
环境变量中��定的 MATLAB 安装自动安装 MATLAB 引擎。
目录结构
matlab_server.py
:主要的 MCP 服务器实现matlab_scripts/
:保存所有 MATLAB 脚本和函数的目录(自动创建)pyproject.toml
:Python 项目配置.python-version
:指定 uv 的 Python 版本
Claude 桌面集成
- 打开您的 Claude Desktop 配置:
# On macOS
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
- 添加 MATLAB 服务器配置:
{
"mcpServers": {
"matlab": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/matlab-mcp",
"run",
"matlab_server.py"
],
"env": {
"MATLAB_PATH": "/Applications/MATLAB_R2024a.app"
}
}
}
}
请确保:
- 将
/absolute/path/to/matlab-mcp
替换为项目目录的实际路径 - 验证
MATLAB_PATH
指向您的 MATLAB 安装 - 使用绝对路径(非相对路径)
特征
该服务器提供了几种工具:
create_matlab_script
:创建一个新的 MATLAB 脚本文件- 脚本保存在
matlab_scripts
目录中 - 文件名必须是有效的 MATLAB 标识符
create_matlab_function
:创建一个新的 MATLAB 函数文件- 函数保存在
matlab_scripts
目录中 - 必须包含有效的函数定义
execute_matlab_script
:运行 MATLAB 脚本并获取结果- 返回输出文本、生成的图形和工作区变量
- 可以向脚本传递参数
call_matlab_function
:使用参数调用 MATLAB 函数
测试
您可以使用 MCP 检查器测试服务器:
# Make sure you're in your virtual environment
source .venv/bin/activate
# Run the inspector
MATLAB_PATH=/Applications/MATLAB_R2024a.app mcp dev matlab_server.py
测试脚本示例:
t = 0:0.01:2*pi;
y = sin(t);
plot(t, y);
title('Test Plot');
xlabel('Time');
ylabel('Amplitude');
脚本存储
- 所有 MATLAB 脚本和函数都保存在
matlab_scripts
目录中 - 该目录在服务器启动时自动创建
- 文件名为
<script_name>.m
或<function_name>.m
- 该目录与
matlab_server.py
位于同一位置
环境变量
MATLAB_PATH
:MATLAB 安装路径- 默认值:
/Applications/MATLAB_R2024a.app
- 在 Claude Desktop 配置中设置或直接运行时
故障排除
- MATLAB 引擎安装失败
- 验证 MATLAB_PATH 是否正确
- 尝试手动安装引擎:
cd $MATLAB_PATH/extern/engines/python
python setup.py install
- Python 版本问题
- 确保你使用的是 Python 3.11
- 检查:
python --version
- 如果需要,请使用
uv python pin 3.11
- 脚本执行错误
- 检查
matlab_scripts
目录是否存在 - 验证脚本语法是否有效
- 在 MATLAB 输出中查找错误消息
更新和维护
- 保持 MATLAB 安装更新
- 根据需要更新 Python 包:
uv pip install --upgrade mcp[cli]
- 更新 Python 时检查 MATLAB 引擎兼容性