本文重点:零基础配置 Codex 桌面端 × MATLAB R2024b × MCP,看到 MATLAB Editor、Figure 与 Simulink Scope 的真实联动。
详细的讲解视频:https://www.bilibili.com/video/BV1e4nr6tEkZ/?vd_source=a4018336c55a0fea51f473ef954b33b6
开通Plus:https://catfk.com/shop/C5GBYI2L

从零安装到可视化联动的五个关键检查点。
| 0 | |||
| 1 | |||
| 2 | agenticToolkitInstaller.mltbx | ||
| 3 | setupAgenticToolkit("install") | ||
| 4 | shareMATLABSession() | ||
| 5 | matlab | ||
| 6 | |||
| 7 | .m | ||
| 8 | .slx | ||
| 9–12 |
已经安装过 Toolkit 的读者:可以先阅读前面的安装流程,但直接从 §4—§6 做真实连通验收;不要为了单个 GUI 问题反复重装已正常运行的组件。

| 不必须 | |
可以主动实现 edit() / MATLAB Editor API 打开源文件。 | |
| 标准 MCP 不会自动模拟鼠标键盘 | |
.m 代码需显式使用 figure、drawnow 等,并连接可见会话。 | |
open_system 并在运行前打开 Scope;简单模型要启用 Simulation Pacing。 | |
| 无需单独配置 API Key 或安装 CLI |
三个门禁互不替代:① MathWorks MATLAB 侧安装检查 PASS;② Codex 实际能调用 MATLAB MCP;③ MATLAB/Simulink GUI 真实出现脚本、模型与动态结果。必须逐项验证。
>>。MATLAB 命令窗口第一组检查:
version
ver
which('simulink')
a = 10; b = 20; disp(a+b)
合格判断:显示 MATLAB 版本;ver 中包含安装产品;which('simulink') 能定位 Simulink 入口(若你要用 Simulink);disp 返回 30。
若你还没有装 Simulink,先通过 MathWorks Add-On/安装管理补齐,不要尝试仅靠 MCP 把它模拟出来。
C:\Users\YOURNAME\MATLAB_Codex_Demo。%USERPROFILE%\.codex\config.toml。codex。没有 CLI 不影响本教程的核心流程。Codex 桌面编程界面和普通 ChatGPT 聊天窗口的可用工具,取决于你的客户端版本、账号以及本地执行模式。是否真的能运行本地 MCP,必须在 §6 实测,不应仅凭安装应用的名称推断。
使用 Windows 文件资源管理器打开:
C:\Users\YOURNAME
新建文件夹:
MATLAB_Codex_Demo
最终为:
C:\Users\YOURNAME\MATLAB_Codex_Demo
首次试验不放到原始科研数据所在目录;验证成功后再移植到正式工程。
| MATLAB MCP Server | ||
| MATLAB MCP Server Toolbox | ||
| MATLAB Agentic Toolkit | ||
| Simulink Agentic Toolkit(SATK) |
推荐方案:一个统一安装器,一次装好以上组件。 不要分别去不明下载站找所谓 MATLAB MCP 插件。
.mltbx打开以下官方发布下载链接:
官方一键安装文件
Simulink Agentic Toolkit 官方说明
MATLAB Agentic Toolkit 官方说明
MATLAB MCP Server 官方说明
正确文件名通常是:
agenticToolkitInstaller.mltbx
不是 .zip、.m 或 .exe。它是 MATLAB 的工具箱安装包。
.mltbx,安装安装器agenticToolkitInstaller.mltbx,双击。如果双击后不能正常启动安装对话框,可在 MATLAB 中切换到下载目录后运行(将路径替换为真实下载位置):
matlab.addons.toolbox.installToolbox( ...
fullfile(getenv('USERPROFILE'), 'Downloads', 'agenticToolkitInstaller.mltbx'))
注意:这一步只安装“安装器附加功能”,并不自动代表 MCP Server、Codex 配置以及全部技能已经完成。
在 MATLAB Command Window 中输入:
which('setupAgenticToolkit')
有路径说明 MATLAB 找到了安装命令;若返回“未找到”,先解决 .mltbx 安装,而不是继续下一个命令。
在 MATLAB Command Window 输入:
setupAgenticToolkit("install")
回车。等待安装器检查系统、下载官方组件、配置 Codex MCP 和技能。该阶段可能询问安装 Toolkit 类型、Agent 类型、全局/项目范围与技能组。屏幕选项随版本变化,以你实际显示的项目为准。
初学者推荐原则:
工具包
AI Agent
作用范围
global);之后可按需改为某一个项目。 技能组
已有配置
config.toml,先备份并阅读差异,避免覆盖原有其他 MCP 连接。 all 输入错误:正确做法有些安装版本可能出现下列提示:
Enter selection (e.g., 1,3,5, "all", or "none") [none]:
这里正确的全选输入是(不含引号):
all
按一次 Enter。
all | ||
"all" | ||
'all' | ||
1-23 | ||
(1-23) | ||
1,3,5 | ||
none | ||
[none] 的默认值 |
建议:不要因为出现 23 项就一定安装全部技能。只安装需要的技能组,有助于 Codex 找到正确技能。已经误选全部通常不至于损坏环境,但不需要为了“全选”反复重装。
安装器运行结束后,在 MATLAB 输入:
setupAgenticToolkit("status")
如果你的安装器版本提供安装验证函数,也可以执行:
which('satk_initialize')
which('shareMATLABSession')
随后检查实际 MCP 可执行文件是否存在(Windows):
mcpExe = fullfile(getenv('USERPROFILE'), '.matlab', ...
'agentic-toolkits', 'bin', 'matlab-mcp-server.exe');
isfile(mcpExe)
返回 1 代表文件存在。如果你的安装器报告了另一条实际可执行文件路径,应以它实际打印的路径为准。
安装器检查 MATLAB、Simulink、路径、Toolbox 和 Connector;它不会自动替你完成“Codex 桌面端运行中真正调用 MCP 并观察 MATLAB GUI”的全部验收。
从零安装后还必须执行后面的 §4 会话初始化 → §5 Codex 连接 → §6 工具调用验收。
需要跟随发行版升级时:
agenticToolkitInstaller.mltbx 并安装新版安装器。setupAgenticToolkit("update")。config.toml,确认 Simulink 扩展文件参数仍在。不要在运行正常时无理由频繁升级和覆盖配置。

