Releases: HanSur94/matlab-mcp-server-python
v2.0.2 — Conda/Miniconda Support
What's Changed
Added Anaconda/Miniconda installation support — users can now set up the server with a single conda command.
Conda Support
For end users (no repo clone needed):
conda env create -f environment.yml
conda activate matlab-mcp
matlab-mcp --inspectFor developers (from repo clone):
conda env create -f environment-dev.yml
conda activate matlab-mcp-dev
pytest tests/ -x -qCI
- conda-test-pypi — validates
environment.ymlinstalls from PyPI and server loads - conda-test-dev — validates
environment-dev.ymlinstalls from source and all tests pass - 19 CI jobs total across Linux, Windows, macOS, Docker, conda
Full Changelog
v2.0.1 — CI & Integration Testing
What's Changed
Post-milestone improvements to CI pipeline and test coverage. No production code changes except one bug fix (monitoring routes on streamablehttp).
Bug Fixes
- Monitoring routes on streamablehttp —
/dashboard,/health,/metricsnow registered for the new transport (was SSE-only) - 12 ruff lint errors — unused imports and f-string placeholders cleaned up
CI & Testing
- MCP integration test — live server subprocess + MCP client on localhost (Linux + Windows)
- Docker Compose remote test — client container connects to server container over Docker network with bearer auth
- Windows install.bat smoke test — validates the real user install path produces a working installation
- 17 CI jobs across Linux, Windows (2022 + latest), macOS, Docker
Full Changelog
v1.5.0
What's New
Inspect Mode
- Added
--inspectflag to start the server without MATLAB for tool discovery and CI inspection
Glama Integration
- Added
glama.jsonfor MCP server listing metadata - Server is now listed and inspectable on Glama
Security
- Removed unused
diskcachedependency (medium severity vulnerability)
v1.4.1
v1.4.1 — Documentation
Comprehensive Docstrings
Improved documentation across all source modules:
- server.py:
MatlabMCPServer.__init__,lifespancontext manager,mainentry point, background tasks - pool/engine.py:
EngineStatelifecycle,stateproperty - pool/manager.py:
_make_engine,get_statusreturn dict - jobs/models.py:
JobStatusterminal states,Jobattributes - jobs/executor.py:
_inject_job_context,_wait_for_completion,_safe_serialize - jobs/tracker.py: thread safety, pruning strategy
- monitoring/: collector init, store init, health evaluation, route handlers, dashboard factory + all inner handlers
- output/plotly_style_mapper.py: mapping tables, all trace converters
- tools/monitoring.py: all three tool functions with Parameters/Returns
- tools/custom.py: inner handler docstring
- config.py: all 11 Pydantic models,
load_config,validate_pool
README Updates
- Added Windows one-click installer section (
install.bat) - Updated MATLAB version requirement to R2022b+
- Added offline install instructions
Full Changelog: v1.4.0...v1.4.1
v1.4.0
What's New in v1.4.0
One-Click Windows Installer
install.bat— fully offline, no-admin-rights installer for Windows 10/11- Bundles all 100+ Python wheels in
vendor/for zero-network installation - Auto-detects MATLAB R2022b+ and Python 3.10/3.11/3.12
- Handles corporate SSL proxies, ancient pip versions, and read-only Program Files
- Generates
start-matlab-mcp.batlauncher and prints ready-to-paste config for Claude Desktop, Claude Code, and Cursor
MATLAB Engine API Install Improvements
- Copies Engine source to temp with directory junctions to avoid access-denied errors in Program Files
- Patches
_arch.txtto point to real MATLAB after temp-dir build - Works fully offline with
--no-build-isolation
CI/CD
- Added Windows test matrix: windows-2022 (Win10) + windows-latest (Win11) × Python 3.10 + 3.12
- Cross-platform test fixes for Windows path handling
Bug Fixes
- Fixed
.gitignoreexcludingmonitoring/subpackage from wheel - Fixed unused imports in
monitoring/dashboard.py - Added missing Windows-only dependencies:
pywin32,pywin32-ctypes,colorama,tzdata,async-timeout,tomli,taskgroup
Full Changelog: v1.3.0...v1.4.0
v1.3.0
What's Changed
Test Coverage
- Increased code coverage from 63% to 90% with 385 new tests across 11 test files
- Added comprehensive tests for all previously untested modules:
tools/jobs,tools/discovery,tools/custom,tools/files,tools/adminserver(MatlabMCPServer, create_server, main)monitoring/dashboard,monitoring/store,monitoring/collectorjobs/executor,output/formatter,output/thumbnailsession/manager,pool/engine,monitoring/health
- 755 tests now passing (up from 378)
Modules at 100% Coverage
tools/jobs, tools/discovery, tools/admin, tools/core, jobs/models, jobs/tracker, monitoring/health, monitoring/routes, output/formatter, output/thumbnail, session/manager
v1.2.0
v1.2.0
This release introduces automated wiki generation and enhances documentation with MATLAB-to-Plotly plot conversion features.
New Features
- Auto-generate all 11 wiki pages via Claude API on push to master
Documentation
- Add MATLAB-to-Plotly plot conversion feature section to README
- Add Plotly conversion screenshot to README
- Add comprehensive specification for full wiki auto-generation with file mappings, validation, and error handling
v1.0.1 — CI fixes & security hardening
What's Changed
Security
- Fixed incomplete blocklist in shipped
config.yaml— all 11 blocked functions (system,unix,dos,!,eval,feval,evalc,evalin,assignin,perl,python) are now listed, matching code defaults and documentation
Fixes
- Fixed 35 ruff lint errors (unused imports/variables) across src/ and tests/
- Bumped minimum Python from 3.9 to 3.10 (
fastmcprequires 3.10+) - Added
psutilanduvicornto[dev]extras so monitoring works out of the box - Fixed
get_error_logdocs to show actual default (20, not "varies") - Fixed README workspace isolation description to include all 5 cleanup commands
- Added PyPI keywords and classifiers for better discoverability
Upgrade
pip install --upgrade matlab-mcp-pythonFull changelog: v1.0.0...v1.0.1
v1.0.0 — First stable release
MATLAB MCP Server v1.0.0
Connect any AI agent (Claude, Cursor, Copilot) to MATLAB via the Model Context Protocol.
Highlights
- 20 MCP tools — execute code, async jobs, file I/O, toolbox discovery, code checking, monitoring
- Elastic engine pool — scales 2–10+ MATLAB engines based on demand
- Interactive Plotly plots — MATLAB figures auto-converted to Plotly JSON with WebGL for large datasets
- Async job system — long-running simulations with progress reporting
- Custom tools — expose your
.mfunctions as first-class AI tools via YAML - Monitoring dashboard — live gauges, time-series charts, execution log, health/metrics endpoints
- Security — function blocklist, workspace isolation, filename sanitization, upload limits
- Multi-user support — SSE transport with session isolation
- Docker support — Dockerfile and docker-compose.yml included
- Cross-platform — macOS, Windows, Linux (MATLAB 2020b+)
Install
pip install matlab-mcp-pythonRequires MATLAB 2020b+ with the Engine API for Python installed.
Quick Start
# Run the server
matlab-mcp
# Connect to Claude Code
claude mcp add matlab -- matlab-mcp