MATLAB MCP Core Server

官方

使用 MathWorks® 官方 MATLAB MCP 服务器,通过 AI 应用程序运行 MATLAB®。

你可以用 MATLAB Core MCP 做什么?

  • 运行 MATLAB 代码 — 让您的 AI 评估 MATLAB 代码片段,并通过 evaluate_matlab_code 返回输出。
  • 执行脚本和测试 — 让您的 AI 运行 .m 或 .p 文件(包括单元测试),并通过 run_matlab_file 或 run_matlab_test_file 获取结果。
  • 检查代码质量 — 使用 check_matlab_code 请求对 MATLAB 脚本进行静态分析,以检查样式、错误和最佳实践。
  • 检查 MATLAB 环境 — 让您的 AI 使用 detect_matlab_toolboxes 列出已安装的 MATLAB 工具箱和版本详细信息。

文档

MATLAB MCP 服务器

英语 • 西班牙语 • 日语 • 韩语 • 简体中文

使用 MathWorks® 官方 MATLAB MCP 服务器,通过 AI 应用程序运行 MATLAB®。MATLAB MCP 服务器允许您的 AI 应用程序:

  • 启动和退出 MATLAB。
  • 编写并运行 MATLAB 代码。
  • 评估您的 MATLAB 代码的风格和正确性。

为了帮助您的智能体使用 MATLAB 和 Simulink,您可以使用 MATLAB Agentic Toolkit (GitHub) 和 Simulink Agentic Toolkit (GitHub) 中的技能,这些工具包也可以为您安装此 MCP 服务器。

目录

设置

  1. 安装 MATLAB (MathWorks) R2021a 或更高版本,并将其添加到系统 PATH 中。

  2. 该服务器支持任何使用模型上下文协议(Model Context Protocol)的 AI 应用程序。要为 Claude Desktop 设置 MATLAB MCP 服务器,请跳转到 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 服务器:

      chmod +x ~/Downloads/matlab-mcp-server
      
  3. 将 MATLAB MCP 服务器添加到您的 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 服务器捆绑包在 Claude Desktop 中安装 MATLAB MCP 服务器。

  1. 在 Claude Desktop 中安装 Filesystem 扩展,以允许 Claude 读取和写入您系统上的文件。在 Claude Desktop 中,点击 设置 > 扩展 > 浏览扩展。搜索由 Anthropic 开发的 Filesystem 扩展,然后点击 安装。指定您希望允许 MCP 服务器访问的文件夹,然后切换 禁用 按钮以 启用 Filesystem 扩展。

  2. 从 最新版本 页面下载 MATLAB MCP 服务器捆绑包 matlab-mcp-server.mcpb。

  3. 要将 MATLAB MCP 服务器捆绑包安装为桌面扩展,请双击下载的 matlab-mcp-server.mcpb 文件,然后在 Claude Desktop 中点击 安装。(或者,在 Claude 中导航到 文件菜单 > 设置 > 扩展 > 高级设置 > 安装扩展,然后选择 matlab-mcp-server.mcpb 文件。点击 安装)。

要自定义 MATLAB MCP 服务器的行为,请导航到 设置 > 扩展 > 配置,您可以在其中修改服务器的 参数。

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)。

要添加该变量,请打开您的 Codex 配置文件(位于 C:\Users\<username>\.codex\config.toml),并将 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 服务器的版本。--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 应用程序的第一个 根目录 (MCP) 路径下启动。如果您未定义根目录,MATLAB 将在以下位置启动:
  • Linux:/home/username
  • Windows:C:\Users\username\Documents
  • Mac:/Users/username/Documents
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 会话配置为使用此模式:

  1. 如果您是第一次使用 existing 模式,请运行 ./matlab-mcp-server --setup-matlab。

    此命令会在 MATLAB 中安装一个名为 MATLAB MCP Server Toolbox 的附加组件。您可以使用此表中的其他参数自定义该命令。例如,要指定使用哪个 MATLAB 来安装工具箱,您可以使用 ./matlab-mcp-server --setup-matlab --matlab-root=/home/usr/MATLAB/R2026a。

    对于 Claude Desktop,您必须先按照 设置 中的说明下载 MATLAB MCP 服务器二进制文件,然后再运行 ./matlab-mcp-server --setup-matlab。

  2. 在正在运行的 MATLAB 会话的命令窗口中,运行 shareMATLABSession()。当您使用 --matlab-session-mode=existing 或 --matlab-session-mode=auto 启动服务器时,MCP 服务器将连接到该 MATLAB。如果您运行多个 MATLAB 会话,服务器将连接到您最近运行命令 shareMATLABSession() 的 MATLAB 会话。

    作为手动运行 shareMATLABSession() 的替代方法,您可以将该命令添加到您的 MATLAB 启动脚本 (MathWorks) 中。
