简介
在数据工程和 AI 驱动的自动化时代,Model Context Protocol(MCP)正在改变我们与数据平台交互的方式。云器 MCP-Server 作为一个强大的集成方案,让 AI Agent 能够直接操作数据湖仓、创建任务、管理调度,实现真正的"对话式数据工程"。
本文将深入解析 云器Lakehouse MCP-Server 的架构设计、核心能力,并提供详尽的实战指南,帮助数据工程师和 AI 开发者快速上手这一创新工具。
一、什么是 MCP Server?
1.1 MCP 协议简介
Model Context Protocol(MCP)是 Anthropic 推出的开放协议,旨在标准化 AI 模型与外部工具、数据源之间的交互方式。通过 MCP,AI Agent 可以:
- 访问外部数据源:数据库、API、文件系统等
- 执行操作:创建任务、运行查询、管理资源
- 获取上下文:理解业务逻辑、表结构、依赖关系
1.2 云器 Lakehouse MCP-Server 的定位
云器Lakehouse MCP-Server 是专为云器Lakehouse数据平台设计的 MCP服务。 接入该服务后,您可以直接在第三方AI Agent内通过输入自然语言的方式,直接操作产品功能,而无需关注过多的产品操作细节。
目前该服务提供了40+ 专业工具:覆盖 SQL 查询、任务创建、运维管理、数据质量多个场景。
二、快速开始:配置你的第一个 MCP Server
2.1 环境准备
推荐工具:
- Claude Desktop:原生支持 MCP
- Cherry Studio:开源 AI 客户端,支持 MCP 配置
前置要求:
- 云器lakehouse 账号及 Personal Access Token(PAT)
- 目标工作空间(Workspace)和项目(Project)的访问权限
- Node.js 环境(用于运行
mcp-remote)
2.2 Claude Desktop 配置详解
步骤 1:定位配置文件
在 Claude Desktop 的 Settings 中找到 Local MCP servers 配置入口,点击 Edit Config 打开 claude_desktop_config.json 文件。
配置文件路径通常为:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
步骤 2:配置测试环境
- 在产品内,点击左下角个人信息「Lakehouse MCP」
- Studio产品首页_AI菜单_「MCP Server」