existing 与 auto 连接模式的区别。
2026 年 10 月更新提醒: 对使用 MathWorks 最新 Agentic Toolkit Installer(SATK-2026.10.c) 安装的读者,官方说明 不再需要手动执行
satk_initialize,默认连接模式为auto。如果想明确连接当前可见 MATLAB Desktop,可将 MCP 改为existing,并在 MATLAB 中执行shareMATLABSession()。旧安装或手工部署可能仍需要初始化步骤,切勿把两个流程叠加运行。官方说明:Simulink Agentic Toolkit Releases。
打开 MATLAB R2024b,在 Command Window 输入:
shareMATLABSession()
这一步通常不显示弹窗,也不一定输出“success”。正常返回 >>、没有红色报错即可继续下一道工具调用验证。
如果同时打开多个 MATLAB,MCP 通常连接最近执行 shareMATLABSession() 的那一会话。初学者建议暂时只打开一个 MATLAB 窗口。
仅在旧版/手工安装流程明确要求时,每次重开 MATLAB 会话后在 Command Window 执行;使用 2026.10.c 新版安装器的一般跳过此步骤:
satkPath = fullfile(getenv('USERPROFILE'), ...
'.matlab', 'agentic-toolkits', 'simulink');
assert(isfolder(satkPath), 'Simulink Agentic Toolkit directory not found');
addpath(satkPath);
satk_initialize
根据官方说明,satk_initialize 会添加 SATK 工具路径、共享当前 MATLAB 会话,并运行安装验证。执行此命令后通常不需要再重复执行 shareMATLABSession()。
如果你只用 MATLAB,不用 Simulink,运行一次 shareMATLABSession() 就足够进行基本 MCP 计算连接;SATK 初始化不是 MATLAB MCP 本身的强制前提。
如果你看到类似下面的检查输出,可以说明 MATLAB 端准备就绪。以下仅为格式示意,不是本篇刚刚执行的结果:
Prerequisites
✓ MATLAB 24.2.0.2712019 (R2024b)
✓ Simulink installed and licensed
MATLAB Environment
✓ All 9 tool entry points on path
✓ Package resolution correct (+sage, +mbd inside SATK)
MCP Server
✓ matlab-mcp-server.exe found:
C:\Users\YOURNAME\.matlab\agentic-toolkits\bin\matlab-mcp-server.exe
MCP Connectivity
✓ shareMATLABSession available
✓ MATLAB connector running (port <实际端口>)
Result: PASS
正确结论:MATLAB 端准备就绪。尚不能仅凭这些内容断定 Codex 桌面版已经真正调用了 MATLAB 工具,也不能据此认定 Simulink GUI 已成功展示。
MathWorks 自动安装器为 Codex 写入的用户级配置通常位于:
C:\Users\YOURNAME\.codex\config.toml
你可以按 Win + R,输入:
%USERPROFILE%\.codex
然后右键用记事本打开 config.toml,先另存一份备份:config.toml.bak。
寻找以 [mcp_servers.matlab] 开头的部分。如果该部分已经存在、地址正确且工具可用,无需整段替换。安装器可能给 args 同时写入了扩展工具参数,保留它们尤为重要。
在支持此入口的 ChatGPT / Codex 本地桌面客户端 中:
matlab 服务;已有则不重复添加。matlab。/mcp 或在服务列表查看状态(按钮名称依客户端版本变化)。若你的桌面版没有这组设置,可以手动检查 config.toml。这仍然是桌面版操作路线,不要求安装 Codex CLI。
只有在自动安装器未配置成功时,才手动添加。例如:
[mcp_servers.matlab]
command = 'C:\Users\YOURNAME\.matlab\agentic-toolkits\bin\matlab-mcp-server.exe'
args = ['--matlab-session-mode=existing']
env_vars = ['WINDIR']
startup_timeout_sec = 30
tool_timeout_sec = 600
TOML 单引号字符串可以让 Windows 反斜杠保持原样,不要在路径前后加入多余引号。如果 config.toml 已有 [mcp_servers.matlab],只编辑它,不要重复声明同名表。
command | |
--matlab-session-mode=existing | 只连接已经共享的 MATLAB |
env_vars = ['WINDIR'] | |
startup_timeout_sec | |
tool_timeout_sec |
重要禁忌:在 existing 模式下,不要额外传入 --matlab-root、--initial-working-folder、--matlab-display-mode;它们在 MathWorks 官方说明中与现有会话模式不兼容。
--extension-file 覆盖掉这一点尤其重要,前一次“只写 args = ['--matlab-session-mode=existing']”的示例对 Simulink 并不总够用:它可能会删掉自动安装器原本写入的扩展工具清单,导致 MATLAB 端九项路径 PASS,但 Codex 看不到 model_edit。
若安装器已经在 args 中包含 --extension-file=...,请原样保留。其文件通常位于 Simulink Toolkit 的 tools/tools.json,具体以你本机实际安装路径为准。
可先在 MATLAB 检查:
simulinkToolsJson = fullfile(getenv('USERPROFILE'), ...
'.matlab', 'agentic-toolkits', 'simulink', 'tools', 'tools.json');
disp(simulinkToolsJson)
isfile(simulinkToolsJson)
如果返回 1,而你的 config.toml 确实没有扩展参数,才考虑把 args 调整为(注意:下面路径只在本机文件存在时有效):
args = [
'--matlab-session-mode=existing',
'--extension-file=C:\Users\YOURNAME\.matlab\agentic-toolkits\simulink\tools\tools.json'
]
这是 MathWorks 的 Simulink Agentic Toolkit 手动扩展机制。它只是让九个工具可被 MCP 客户端发现;是否需要 satk_initialize 取决于安装器版本(见 §4),无论如何都须在 Codex 中实际列出工具验证。
config.toml,完全退出 Codex/ChatGPT 桌面客户端(不仅是关掉会话标签)。C:\Users\YOURNAME\MATLAB_Codex_Demo。matlab MCP。.exe。客户端会按 STDIO 配置启动服务器进程。
只需确认工具确实运行、MATLAB 图窗实际出现。
打开 MATLAB R2024b,在命令窗口运行 shareMATLABSession()(使用 existing 连接模式时)。然后在 Codex 桌面版发送这段话:
请实际调用 MATLAB MCP 的 evaluate_matlab_code,
在当前打开的 MATLAB R2024b 中执行:
x = 100 + 200;
disp(x);
t = 0:0.1:6;
figure('Name','Codex-MATLAB 演示');
plot(t,sin(t)); grid on; drawnow;
请展示真实工具返回;不要只计算答案后回复。
怎么看是否成功? Codex 的工具调用记录里能看到 MATLAB 返回 300,而且你打开的 MATLAB 中出现正弦曲线图,就说明基本互联和可视化工作正常。
如果只显示 MATLAB 安装版本,或只读到了 VersionInfo.xml,但没有实际运行代码,说明还没有通过这个检查。先检查 §4 的会话共享和 §5 的 MCP 配置,无需反复重装。
如果你暂时不用 Simulink,到这里就可以直接开始 MATLAB 程序开发。

