MATLAB生产服务器的MCP框架
将MATLAB®函数发布到 MATLAB生产服务器™ 作为 模型上下文协议(MCP) 工具。这使得AI代理能够 调用您的函数,利用特定领域的专业知识增强其功能。
所需产品
除了这个包,你还需要:
- MATLAB R2025b或更高版本。
- MATLAB编译器SDK™ 与您的MATLAB版本兼容。
- 访问 MATLAB生产服务器 R2022a或更高版本。
- 一 MCP客户端 这不需要可流式传输的HTTP。使用此包创建的MCP服务器不支持可流式传输的HTTP或HTTP服务器发送事件(SSE)。
快速入门
要将MATLAB函数作为MCP工具提供给LLM,您需要:
- 将此包安装在MATLAB可以找到的地方,并将顶层文件夹添加到MATLAB的路径中。
- 从MATLAB函数构建MCP工具
- 配置您的MCP客户端,使该工具可用于您的LLM。
步骤1:安装
使用此插件需要MATLAB R2025b或更高版本。
使用插件资源管理器将此插件安装到MATLAB中:
- 在MATLAB中,转到 家 选项卡,以及 环境 部分,单击 附加组件 偶像。
- 在附加组件资源管理器中,搜索“MATLAB生产服务器的MCP框架”。
- 选择 安装.
步骤2:构建MCP工具
要从MATLAB函数之一创建MCP工具,请执行以下操作:
- 将函数打包到可部署的存档中。
- 将存档上传到MATLAB Production Server的活动实例。
- 验证上传/安装是否成功。
例如,要从创建MCP工具 primeSequence 函数在MATLAB中使用以下命令:
ctf = prodserver.mcp.build("primeSequence",wrapper="None", definition="primeSequence.json");
endpoint = prodserver.mcp.deploy(ctf,"localhost",9910);
available = prodserver.mcp.ping(endpoint)
available =
true
>> gp = prodserver.mcp.call(endpoint, "primeSequence", 11, "gaussian")
gp = 1×11
3 7 11 19 23 31 43 47 59 67 71然后,您可以在LLM主机上使用它,并提示:“生成前11个高斯素数。”请参阅以下讨论 外部的 详细信息的数据来源 wrapper 输入 prodserver.mcp.build.
如果您使用的是MATLAB R2026a预发布版 definition 争论已不再必要。MCP工具定义可以在R2026a中自动生成。
步骤3:配置MCP客户端
有许多MCP客户端,每个客户端都有自己的MCP工具配置机制。但他们都分享 相同的想法:确定每个MCP工具的位置以及工具理解的通信协议。MCP框架创建了基于HTTP的MCP工具。为了帮助开发和测试,还包括一个STDIO到HTTP服务器桥。
MCP框架已经针对这些MCP客户端进行了测试,使用了每个链接描述的配置。
- 使用MATLAB的LLMs OpenAI LLMs
- Claude®桌面
任何支持纯基于HTTP的MCP服务器的客户端都应该可以工作。请注意,MATLAB Production Server的MCP Framework不支持流式HTTP——连接是暂时的、事务性的,而不是持久的。
例子
Examples文件夹包含几个不同复杂性的完整MCP工具。每个示例都包含一个MATLAB Live Script(\*.mlx文件),演示如何创建、部署和测试MCP工具。
- 底漆:生成四种不同类型的素数序列。不需要数据封送包装函数。
- 周期性噪声:消除测量信号中的周期性噪声。演示自动生成的包装器函数的显式使用。
- 地震:生成地震数据图。演示用户编写的包装器函数的使用。
- 多种工具:构建一个托管多个MCP工具的服务器。
为了成为有效的MCP工具,MATLAB函数必须适应MCP环境。特别地, 您的职能必须:
如果你在代码中添加注释和函数参数块,MCP框架可以自动化大多数 这一过程。有关详细信息,请参阅链接。
参考
公共职能
这些函数有自己的命名空间, prodserver.mcp,在以下情况下必须将其用作前缀 在MATLAB中调用它们。例如,呼叫 build 使用其全名: prodserver.mcp.build.
| 功能 | 说明 | 示例 |
|---|---|---|
| 构建 | 包装功能作为MCP工具 | build("primeSequence",wrapper="None") |
| 呼叫 | 调用已部署的工具(用于测试) | call(endpoint, "primeSequence", 9, "Eisenstein") |
| 部署 | 将工具上传到MATLAB生产服务器 | deploy(tool, "localhost", 9910) |
| 存在 | 检查MATLAB生产服务器上是否存在该工具 | exist("http://localhost:9910/primes/mcp", "primeSequenceMCP", "tool") |
| 列表 | 列出可用的MCP图元 endpoint | list(endpoint, "Tools") |
| 拼 | 向服务器发送ping endpoint。如果服务器响应,则返回true。 | ping(endpoint) |
公用事业
| 名称 | 描述 | \ |
|---|---|---|
| mcpstdio2http.py | MCP STDIO到HTTP服务器网桥。 | |
| linePlot.py | MCP STDIO服务器。从CSV文件创建线条图。 |
此外,每个MCP服务器都支持一个简单的 ping 确认服务器存在和准备就绪的HTTP端点。 一旦 primeSequence 工具上传到运行在 http://localhost:9910,发送ping curl:
% curl http://localhost:9910/primeSequence/ping
pong安全
安全是你的责任。MATLAB生产服务器托管的MCP服务器可以使用 超文本传输安全协议 为了安全。 通过MATLAB Production Server中的配置设置安全参数。
目录结构
| 文件夹 | 描述 |
|---|---|
| +prodserver | prodserver.mcp命名空间的顶级目录。包含大部分功能。 |
| 文档 | 记录公共功能的Markdown参考页面集合。 |
| 示例 | MCP工具的完整示例以及创建、部署和使用它们的工作流。 |
| 测试 | 单元和集成测试。 |
| 实用程序 | 主要是简化与其他环境集成的独立函数和脚本。 |
有问题吗?
联系我们
许可证
许可证可在 license.txt 文件。
