前言¶
DeepSeek Harness (DSH) 是一個支持插件化擴展的智能體開發框架。在本地環境部署了 MATLAB 等工具後,通過 MCP (Model Context Protocol) 協議將工具能力接入 DSH,是實現本地計算與模型對話的關鍵一步。
dsh-mcp-matlab 是一個 DSH 橋接插件。它的作用是將本地的 matlab-mcp-server-windows-x64.exe 接入 DSH 環境,註冊 mcp__matlab__* 系列工具,讓 AI 代理能夠直接在 DSH 會話中執行 MATLAB 代碼、運行腳本或檢測工具箱。
這是什麼¶
這是一個純粹的配置文件插件,不包含 MATLAB 本體或 MCP Server 可執行文件。它只負責提供 cordis.patch.yml 配置模板,將 DSH 與本地的 MATLAB MCP Server 連接起來。
核心功能¶
安裝並配置完成後,DSH 將獲得以下 5 個工具:
mcp__matlab__evaluate_matlab_code:在 MATLAB 會話中執行代碼片段,返回命令行輸出。mcp__matlab__run_matlab_file:執行指定的.m腳本文件。mcp__matlab__run_matlab_test_file:使用 MATLAB 的runtests命令運行測試文件。mcp__matlab__check_matlab_code:對.m腳本進行靜態代碼檢查。mcp__matlab__detect_matlab_toolboxes:列出當前 MATLAB 已安裝的工具箱版本。
安裝與啓用¶
使用以下命令安裝插件:
dsh plugin --profile desktop add github:yh01010/dsh-mcp-matlab
安裝後需要重啓 DSH 生效。需要注意的是,安裝完成後工具列表中不會直接出現 mcp__matlab__* 工具,還需要進行外部依賴的配置。
前置條件與配置¶
本插件僅包含配置文件,不包含依賴。使用前必須準備好以下外部依賴:
- MATLAB MCP Server 可執行文件:需自行下載
matlab-mcp-server-windows-x64.exe(建議放置在%USERPROFILE%\.local\bin\等固定目錄)。 - MATLAB 環境:需安裝 MATLAB R2021a 或更新版本,且擁有有效許可證。
安裝完成後,需修改 $DSH_HOME/cordis.patch.yml 文件。不要在 home patch 中使用 insert 寫入配置,如果插件包已安裝,應使用 id 覆蓋方式(override)修改配置。
在 $DSH_HOME/cordis.patch.yml 中添加或修改以下內容:
# $DSH_HOME/cordis.patch.yml
- id: mcp-matlab
name: '@deepseek-ai/dsh-mcp-client'
config:
serverName: matlab
transport: stdio
command: 'C:\Users\<你的用戶名>\.local\bin\matlab-mcp-server-windows-x64.exe'
args:
- '--matlab-root=D:\path\to\your\matlab'
- '--matlab-display-mode=nodesktop'
- '--disable-telemetry'
toolCallTimeoutMs: 120000
failOnStartupError: false
關鍵配置說明:
command:填入matlab-mcp-server-windows-x64.exe的完整路徑。args:通過--matlab-root指定 MATLAB 安裝根目錄。failOnStartupError:默認設爲false。若設爲true且路徑配置錯誤,會導致 DSH 啓動失敗。
排障¶
- 看不到
mcp__matlab__*工具:最常見原因是配置文件中的路徑仍爲佔位符。請檢查$DSH_HOME/cordis.patch.yml中的command和args是否已填入真實路徑。 - DSH 啓動失敗:錯誤信息
serverName "matlab" is already in use通常是因爲在 home patch 中使用了insert插入了與插件包配置重複的條目。請刪除重複的insert行,改用id覆蓋。 - 工具調用報 JSON Schema 錯誤:部分模型供應商(如阿里雲 DashScope)可能拒絕空參數 schema 的工具定義。此問題通常出在模型適配層,而非插件本身。
- 工具調用超時:MATLAB 冷啓動或加載工具箱耗時較長,可能導致調用超時。可適當調大
toolCallTimeoutMs配置值。
移除¶
如需移除插件:
dsh plugin --profile desktop remove dsh-mcp-matlab
許可證¶
MIT