2.3 Cherry Studio 配置
如果使用 Cherry Studio:
-
打开 设置 → MCP → 点击 添加服务器
-
配置如下:
- 名称:
Clickzetta MCP - 类型:
可流式传输的 HTTP (streamableHttp) - URL:
https://cn-shanghai-alicloud-mcp.clickzetta.com/mcp - 请求头(每行一个):
- 名称:
2.4 验证配置
重启 Claude Desktop 或 Cherry Studio,在对话框中输入:
如果返回文件夹列表,说明配置成功!
三、工具列表介绍
| 工具名称 | 功能描述 |
| execute_read_query | 执行只读SQL查询并返回结果,支持自动结果限制。支持SELECT、DESCRIBE/DESC、SHOW、EXPLAIN等语句。适合临时查询、数据探索、快速验证等场景 |
| execute_write_query | 执行写操作SQL语句(INSERT/UPDATE/DELETE/CREATE/DROP等)。支持数据修改、对象创建/删除、权限管理等操作 |
| create_dqc_rule | 创建并可选触发DQC(数据质量检查)规则。支持手动(REST)、定时(PLAN)、任务关联(SCHEDULE_TASK)三种触发方式。支持内置指标和自定义SQL |
| create_task | 在指定文件夹中创建新的数据任务。支持多种任务类型:SQL、Python、Shell、数据集成、实时同步等 |
| create_folder | 在项目工作空间中创建新的文件夹,用于组织和管理任务 |
| list_folders | 列出项目中的文件夹,支持过滤和分页。可列出根文件夹、子文件夹、按名称搜索或按类型过滤 |
| list_tasks | 列出指定文件夹中的所有任务(包括草稿/未提交任务)。需要与list_folders配合使用以获取完整任务列表 |
| save_non_integration_task_content | 保存非数据集成任务的内容(如SQL脚本、Shell脚本、Python代码等)。返回Studio IDE直达链接 |
| save_integration_task_content | 保存数据集成任务配置。用于创建或更新源到目标的数据同步任务。重要:目标表必须预先存在 |
| save_task_configuration | 保存任务的调度配置(依赖关系、重试策略、超时、调度信息等)。提供合理默认值,仅需覆盖必要参数 |
| submit_task | 提交任务到调度系统。需要用户确认。提交前必须保存任务配置和内容 |
| get_task_detail | 获取任务的详细信息,包括元数据、内容和配置。返回Studio IDE直达链接 |
| desc_semantic_view | 以YAML格式返回语义视图定义 |
| query_semantic_view | 使用给定的指标、维度、过滤条件、排序来查询语义视图 |
| index_semantic_view_meta | 为语义视图元数据创建向量索引(包括指标名、维度名),帮助改进语义视图查询生成 |
| index_semantic_view_sample_values | 为语义视图相关的示例值创建倒排索引(维度和过滤器的值),帮助改进查询生成 |
| check_semantic_view_status | 检查语义视图是否存在,以及元数据索引和示例值索引是否存在 |
| drop_semantic_view_index | 删除语义视图的元数据索引和示例值索引 |
| create_semantic_view | 从YAML定义创建语义视图。必须先使用get_all_tables_metadata获取表元数据,再使用Prompt生成YAML |
| answer_question_with_semantic_view | 根据自然语言问题查询语义视图。接收LLM分析后的结构化查询参数并执行查询 |
| generate_and_execute_semantic_view_query | 执行语义视图查询(接收JSON查询参数)。是底层工具,适合已有结构化查询参数的场景 |
| add_dimensions_to_semantic_view | 向语义视图添加新维度。需配合Prompt使用 |
| remove_dimensions_from_semantic_view | 从语义视图删除维度。需配合Prompt使用 |
| add_tables_to_semantic_view | 向语义视图添加新表。需配合Prompt使用 |
| remove_tables_from_semantic_view | 从语义视图删除表。会检查外键依赖,防止破坏关系 |
| get_backfill_task_detail | 获取补数(backfill/complement)任务的详细信息和配置 |
| get_schedule_task_relation | 获取调度任务的上下游依赖关系树,可配置层级深度 |
| get_task_instance_relation | 获取任务实例的上下游依赖关系树,可配置层级深度 |
| get_current_datetime | 获取当前日期时间,支持多种格式(Unix时间戳、MySQL datetime、ISO格式等)。支持多时区 |
| parse_datetime | 解析并转换不同格式的日期时间。支持自动检测输入格式 |
| list_schedule_task_instance | 列出符合过滤条件的任务实例(分页)。支持按项目、任务类型、状态、计划时间等过滤。仅返回单页,需循环调用 |
| list_execution_records | 列出特定任务实例的执行记录(分页)。支持指定项目ID和分页参数 |
| list_data_sources | 检索项目中所有可用的数据源。包括源名称、类型、连接信息等元数据。仅返回单页,需循环调用 |
| list_namespaces | 检索特定数据源中可用的命名空间(schema/database)列表 |
| list_metadata_objects | 列出数据源命名空间中的所有数据对象(表/视图/集合)及其元数据 |
| get_metadata_detail | 获取特定数据对象的详细元数据信息(列名、数据类型、约束等) |
| list_backfill_tasks | 列出补数(backfill/complement)任务。支持按计划时间、状态、提交人等过滤。仅返回单页,需循环调用 |
| list_backfill_instances | 列出特定补数任务关联的实例。支持分页和按状态过滤。仅返回单页,需循环调用 |
| execute_task | 异步执行数据任务。自动检测任务中的自定义变量并请求用户提供值。支持所有任务类型,自动轮询状态直到完成 |
| get_task_instance_detail | 获取任务实例的执行状态和详细信息(状态、时间、执行细节、错误信息等)。用于检查已提交任务的状态 |
| get_execution_log_content | 获取任务实例执行记录的日志内容。支持从头部、尾部或按偏移量正向/反向查询日志 |
| recommend_integration_config | 为50+种数据源类型生成完整的数据集成配置。自动处理列映射、类型转换和数据源特定参数。前提:源表存在(自动获取),目标表必须存在 |
联系我们
