About Matlab MCP
Matlab MCP is an MCP server published by Tsuchijo in the AI category: model Context Protocol server to let LLMs write and execute matlab scripts.
The repository has 40 stars and 4 forks, with the last commit a year ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.
Install
git clone https://github.com/Tsuchijo/matlab-mcpThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Matlab MCP
Powered by Claude · Grounded in docs
Security checks
Static checks derived from the repository 5 days ago. Heuristics on the source, not an audit.
- ✓README presentThe repository ships documentation.
- !License declaredNo license file. Legally you have no right to use it in a product.
- !Tests presentNo tests found. Behaviour changes may go unnoticed between versions.
- ✓Dependencies pinnedA lockfile pins dependency versions.
- ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
- !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.
README
MATLAB MCP Server
This Model Context Protocol (MCP) server provides integration with MATLAB, allowing you to create and execute MATLAB scripts and functions through Claude or other MCP clients.
Setup Requirements
- Python 3.11 (Python 3.13 and 3.12 are not currently supported by MATLAB Engine)
- MATLAB R2024a (or compatible version)
- uv package manager
Installation
- Create and set up the Python environment:
# 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]"
- Install MATLAB Engine
The MATLAB Engine will be installed automatically when the server first runs, using the MATLAB installation specified in the
MATLAB_PATHenvironment variable.
Directory Structure
matlab_server.py: The main MCP server implementationmatlab_scripts/: Directory where all MATLAB scripts and functions are saved (created automatically)pyproject.toml: Python project configuration.python-version: Specifies Python version for uv
Claude Desktop Integration
- Open your Claude Desktop configuration:
# On macOS
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
- Add the MATLAB server configuration:
{
"mcpServers": {
"matlab": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/matlab-mcp",
"run",
"matlab_server.py"
],
"env": {
"MATLAB_PATH": "/Applications/MATLAB_R2024a.app"
}
}
}
}
Make sure to:
- Replace
/absolute/path/to/matlab-mcpwith the actual path to your project directory - Verify the
MATLAB_PATHpoints to your MATLAB installation - Use absolute paths (not relative)
Features
The server provides several tools:
-
create_matlab_script: Create a new MATLAB script file- Scripts are saved in the
matlab_scriptsdirectory - File names must be valid MATLAB identifiers
- Scripts are saved in the
-
create_matlab_function: Create a new MATLAB function file- Functions are saved in the
matlab_scriptsdirectory - Must include valid function definition
- Functions are saved in the
-
execute_matlab_script: Run a MATLAB script and get results- Returns output text, generated figures, and workspace variables
- Can pass arguments to scripts
-
call_matlab_function: Call a MATLAB function with arguments- Returns function output and any generated figures
Testing
You can test the server using the MCP Inspector:
# 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
Example test script:
t = 0:0.01:2*pi;
y = sin(t);
plot(t, y);
title('Test Plot');
xlabel('Time');
ylabel('Amplitude');
Script Storage
- All MATLAB scripts and functions are saved in the
matlab_scriptsdirectory - This directory is created automatically when the server starts
- Files are named
<script_name>.mor<function_name>.m - The directory is in the same location as
matlab_server.py
Environment Variables
MATLAB_PATH: Path to your MATLAB installation- Default:
/Applications/MATLAB_R2024a.app - Set in Claude Desktop config or when running directly
- Default:
Troubleshooting
-
MATLAB Engine Installation Fails
- Verify MATLAB_PATH is correct
- Try installing engine manually:
cd $MATLAB_PATH/extern/engines/python python setup.py install
-
Python Version Issues
- Make sure you're using Python 3.11
- Check with:
python --version - Use
uv python pin 3.11if needed
-
Script Execution Errors
- Check the
matlab_scriptsdirectory exists - Verify script syntax is valid
- Look for error messages in MATLAB output
- Check the
Updates and Maintenance
- Keep your MATLAB installation updated
- Update Python packages as needed:
uv pip install --upgrade mcp[cli] - Check MATLAB engine compatibility when updating Python
README fetched from the repository 5 days ago. The original is authoritative.