帮你快速理解、总结文档立即下载

DLC MCP 实践

最近更新时间:2026-08-24 17:26:15
我的收藏

功能简介

数据湖计算 DLC(Data Lake Compute,DLC)提供基于 Model Context Protocol(MCP)的标准化接入能力。通过 DLC MCP Server,您可以在支持 MCP 协议的 AI Agent(例如 WorkBuddy 及其他兼容 MCP 的智能体应用)中,以自然语言对话的方式直接操作 DLC,无需编写代码即可完成数据查询、元数据浏览、Spark 作业管理、任务运维诊断与权限查询等操作。
DLC MCP Server 采用 Streamable HTTP 传输协议,服务地址如下:
https://tcmcpserver.cloud.tencent.com/dlc/mcp
说明:
MCP(Model Context Protocol)是一种开放协议,用于在 AI 应用与外部数据源、工具之间建立标准化的连接。
DLC MCP Server 以您的腾讯云账号身份访问 DLC,所有操作均受 CAM 权限与 DLC 数据权限管控,与控制台操作遵循同一套权限体系。

前提条件

在使用 DLC MCP Server 前,请您确保已完成以下准备:
1. 已注册腾讯云账号并完成实名认证。
2. 已开通数据湖计算 DLC 服务。如未开通,请登录 数据湖计算 DLC 控制台 按指引开通。
3. 已在目标地域购买并配置可用的数据引擎(标准引擎或 SuperSQL 引擎),且引擎处于运行中状态。详情请参见 标准引擎配置指引
4. 您的账号(或子账号)已具备 DLC 相关 CAM 权限,且在 DLC 中已授予目标库表的数据权限与目标引擎的使用权限。权限配置详情请参见 DLC 权限管理相关文档。
注意:
DLC 的资源与权限按地域隔离,请在接入后确认所选地域与您的引擎、库表所在地域一致。
子账号使用时,请确保主账号已为其授予必要的 CAM 动作权限,否则 SQL 执行、任务取消等操作将返回无权限报错。

支持的能力

DLC MCP Server 当前提供 21 个工具(Tool),覆盖以下六大能力域:

SQL 执行与结果获取

工具
说明
DLCExecuteQuery
提交只读 SQL / Spark SQL 查询任务(异步),返回任务 ID
DLCDescribeMCPTask
查询任务状态与详情,任务完成后可直接预览结果集
DLCDescribeMCPTaskResult
获取任务完整结果集(单次最多 1000 行,支持分页)

元数据查询

工具
说明
DLCListDatasourceConnections
查询数据源 / Catalog 连接列表
DLCListDatabases
查询数据库列表
DLCListTableNames
查询指定数据库下的表名列表
DLCListTables
查询单表完整元数据(列定义、分区、存储信息等)
DLCDescribeTablePartitions
查询 Hive / Iceberg 表分区信息

数据引擎与资源组

工具
说明
DLCListEngines
查询数据引擎列表
DLCDescribeDataEngine
查询单个数据引擎详情(状态、规格、网络配置等)
DLCDescribeStandardEngineResourceGroups
查询标准引擎资源组

Spark 作业管理

工具
说明
DLCCreateSparkApp
创建 Spark 作业
DLCCreateSparkAppTask
启动 Spark 作业运行
DLCDescribeSparkAppJobs
查询 Spark 作业列表
DLCDescribeSparkAppJob
查询单个 Spark 作业详情

任务运维与性能诊断

工具
说明
DLCDescribeTaskList
查询历史任务列表(支持按引擎、状态、关键字、时间范围过滤)
DLCDescribeTasksAnalysis
Spark 任务性能洞察与诊断(资源抢占、Shuffle 异常、慢任务、数据倾斜、资源不足)
DLCListTaskJobLogName
获取任务日志文件名列表
DLCListTaskJobLogDetail
分页读取任务日志内容

用户与权限

工具
说明
DLCDescribeUserInfo
查询用户详情及权限(工作组、数据权限、引擎权限、行级权限等)
DLCDescribeMCPSubUin
获取当前调用方的子账号 UIN,用于权限自查询

典型使用场景

接入后,您可以直接以自然语言向 Agent 发起以下类型的请求:
帮我查一下 ap-guangzhou 地域下有哪些数据库和表。
在数据引擎上执行 SELECT COUNT(*) FROM db.table,并告诉我结果。
帮我看看任务 xxx 为什么失败了,拉取日志分析根因。
查询我在 ap-chongqing 地域的数据权限和引擎权限,整理成表格。
找出最近执行最慢的 5 个任务,分析是排队久还是计算慢,并给出优化建议。
创建一个 Spark 作业并提交运行,运行完成后告诉我结果。

使用限制与注意事项

