MCP 服务 / MCP 编程
于 7.6.0 版本新增
「MCP 编程」是 DataFlux Func 的一个用于支持 AI Agent 在 Func 中编写、管理脚本的功能。
用户可以通过 MCP 服务的方式,允许 AI Agent 参与 DataFlux Func 中函数的编写和管理。
1. 接入步骤
可以按照如下步骤,将 MCP 客户端 / AI Agent 接入 DataFlux Func 的 MCP Coding 服务
1.1 创建 Access Token
访问 DataFlux Func 的 MCP Coding 服务需要创建 Access Token,并开启「MCP 编程」功能
并可以在规则中指定所需开放函数(如:按脚本集 ID)
1.2 权限规则
权限规则可以手工编辑,从上到下依次匹配,按照首个命中的规则确定权限;没有命中规则的对象不可访问。保存时会保留空行和 # 注释,匹配时忽略注释。
r(读取)、w(修改)、x(执行)和 p(发布)相互独立,可按任务需要组合。保存时统一按 r、w、x、p 排列。
示例如下:
| 规则(精确匹配 ID) | 匹配对象 | 匹配 ID | 权限 |
|---|---|---|---|
scriptSet:mytest:r |
脚本集 | mytest |
读取 |
scriptSet:mytest:rw |
脚本集 | mytest |
读取、修改 |
scriptSet:mytest:rwx |
脚本集 | mytest |
读取、修改、执行 |
scriptSet:mytest:rwp |
脚本集 | mytest |
读取、修改、发布 |
scriptSet:mytest:rwxp |
脚本集 | mytest |
读取、修改、执行、发布 |
script:mytest__demo:r |
脚本 | mytest__demo |
读取 |
| 规则(通配 ID) | 匹配对象 | 通配 ID | 权限 |
|---|---|---|---|
scriptSet:my*:r |
脚本集 | 按 my* 通配 |
读取 |
script:mytest__de*:r |
脚本 | 按 mytest__de* 通配 |
读取 |
脚本集规则也覆盖其下属脚本。对于脚本,执行草稿使用 x 权限,发布使用 p 权限;发布会进行平台脚本预检查,但不要求 x 权限或预先执行草稿。
创建函数 API、定时任务,或替换其绑定的 funcId 时,除了对应资源的 w 权限,还需要目标函数所属脚本的 x 权限,因为这些资源将执行该函数。
1.3 配置 MCP 客户端
DataFlux Func 的 MCP 服务遵循 MCP 规范
在实际对接前,推荐使用 MCP Inspector 进行调试
在 MCP 客户端 / AI Agent 中添加如下配置:
| 配置项 | 值 |
|---|---|
| URL 地址 | {DataFlux Func 访问地址}/mcp/coding |
| 请求头 | X-Dff-Access-Token: atk-xxxxx:xxxxx |
| 示例:OpenCode 配置 | |
|---|---|
1 2 3 4 5 6 7 8 9 10 11 12 | |
| 示例:Codex 配置 | |
|---|---|
1 2 3 4 | |
| 示例:Claude Code 配置 | |
|---|---|
1 2 3 4 5 6 7 8 9 10 11 | |
| 示例:通用 JSON 配置 | |
|---|---|
1 2 3 4 5 6 7 8 9 10 | |
2. 实际操作示例
配置完成后,先在 MCP 客户端中确认已成功连接到 DataFlux Func 的 MCP Coding 服务:
连接成功后,直接描述需要完成的任务,并说明目标脚本集、脚本或函数,以及是否需要执行或发布。例如:
- 同步脚本集
demo的所有代码 - 修改脚本
demo__test中的函数,只保存草稿 - 查询函数
demo__test.run最近一天的失败任务记录,分析错误原因
查询任务记录时,需为 Access Token 配置所属脚本的 r 权限(也可从脚本集继承),或对应函数 API 的 r 权限;定时任务记录也可通过对应定时任务的 r / x 权限读取。
输入任务后,即可在客户端中查看处理过程和结果:
代码修改完成后,在 DataFlux Func 中刷新并查看修改结果。仅保存草稿时,不会影响已生效的代码;确认修改后,再发布脚本。