--matlab-session-mode=existing
extension-file要使用自定义 MCP 工具,请提供定义您的工具的 JSON 文件的路径。您也可以使用多个扩展文件。有关使用自定义工具的详细信息,请参阅 将自定义工具与 MATLAB MCP 服务器一起使用。

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.json

Linux/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-levelMCP 服务器的日志级别。有效值按详细程度递减的顺序为 debug、info、warn 和 error。默认值为 info。--log-level=debug
disable-telemetry要禁用匿名数据收集,请将此参数设置为 true。有关详细信息,请参阅 数据收集。--disable-telemetry=true

工具

  1. detect_matlab_toolboxes

    • 返回有关已安装的 MATLAB 和工具箱的信息,包括版本号。
  2. check_matlab_code

    • 对 MATLAB 脚本执行静态代码分析。返回有关编码风格、潜在错误、已弃用函数、性能问题和最佳实践违规的警告。这是一项非破坏性、只读操作,有助于在不执行脚本的情况下识别代码质量问题。
    • 输入:
      • script_path(字符串):要分析的 MATLAB 脚本文件的绝对路径。必须是有效的 .m 文件。分析过程中不会修改该文件。示例:C:\Users\username\matlab\myFunction.m 或 /home/user/scripts/analysis.m。
  3. evaluate_matlab_code

    • 计算一段 MATLAB 代码字符串并返回输出。
    • 输入:
      • code(字符串):要计算的 MATLAB 代码。
      • project_path(字符串):项目目录的绝对路径。MATLAB 会将该目录设置为当前工作文件夹。示例:C:\Users\username\matlab-project 或 /home/user/research。
  4. run_matlab_file

    • 执行 MATLAB 脚本并返回输出。该脚本必须是有效的 MATLAB 源文件(.m)或 P 代码文件(.p)。如果 MATLAB 源文件(.m)和 P 代码文件(.p)同名且位于同一文件夹中,MATLAB 将运行 .p 文件。
    • 输入:
      • script_path(字符串):要执行的 MATLAB 脚本文件的绝对路径。必须是有效的 MATLAB 源文件(.m)或 P 代码文件(.p)。示例:C:\Users\username\projects\analysis.m 或 /home/user/matlab/simulation.m。
  5. run_matlab_test_file

    • 执行 MATLAB 测试脚本并返回全面的测试结果。专为遵循 MATLAB 测试框架约定的 MATLAB 单元测试文件而设计。
    • 输入:
      • script_path(字符串):要执行的 MATLAB 测试脚本文件的绝对路径。必须是包含 MATLAB 单元测试的有效 MATLAB 源文件(.m)或 P 代码文件(.p)。示例:C:\Users\username\tests\testMyFunction.m 或 /home/user/matlab/tests/test_analysis.m。

资源

MCP 服务器提供 资源(MCP) 以帮助您的 AI 应用程序编写 MATLAB 代码。要查看使用此资源的说明,请参阅您的 AI 应用程序中关于如何使用资源的文档。

  1. matlab_coding_guidelines

    • 提供全面的 MATLAB 编码标准,以提高代码可读性、可维护性和协作性。这些指南涵盖命名约定、格式、注释、性能优化和错误处理。
    • URI:guidelines://coding
    • MIME 类型:text/markdown
    • 来源:MATLAB 编码标准(GitHub)
  2. 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)

数据收集

MATLAB MCP 服务器可能会收集有关您使用服务器的完全匿名信息,并将其发送给 MathWorks。此数据收集有助于 MathWorks 改进产品,并且默认开启。要选择退出数据收集,请将参数 --disable-telemetry 设置为 true。

安全注意事项

使用 MATLAB MCP 服务器时,您应在运行所有工具调用之前彻底审查和验证它们。对于重要操作,始终保持人工参与,并且只有在您确信调用将完全按照预期执行时才继续。有关更多信息,请参阅 用户交互模型(MCP) 和 安全注意事项(MCP)。

许可和使用

许可证可在本 GitHub 仓库的 LICENSE.md 文件中获取。

MCP 服务器仅允许按照 MathWorks 软件许可协议与 MATLAB 一起使用,并且不得由多个用户共享。如果您需要支持共享或集中式服务器使用,请联系 MathWorks。

联系支持

MathWorks 鼓励您使用此仓库并提供反馈。要请求技术支持或提交增强请求,请创建 GitHub 问题或联系 MathWorks 技术支持。


版权所有 2025-2026 The MathWorks, Inc.