使用 DLC MCP Server 时,请您关注以下限制:
1. 地域参数必填:所有工具均须传入地域参数(如 ap-guangzhouap-shanghai),请确保与资源所在地域一致。
2. 异步任务模型:SQL 任务提交后异步执行,需通过任务 ID 轮询获取结果。任务状态轮询频率限制为每秒最多 1 次,建议间隔 3 - 5 秒。
3. 结果集分页:单次查询结果最多返回 1000 行;结果集过大时请通过分页参数获取后续数据,或缩小查询范围。
4. 元数据列举:查询单表元数据时请传入明确的表名进行精准查询,不建议依赖空条件的全量列举。
5. 风险操作确认:创建 / 修改 / 删除 / 启动 Spark 作业、取消运行中任务等变更类操作会实际影响您的云上资源与计费,Agent 执行前应向您明确说明影响范围并征得确认。
6. 诊断数据范围:任务性能诊断仅适用于 Spark 引擎任务。

在 WorkBuddy 中接入

WorkBuddy 已内置腾讯云数据湖计算 DLC 连接器,您可以通过以下步骤快速接入。

步骤一:连接 DLC 连接器

1. 登录 WorkBuddy,在左侧边栏单击 专家·技能·连接器,并且进入连接器管理页面。
2. 在连接器列表中搜索 腾讯云数据湖计算 DLC

3. 单击 + 连接,进入登录控制台指引页面,单击使用腾讯云账号登录,按指引完成控制台登录。

4. 登录完成后,在权限申请页面保持默认全选,单击授权

5. 授权完成后自动跳转回 WorkBuddy 页面,弹窗提示连接器状态变更为“已连接”,即表示接入成功。


步骤二:验证连通性

在 WorkBuddy 对话框中输入以下指令进行验证:
帮我列出 ap-guangzhou 地域下的数据库列表
若正常返回您账号下的数据库清单,即表示 DLC MCP 已成功接入,可以开始使用。

通过密钥鉴权接入

对于不支持账号授权引导的 Agent,可使用腾讯云 API 密钥(SecretId / SecretKey)鉴权接入。

步骤一:获取 API 密钥

1. 登录腾讯云控制台,单击页面右上角的账号头像,在弹出菜单中单击 API 密钥管理

2. API 密钥管理 页面,单击 新建密钥

3. 在创建 SecretKey 页面,妥善保存生成的 SecretId 和 SecretKey。


步骤二:在 Agent 中配置

以 OpenAI Codex 为例:
1. 单击左侧菜单栏的插件,进入插件页面后,单击右上角的齿轮图标。

2. 切换到 MCP 标签页,单击 + 添加服务器,进入连接至自定义 MCP 页面,按下表完成参数配置。

参数
是否必填
配置说明
名称
自定义连接名称,建议填写 DLC,便于后续识别。
类型
选择流式 HTTP(请勿选择 STDIO)。
URL
填写 https://tcmcpserver.cloud.tencent.com/dlc/mcp。
Bearer 令牌环境变量
密钥鉴权方式下无需配置,保持默认置灰状态即可。
标头
单击 + 添加标头,添加以下两行:
• 标头名 X-Auth-SecretId,值为您的 SecretId。
• 标头名 X-Auth-SecretKey,值为您的 SecretKey。
来自环境变量的标头
无需配置,适用于团队统一管理密钥的场景。
3. 单击页面右下角的保存。在 MCP 列表中看到刚保存的服务器,即表示配置成功。
对于无可视化配置页面的 Agent,可在其 MCP 配置文件中写入以下内容完成配置:
{
"mcpServers": {
"dlc-aksk": {
"transport": "streamable-http",
"url": "https://tcmcpserver.cloud.tencent.com/dlc/mcp",
"headers": {
"X-Auth-SecretId": "替换为您的SecretId",
"X-Auth-SecretKey": "替换为您的Secretkey"
}
}
}
}
注意:
不同 MCP 客户端的配置文件位置和字段格式可能略有差异,请以各客户端官方文档为准。
请勿在对话中明文填写腾讯云 SecretId / SecretKey。

常见问题

调用时提示 UnauthorizedOperation.NoEngineCamPermissions 如何处理?

该错误表示当前账号缺少 DLC 相关 CAM 动作权限。请联系主账号管理员在 访问管理 CAM 控制台 为您的账号授予对应 DLC 权限(至少包含 dlc:CreateTask 等执行任务所需动作),并确认您在 DLC 中已被授予目标引擎与库表的使用权限。

SQL 执行返回「仅支持只读 SQL / Spark SQL」如何处理?

DLC MCP Server 当前仅支持只读查询语句。如需执行数据写入、表结构变更等操作,请前往 DLC 控制台数据探索提交任务。

查询结果只有部分数据如何处理?

单次结果返回上限为 1000 行。您可以让 Agent 通过分页参数继续获取后续数据。

任务长时间处于排队状态如何处理?

可能原因包括:目标引擎处于挂起状态(冷启动需要时间)、引擎算力不足或资源组排队。您可以让 Agent 查询引擎状态与任务洞察指标进行归因,或更换为运行中的健康引擎重新提交。