两种频率的数学示意图,非本机 MATLAB 截图。
现在让 Codex 在项目文件夹中生成一个简短的 MATLAB 脚本,并在 MATLAB Editor 中打开、运行。建议使用下面的 50 Hz + 120 Hz 双频信号示例。
visible_demo.m% MATLAB R2024b 双频信号演示
fs = 2000; % 采样率 Hz
t = 0:1/fs:1-1/fs;
x = sin(2*pi*50*t) + 0.3*sin(2*pi*120*t);
figure('Name','MATLAB 信号演示','Visible','on');
subplot(2,1,1);
plot(t,x,'b'); grid on;
xlabel('时间 (s)'); ylabel('幅值');
title('时域信号');
N = numel(x);
Y = abs(fft(x)/N);
P = Y(1:N/2+1);
P(2:end-1) = 2*P(2:end-1);
f = (0:N/2)*fs/N;
subplot(2,1,2);
plot(f,P,'r'); xlim([0,160]); grid on;
xlabel('频率 (Hz)'); ylabel('幅值');
title('单边幅度谱');
drawnow;
正常现象:MATLAB 弹出一张图,上方是时域曲线,下方频谱在约 50 Hz 和 120 Hz 处出现峰值。这是预期的数学结果,实际以程序运行画面为准。
请在本地 MATLAB_Codex_Demo 项目中创建 visible_demo.m,
代码使用本文的双频信号示例。
使用 MATLAB MCP 实际调用 edit(脚本完整路径),
让我在 MATLAB Editor 看到代码;然后运行它。
我只需要看到 MATLAB 图窗中的时域波形和频谱。
如果报错,请根据真实错误修复后重新运行。
看到 Editor 代码和 Figure 图像就完成这一步。 不需要额外生成大量日志、CSV、MAT 或逐项检查数十个指标;它们属于后续正式科研项目的需求。

