MATLAB MCP Core Server
官方使用 MathWorks® 官方提供的 MATLAB MCP Server,透過 AI 應用程式執行 MATLAB®。
你可以用 MATLAB Core MCP 做什麼?
- 執行 MATLAB 程式碼 — 要求您的 AI 助理執行 MATLAB 程式碼片段或腳本,並使用
evaluate_matlab_code或run_matlab_file回傳輸出結果。 - 分析程式碼品質 — 讓您的助理對 MATLAB 腳本執行靜態分析,以使用
check_matlab_code找出樣式問題、潛在錯誤及違反最佳實務之處。 - 執行單元測試 — 要求您的助理執行 MATLAB 測試檔案,並使用
run_matlab_test_file取得完整的測試結果。 - 檢查已安裝的工具箱 — 透過
detect_matlab_toolboxes要求提供已安裝的 MATLAB 工具箱及版本號碼相關資訊。 - 存取編碼指南 — 要求您的助理參考
matlab_coding_guidelines與plain_text_live_code_guidelines資源中的 MATLAB 編碼標準及即時腳本格式規則。
文件
MATLAB MCP Server
使用 MathWorks® 官方 MATLAB MCP Server,透過 AI 應用程式執行 MATLAB®。MATLAB MCP Server 可讓您的 AI 應用程式:
- 啟動和結束 MATLAB。
- 編寫並執行 MATLAB 程式碼。
- 評估您的 MATLAB 程式碼的風格與正確性。
為了協助您的代理程式使用 MATLAB 和 Simulink,您可以使用 MATLAB Agentic Toolkit (GitHub) 和 Simulink Agentic Toolkit (GitHub) 中的技能,這些工具也可以為您安裝此 MCP 伺服器。
目錄
設定
-
安裝 MATLAB (MathWorks) R2021a 或更新版本,並將其加入系統 PATH。
-
此伺服器支援任何使用 Model Context Protocol 的 AI 應用程式。若要為 Claude Desktop 設定 MATLAB MCP Server,請跳到 Claude Desktop 的說明。若要為其他應用程式設定伺服器,請依照以下說明操作:
-
對於 Windows 或 Linux,下載最新版本。(或者,您可以從原始碼建置:安裝 Go 並使用
go install github.com/matlab/matlab-mcp-server/cmd/matlab-mcp-server@latest建置二進位檔。) -
對於 macOS,請先在終端機中執行以下命令下載最新版本:
- 對於 Apple 晶片處理器,請執行:
curl -L -o ~/Downloads/matlab-mcp-server https://github.com/matlab/matlab-mcp-server/releases/latest/download/matlab-mcp-server-macos-arm64 - 對於 Intel 處理器,請執行:
curl -L -o ~/Downloads/matlab-mcp-server https://github.com/matlab/matlab-mcp-server/releases/latest/download/matlab-mcp-server-macos-x64
然後授予下載的二進位檔執行權限,以便您可以執行 MATLAB MCP Server:
chmod +x ~/Downloads/matlab-mcp-server - 對於 Apple 晶片處理器,請執行:
-
-
將 MATLAB MCP Server 新增至您的 AI 應用程式。您可以在 AI 應用程式的文件中找到新增 MCP 伺服器的說明。例如,有關使用 Claude Code®、Claude Desktop® 和 Visual Studio® Code 中 GitHub Copilot 的說明,請參閱下文。請注意,您可以透過指定選用的 引數 來自訂伺服器。
Claude Code
在您的終端機中執行以下命令,記得插入您在設定中取得的伺服器二進位檔的完整路徑:
claude mcp add --transport stdio matlab -- /fullpath/to/matlab-mcp-server-binary
您可以透過指定選用的 引數 來自訂伺服器。請注意 Claude Code 選項與伺服器引數之間的 -- 分隔符號:
claude mcp add --transport stdio matlab -- /fullpath/to/matlab-mcp-server-binary --initial-working-folder=/home/username/myproject
有關在 Claude Code 中新增 MCP 伺服器的詳細資訊,請參閱 新增本機 stdio 伺服器 (Claude Code)。若要稍後移除伺服器,請執行:
claude mcp remove matlab
Claude Desktop
您可以使用 MATLAB MCP Server 套件在 Claude Desktop 中安裝 MATLAB MCP Server。
-
在 Claude Desktop 中安裝 Filesystem 擴充功能,以允許 Claude 讀取和寫入您系統上的檔案。在 Claude Desktop 中,按一下 設定 > 擴充功能 > 瀏覽擴充功能。搜尋由 Anthropic 開發的 Filesystem 擴充功能,然後按一下 安裝。指定您要允許 MCP 伺服器存取的資料夾,然後將 停用 按鈕切換為 啟用 Filesystem 擴充功能。
-
從 最新版本 頁面下載 MATLAB MCP Server 套件
matlab-mcp-server.mcpb。 -
若要將 MATLAB MCP Server 套件安裝為桌面擴充功能,請雙擊下載的
matlab-mcp-server.mcpb檔案,然後在 Claude Desktop 中按一下 安裝。(或者,在 Claude 中導覽至 檔案選單 > 設定 > 擴充功能 > 進階設定 > 安裝擴充功能,然後選取matlab-mcp-server.mcpb檔案。按一下 安裝)。
若要自訂 MATLAB MCP Server 的行為,請導覽至 設定 > 擴充功能 > 設定,您可以在其中修改伺服器的 引數。
Visual Studio Code 中的 GitHub Copilot
在您的 VS Code 工作區中,建立名為 .vscode/mcp.json 的檔案。插入以下 JSON,記得指定您在設定中取得的伺服器二進位檔的完整路徑,以及任何 引數。然後儲存檔案。(請注意,在 Windows 上,您的路徑需要額外的反斜線作為跳脫字元)。
{
"servers": {
"matlab": {
"type": "stdio",
"command": "C:\\fullpath\\to\\matlab-mcp-server-windows-x64.exe",
"args": []
}
}
}
有關在 VS Code 中使用 MCP 伺服器的更多資訊,請參閱 在 VS Code 中新增和管理 MCP 伺服器 (VS Code)。
Codex
在您的終端機中執行以下命令,記得插入您在設定中取得的伺服器二進位檔的完整路徑:
codex mcp add matlab -- /fullpath/to/matlab-mcp-server-binary
您可以透過指定選用的 引數 來自訂伺服器。例如:
codex mcp add matlab -- /fullpath/to/matlab-mcp-server-binary --initial-working-folder=/home/username/myproject
[!NOTE] Windows 使用者: Codex 不會轉發
WINDIR環境變數,而您需要此變數才能執行 MATLAB 和 Simulink(請參閱 #32)。若要新增此變數,請開啟位於
C:\Users\<username>\.codex\config.toml的 Codex 設定檔,並將env_vars = ["WINDIR"]新增至[mcp_servers.matlab]區段:[mcp_servers.matlab] command = 'C:\fullpath\to\matlab-mcp-server-windows-x64.exe' args = [] env_vars = ["WINDIR"]
引數
透過以下方式之一指定引數來自訂伺服器的行為:
- 在 AI 應用程式的設定中插入引數(通常是
.json檔案)。 - 在啟動伺服器時,以命令列介面(CLI)旗標輸入引數。
- 使用環境變數,可在 CLI 或應用程式的設定中指定。若要從 CLI 旗標推導環境變數名稱,請加上前綴
MW_MCP_SERVER_,轉換為大寫,並將連字號(-)替換為底線(_)。例如,引數--matlab-root會變成環境變數MW_MCP_SERVER_MATLAB_ROOT。如果您同時使用兩者,CLI 旗標優先於環境變數。
| 引數 | 說明 | 範例 |
|---|---|---|
| help | 顯示所有引數的說明資訊。 | --help |
| version | 顯示 MATLAB MCP Server 的版本。 | --version |
| matlab-root | 指定要啟動哪個 MATLAB 的完整路徑。請勿在路徑中包含 /bin。預設情況下,伺服器會嘗試在系統 PATH 上尋找第一個 MATLAB。 | Windows:--matlab-root=C:\\Program Files\\MATLAB\\R2026a Linux/macOS: --matlab-root=/home/usr/MATLAB/R2026a作為環境變數: MW_MCP_SERVER_MATLAB_ROOT=/home/usr/MATLAB/R2026a |
| initialize-matlab-on-startup | 若要在一啟動伺服器時就初始化 MATLAB,請將此引數設為 true。預設情況下,MATLAB 只會在第一次呼叫工具時啟動。 | --initialize-matlab-on-startup=true |
| initial-working-folder | 指定 MATLAB 啟動的資料夾。如果您未指定值,MATLAB 會在您的 AI 應用程式第一個 Root (MCP) 的路徑啟動。如果您未定義 root,MATLAB 會在以下位置啟動:
| Windows:--initial-working-folder=C:\\Users\\username\\MyProject Linux/macOS: --initial-working-folder=/Users/username/MyProject |
| matlab-display-mode | 指定是否顯示 MATLAB 桌面。使用 desktop 模式(預設)以顯示 MATLAB 桌面。使用 nodesktop 模式以僅從您的 AI 應用程式使用 MATLAB,而不顯示 MATLAB 桌面。請注意,在 nodesktop 模式下,需要圖形介面的命令(例如 edit、open、open_system、uifigure 和 appdesigner)仍會在您的桌面上開啟 MATLAB 視窗。 | --matlab-display-mode=nodesktop |
| matlab-session-mode | 指定 MCP 伺服器是啟動新的 MATLAB,還是連線到現有的 MATLAB 工作階段(支援 MATLAB R2023a 起)。預設為 auto 模式。new 模式: MCP 伺服器啟動新的 MATLAB 工作階段。auto 模式(預設): 伺服器嘗試連線到現有的 MATLAB 工作階段,您必須依照以下說明為 existing 模式設定該工作階段。如果伺服器找不到現有的 MATLAB 工作階段,它會啟動一個新的工作階段。existing 模式: 伺服器嘗試連線到現有的 MATLAB 工作階段。請勿將此模式與引數 matlab-root、initial-working-folder 或 matlab-display-mode 一起使用。您必須事先依照以下步驟設定 MATLAB 工作階段才能使用此模式:
| --matlab-session-mode=existing |
| extension-file | 若要使用自訂 MCP 工具,請提供定義您工具的 JSON 檔案路徑。您也可以使用多個擴充功能檔案。有關使用自訂工具的詳細資訊,請參閱 將自訂工具與 MATLAB MCP Server 搭配使用。 | Windows: --extension-file=C:\\Users\\name\\my-tools.json Linux/macOS: --extension-file=/path/to/my-tools.json 使用多個擴充功能檔案: Windows: --extension-file=C:\\path\\to\\tools-1.json --extension-file=C:\\path\\to\\tools-2.jsonLinux/macOS: --extension-file=/path/to/tools1.json --extension-file=/path/to/tools2.json 使用環境變數: Windows: MW_MCP_SERVER_EXTENSION_FILE=C:\Users\name\tools1.json;C:\Users\name\tools2.json Linux/macOS: MW_MCP_SERVER_EXTENSION_FILE=/path/to/tools1.json:/path/to/tools2.json |
| log-folder | 指定 MCP 伺服器儲存日誌檔案的資料夾。如果未指定,伺服器會使用您作業系統的預設暫存資料夾。 | Windows:--log-folder=C:\\Users\\name\\AppData\\Local\\Temp Linux/macOS: --log-folder=/tmp/my-logs |
| log-level | MCP 伺服器的日誌層級。有效值依詳細程度遞減排列為 debug、info、warn 和 error。預設為 info。 | --log-level=debug |
| disable-telemetry | 若要停用匿名資料收集,請將此引數設為 true。有關詳細資訊,請參閱 資料收集。 | --disable-telemetry=true |
工具
-
detect_matlab_toolboxes- 傳回已安裝 MATLAB 和工具箱的相關資訊,包括版本號碼。
-
check_matlab_code- 對 MATLAB 腳本執行靜態程式碼分析。回傳有關編碼風格、潛在錯誤、已棄用函式、效能問題以及違反最佳實務的警告。這是一項非破壞性、唯讀的操作,有助於在不執行腳本的情況下識別程式碼品質問題。
- 輸入:
script_path(字串):要分析的 MATLAB 腳本檔案的絕對路徑。必須是有效的.m檔案。分析期間不會修改該檔案。範例:C:\Users\username\matlab\myFunction.m或/home/user/scripts/analysis.m。
-
evaluate_matlab_code- 評估一段 MATLAB 程式碼字串並回傳輸出。
- 輸入:
code(字串):要評估的 MATLAB 程式碼。project_path(字串):您專案目錄的絕對路徑。MATLAB 會將此目錄設定為目前的工作資料夾。範例:C:\Users\username\matlab-project或/home/user/research。
-
run_matlab_file- 執行 MATLAB 腳本並回傳輸出。該腳本必須是有效的
.m file。 - 輸入:
script_path(字串):要執行的 MATLAB 腳本檔案的絕對路徑。必須是有效的.m檔案。範例:C:\Users\username\projects\analysis.m或/home/user/matlab/simulation.m。
- 執行 MATLAB 腳本並回傳輸出。該腳本必須是有效的
-
run_matlab_test_file- 執行 MATLAB 測試腳本並回傳完整的測試結果。專為遵循 MATLAB 測試框架慣例的 MATLAB 單元測試檔案而設計。
- 輸入:
script_path(字串):要執行的 MATLAB 測試腳本檔案的絕對路徑。必須是包含 MATLAB 單元測試的有效.m檔案。範例:C:\Users\username\tests\testMyFunction.m或/home/user/matlab/tests/test_analysis.m。
資源
MCP 伺服器提供 資源 (MCP) 來協助您的 AI 應用程式撰寫 MATLAB 程式碼。若要查看使用此資源的說明,請參閱您的 AI 應用程式中說明如何使用資源的文件。
-
matlab_coding_guidelines- 提供全面的 MATLAB 編碼標準,以改善程式碼的可讀性、可維護性和協作性。這些指南涵蓋命名慣例、格式設定、註解、效能最佳化和錯誤處理。
- URI:
guidelines://coding - MIME 類型:
text/markdown - 來源:MATLAB 編碼標準 (GitHub)
-
plain_text_live_code_guidelines- 提供使用純文字 Live Code
.m檔案格式產生即時腳本的規則和指南,適用於版本控制和 AI 輔助開發。請注意,若要執行純文字即時腳本,您需要 MATLAB R2025a 或更新版本。如需詳細資訊,請參閱 Live Code 檔案格式 (MathWorks)。 - URI:
guidelines://plain-text-live-code - MIME 類型:
text/markdown - 來源:純文字 Live Code 產生 (GitHub)
- 提供使用純文字 Live Code
資料收集
MATLAB MCP 伺服器可能會收集有關您使用伺服器的完全匿名化資訊,並將其傳送給 MathWorks。此資料收集有助於 MathWorks 改善產品,且預設為啟用。若要退出資料收集,請將引數 --disable-telemetry 設定為 true。
安全性考量
使用 MATLAB MCP 伺服器時,您應在執行所有工具呼叫之前徹底審查和驗證。對於重要操作,請務必保持人員參與,並且只有在您確信該呼叫會完全符合您的預期時才繼續進行。如需更多資訊,請參閱 使用者互動模型 (MCP) 和 安全性考量 (MCP)。
授權與使用
授權條款可在這個 GitHub 儲存庫中的 LICENSE.md 檔案中取得。
MCP 伺服器僅允許依照 MathWorks 軟體授權協議與 MATLAB 搭配使用,且不得由多位使用者共用。如果您需要支援共用或集中式伺服器使用,請聯絡 MathWorks。
聯絡支援
MathWorks 鼓勵您使用此儲存庫並提供意見回饋。若要請求技術支援或提交增強請求,請建立 GitHub issue 或聯絡 MathWorks 技術支援。
版權所有 2025-2026 The MathWorks, Inc.