前言¶
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