Simulink 模型结构示意,目标是让模型窗口和 Scope 能真实打开。
如果已安装并授权 Simulink,可以再做一个非常直观的小演示:
Sine Wave → Gain → Scope。正弦信号经过放大后,Scope 显示波形。
直接在 Codex 输入:
请使用当前 MATLAB MCP,在本机 MATLAB R2024b 的 Simulink 中:
1. 创建一个名为 codex_simulink_demo 的新模型。
2. 添加 Sine Wave、Gain(系数 2)、Scope 三个模块并连线。
3. 保存为 codex_simulink_demo.slx。
4. 调用 open_system 打开模型和 Scope。
5. 设置停止时间为 10 秒,实际运行一次仿真。
优先调用可用的 Simulink MCP 扩展工具;
如果没有这些扩展工具,可通过 evaluate_matlab_code
执行 Simulink 原生 MATLAB API。
不要覆盖已有同名模型;失败时展示真实错误并修复。
怎么看是否成功? 你能在 Simulink 看到三个连接好的模块,Scope 中能看到正弦曲线,就可以结束这一部分。若仿真太快,只看到最终曲线,也不代表失败;需要录制动态过程时再设置 Simulation Pacing。
这一步只用于演示 Codex 与 Simulink 的交互能力,不是复杂模型的科学验证,也不要求读者安装 Simulink Test 等额外产品。
请通过我现有的 MATLAB MCP,在当前 MATLAB R2024b 中开发:
【这里填写你想开发的程序或算法】
要求:把代码保存为 .m 文件,在 MATLAB Editor 打开,
实际运行并显示 Figure;如有错误就修复、重跑。
最后告诉我程序保存在哪里、如何重新运行,
以及实际运行是否成功。不要把预计结果说成实测结果。
第一次教学只用这段即可。正式的科研论文复现需要更严格的物理参数和数值验证,但不必塞进这篇入门互联教程。

能读取 MATLAB 的安装信息,不代表能执行 MATLAB 代码。
shareMATLABSession() | disp(300) 验证 |
existing 模式与 shareMATLABSession(),确认 MCP 调用记录 | |
figure 和 drawnow,检查是否连接当前可见会话 | |
.m 文件 | edit(文件完整路径) |
--extension-file;也可先通过 MATLAB MCP 执行 Simulink API |
提醒:排查连接故障时先保存原配置;不要直接删除 MATLAB 安装目录、重置全部路径或覆盖已有科研项目。
工具通了
300。 界面通了
可选 Simulink
三个结果都来自你电脑的真实操作,就完成了这篇互联入门教程。它证明能够交互编程与演示,不代表任何科研论文已经获得数值复现验证。
下面的资料来源是 MathWorks、OpenAI 官方仓库或帮助文档。不同版本安装器的实际菜单可能变化,以官方最新版页面和你的本机提示为准。
satk_initialize、九项 MCP 扩展工具existing 会话与 --extension-fileconfig.tomlopen_systemTo Workspace 与 Simulink.SimulationOutputeditshareMATLABSession 相关 MCP 工具新安装电脑
像你这样已经 MATLAB 端 PASS 的电脑
长期工程
不要把 MCP 安装 PASS 作为最后终点。最终目标是确认两件事:Codex 确实执行了 MCP 调用,你在 MATLAB 中看到了图窗。