matlab-mcp-server
A Model Context Protocol (MCP) server that enables seamless integration between MATLAB and MCP-compatible applications like Claude Code, allowing execution of MATLAB code, workspace management, plotting, and data I/O.
README
MATLAB MCP Server
A Model Context Protocol (MCP) server that enables seamless integration between MATLAB and MCP-compatible applications like Claude Code. Execute MATLAB code, manage workspace variables, create plots, handle data I/O, and more - all through a token-efficient MCP interface.
Features
- Execute MATLAB Code: Run MATLAB commands and scripts with persistent session
- Workspace Management: Get, set, list, and clear workspace variables
- Figure Operations: Save, export, and close MATLAB figures (PNG, SVG, PDF, etc.)
- Data I/O: Import/export data (CSV, JSON, XLSX) and load/save MAT files
- Environment Info: Check MATLAB version and installed toolboxes
- Documentation Access: Get MATLAB help, search functions, and find toolbox locations
- Token-Efficient Design: Multi-operation tools minimize API calls
- JSON Resources: Structured access to workspace, toolboxes, and session info
Quick Start
Prerequisites:
- MATLAB installed on your system
uvpackage manager installed (install uv)
Option 1: Zero-Installation Setup (Recommended)
Just configure and run - no manual installation needed!
1. Find your MATLAB library path:
# macOS (Apple Silicon)
/Applications/MATLAB_R2025b.app/bin/maca64
# Linux
/usr/local/MATLAB/R2024b/bin/glnxa64
2. Configure Claude Code:
Option A: Using CLI (Recommended)
# macOS (Apple Silicon)
claude mcp add --transport stdio matlab \
--env DYLD_LIBRARY_PATH=/Applications/MATLAB_R2025b.app/bin/maca64 \
-- uvx matlab-mcp-server
# Linux
claude mcp add --transport stdio matlab \
--env LD_LIBRARY_PATH=/usr/local/MATLAB/R2024b/bin/glnxa64 \
-- uvx matlab-mcp-server
This uses local scope by default (private to you, only this project). For other scopes:
--scope project: Share with team (stores in.mcp.json, can be committed to git)--scope user: Available across all your projects
Option B: Manual .mcp.json file
Create .mcp.json in your project root directory:
{
"mcpServers": {
"matlab": {
"command": "uvx",
"args": ["matlab-mcp-server"],
"env": {
"DYLD_LIBRARY_PATH": "/Applications/MATLAB_R2025b.app/bin/maca64"
}
}
}
}
Replace the library path with your actual MATLAB path from step 1.
For Linux, use LD_LIBRARY_PATH instead of DYLD_LIBRARY_PATH.
That's it! When Claude Code starts, uvx will automatically:
- Download
matlab-mcp-serverfrom PyPI - Install
matlabengineand all dependencies - Start the MATLAB MCP server
Option 2: Configuration Helper (If you don't know your MATLAB path)
Run the helper script to auto-detect MATLAB and display the config:
curl -fsSL https://raw.githubusercontent.com/subspace-lab/matlab-mcp-server/main/install-matlab-mcp.sh | bash
The script will:
- Auto-detect your MATLAB installation
- Display the config with the correct paths
- You copy and paste it into your
.mcp.jsonfile (in project root)
Option 3: Manual Installation
If you prefer to install manually or the automated installer doesn't work:
1. Install matlabengine
# Navigate to your MATLAB Python engine directory
cd /Applications/MATLAB_R20XXx.app/extern/engines/python # macOS
# OR
cd /usr/local/MATLAB/R20XXx/extern/engines/python # Linux
# Install using uv
uv pip install .
Replace R20XXx with your MATLAB version (e.g., R2024a, R2024b, R2025a).
2. Install matlab-mcp-server
uv pip install matlab-mcp-server
3. Configure MCP server
Create .mcp.json in your project root directory:
macOS (Apple Silicon):
{
"mcpServers": {
"matlab": {
"command": "matlab-mcp",
"env": {
"DYLD_LIBRARY_PATH": "/Applications/MATLAB_R20XXx.app/bin/maca64"
}
}
}
}
macOS (Intel):
{
"mcpServers": {
"matlab": {
"command": "matlab-mcp",
"env": {
"DYLD_LIBRARY_PATH": "/Applications/MATLAB_R20XXx.app/bin/maci64"
}
}
}
}
Linux:
{
"mcpServers": {
"matlab": {
"command": "matlab-mcp",
"env": {
"LD_LIBRARY_PATH": "/usr/local/MATLAB/R20XXx/bin/glnxa64"
}
}
}
}
Replace R20XXx with your actual MATLAB version.
Note for Claude Desktop users: If you're using Claude Desktop (the desktop app) instead of Claude Code (CLI), the configuration file is located at:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
Available Tools
The server provides 8 MCP tools for interacting with MATLAB:
execute_matlab- Execute MATLAB code and get resultsworkspace- Manage workspace variables (get, set, list, clear)figure- Save, export, and manage MATLAB figures (PNG, SVG, PDF, etc.)data_io- Import/export data in various formats (CSV, JSON, XLSX, MAT files)env- Get MATLAB version and check installed toolboxesget_help- Access MATLAB documentation and search functionsroute_intent- Suggest appropriate tool mode (meta-tool)select_mode- Enable optional tool groups (meta-tool)
For detailed documentation on each tool, see TOOLS.md or MATLAB_MCP_GUIDE.md.
Troubleshooting
MATLAB Engine Not Found
If you get an error about MATLAB engine not being found:
- Ensure MATLAB is properly installed
- Verify MATLAB Engine API for Python is installed
- Check Python version matches MATLAB compatibility
- Verify library path is correctly set in config
Library Path Issues
Default MATLAB locations:
- macOS:
/Applications/MATLAB_R20XXx.app - Linux:
/usr/local/MATLAB/R20XXx - Windows:
C:\Program Files\MATLAB\R20XXx
If MATLAB is in a non-standard location, update the library path in your config.
Documentation
- CONTRIBUTING.md - Development setup and guidelines
- PLANNING.md - Roadmap and architecture
- MATLAB_MCP_GUIDE.md - Detailed usage guide
- TOOLS.md - Tool catalog
License
MIT License
Contributing
Contributions are welcome! Please see CONTRIBUTING.md for development setup and guidelines.
Star History
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。