mcpField
M
MATLAB MCP Server

MATLAB MCP Server

本地服务
github.com/matlab开发工具1.7k2 周前更新

关于 MATLAB MCP Server

MATLAB MCP Server 是 MathWorks 官方提供的 MCP 服务,让 AI 应用能够启动和退出 MATLAB、编写并运行 MATLAB 代码,并检查代码的风格与正确性。适合使用 MATLAB 的工程师和希望借助 AI 编码 Agent 处理 MATLAB 任务的用户。

主要功能

  1. 01启动与退出 MATLAB
  2. 02编写并运行 MATLAB 代码
  3. 03对 MATLAB 脚本进行静态代码分析
  4. 04检测已安装的 MATLAB 和工具箱版本
  5. 05支持连接已有的 MATLAB 会话

适用场景

  1. 01让 AI 编码 Agent 编写并运行 MATLAB 脚本
  2. 02对 .m 文件做风格和正确性检查
  3. 03查询本机 MATLAB 及工具箱版本信息

MCP 相关

该项目是一个 MCP 服务,向 MCP 客户端暴露 MATLAB 相关工具,例如 detect_matlab_toolboxes 与 check_matlab_code。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库
安装包
mcpbmatlab-mcp-server.mcpb0.13.1

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MATLAB MCP 服务

English • Español • 日本語 • 한국어 • 简体中文

使用 MathWorks® 官方 MATLAB MCP 服务,通过 AI 应用运行 MATLAB®。MATLAB MCP 服务可让您的 AI 应用:

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

您可以使用 MATLAB Agentic Toolkit (GitHub) 和 Simulink Agentic Toolkit (GitHub) 中的技能,帮助 Agent 使用 MATLAB 和 Simulink;这些工具包也可以为您安装此 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 silicon 处理器,请运行:
        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 Server 捆绑包在 Claude Desktop 中安装 MATLAB MCP Server。

  1. 在 Claude Desktop 中安装 Filesystem 扩展,以允许 Claude 在你的系统上读取和写入文件。在 Claude Desktop 中,点击 Settings > Extensions > Browse extensions。搜索 Anthropic 开发的 Filesystem 扩展并点击 Install。指定要允许 MCP 服务访问的文件夹,然后将 Disabled 按钮切换为 Enable,以启用 Filesystem 扩展。

  2. 从 Latest Release 页面下载 MATLAB MCP Server 捆绑包 matlab-mcp-server.mcpb。

  3. 若要将 MATLAB MCP Server 捆绑包安装为桌面扩展,请双击下载的 matlab-mcp-server.mcpb 文件,然后在 Claude Desktop 中点击 Install。(或者,在 Claude 中依次点击 File menu > Settings > Extensions > Advanced Settings > Install Extension,然后选择 matlab-mcp-server.mcpb 文件。点击 Install)。

若要自定义 MATLAB MCP Server 的行为,请前往 Settings > Extensions > Configure,在此处可以修改服务的参数。

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

说明

Windows 用户: Codex 不会转发运行 MATLAB 和 Simulink 所需的 WINDIR 环境变量(参见 #32)。

若要添加该变量,请打开 Codex 配置文件 C:\Users\<username>\.codex\config.toml,并在 [mcp_servers.matlab] 部分添加 env_vars = ["WINDIR"]:

[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 会在以下位置启动:
    • 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-server --setup-matlab 前,必须按照 Setup 中的说明下载 MATLAB MCP Server 二进制文件。

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

      除了手动运行 shareMATLABSession(),你还可以将此命令添加到 MATLAB 的 Startup Script (MathWorks) 中。
    | --matlab-session-mode=existing | | extension-file | 若要使用自定义 MCP 工具,请提供定义这些工具的 JSON 文件路径。你也可以使用多个扩展文件。有关使用自定义工具的详情,请参阅 Use Custom Tools with the 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.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-level | MCP 服务的日志级别。有效值按详细程度从高到低依次为 debug、info、warn 和 error。默认值为 info。 | --log-level=debug | | disable-telemetry | 若要停用匿名数据收集,请将此参数设为 true。详情请参阅 Data Collection。 | --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-code 文件(.p)。如果同一文件夹中有同名的 MATLAB 源文件(.m)和 P-code 文件(.p),MATLAB 会运行 .p 文件。
    • 输入:
      • script_path(字符串):要执行的 MATLAB 脚本文件的绝对路径。必须是有效的 MATLAB 源文件(.m)或 P-code 文件(.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-code 文件(.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 Server 可能会收集有关你使用该服务的完全匿名信息,并将其发送给 MathWorks。收集这些数据有助于 MathWorks 改进产品,且默认启用。如要选择退出数据收集,请将参数 --disable-telemetry 设为 true。

安全注意事项

使用 MATLAB MCP Server 时,应在运行工具调用前仔细审查并验证所有调用。对于重要操作,务必让人工参与审核,只有在确信调用会按预期执行时才继续。有关更多信息,请参阅 用户交互模型(MCP) 和 安全注意事项(MCP)。

许可与使用

许可条款见此 GitHub 仓库中的 LICENSE.md 文件。

MCP 服务仅可根据 MathWorks Software License Agreement 与 MATLAB 一起使用,且不得由多个用户共享。如需支持共享或集中式服务,请联系 MathWorks。

联系支持

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


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


评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。