Skip to content

ADK 的 Atlan MCP 工具

Supported in ADKPythonTypeScript

Atlan MCP 服务器 将你的 ADK 智能体连接到 Atlan,即企业 AI 的上下文层,让你的智能体能够访问组织的情境仓库:你的 AI 智能体高效构建所需的知识、数据和语义。此集成使你的智能体能够搜索和发现企业上下文、遍历端到端血缘、访问受管控的数据定义和术语表、执行 SQL、管理你的元数据图以及确保数据质量,从而使每个智能体任务都基于受信任的组织上下文。

使用场景

  • 搜索和发现企业上下文:使用自然语言在整个技术栈中查找表、列、仪表板、术语表术语和数据产品。

  • 遍历端到端血缘:跨系统追踪数据流的上下游,以在架构变更前了解依赖关系。

  • 访问受管控的数据定义:使用术语表、数据域和认证元数据,将智能体输出建立在受信任的组织上下文中。

  • 管理你的元数据图:直接从你的智能体更新描述、认证资产、管理术语表、定义数据质量规则和调度以及执行 SQL。

前置条件

  • 一个 Atlan 租户
  • 具有访问你所需查询资产权限的 Atlan 账户
  • 本地安装 Node.js(由 mcp-remote 用于桥接到托管的 MCP 服务器)

在智能体中使用

from google.adk.agents import Agent
from google.adk.tools.mcp_tool import McpToolset
from google.adk.tools.mcp_tool.mcp_session_manager import StdioConnectionParams
from mcp import StdioServerParameters


root_agent = Agent(
    model="gemini-flash-latest",
    name="atlan_agent",
    instruction="使用 Atlan 帮助用户搜索、发现和管理企业数据资产",
    tools=[
        McpToolset(
            connection_params=StdioConnectionParams(
                server_params=StdioServerParameters(
                    command="npx",
                    args=[
                        "-y",
                        "mcp-remote",
                        "https://mcp.atlan.com/mcp",
                    ]
                ),
                timeout=30,
            ),
        )
    ],
)
import { LlmAgent, MCPToolset } from "@google/adk";

const rootAgent = new LlmAgent({
    model: "gemini-flash-latest",
    name: "atlan_agent",
    instruction: "使用 Atlan 帮助用户搜索、发现和管理企业数据资产",
    tools: [
        new MCPToolset({
            type: "StdioConnectionParams",
            serverParams: {
                command: "npx",
                args: [
                    "-y",
                    "mcp-remote",
                    "https://mcp.atlan.com/mcp",
                ],
            },
        }),
    ],
});

export { rootAgent };

Note

首次运行此智能体时,浏览器窗口会自动打开以通过 OAuth 请求访问权限。或者,你也可以使用控制台中打印的授权 URL。你必须批准此请求才能允许智能体访问你的 Atlan 租户。

可用工具

工具 描述
semantic_search_tool 使用 AI 驱动的语义理解对所有数据资产进行自然语言搜索
search_assets_tool 使用结构化过滤器和条件搜索资产
traverse_lineage_tool 追踪资产的上下游(来源或消费者)数据流
query_assets_tool 对连接的数据源执行 SQL 查询
get_asset_tool 通过 GUID 或限定名称获取单个资产的详细信息(包括自定义元数据、数据质量检查和 README)
resolve_metadata_tool 按名称或描述发现元数据实体(用户、分类、自定义元数据集、术语表、域、数据产品)
get_groups_tool 列出工作区组及其成员
search_atlan_docs_tool 搜索 Atlan 的产品文档并返回带有来源引用的 LLM 生成答案

资产更新

工具 描述
update_assets_tool 更新资产描述、证书状态、README 或术语
manage_announcements_tool 在资产上添加或删除公告(信息、警告、问题)
manage_asset_lifecycle_tool 归档、恢复或永久清除资产

术语表与域

工具 描述
create_glossaries 创建新的术语表
create_glossary_terms 在术语表中创建术语
create_glossary_categories 在术语表中创建分类
create_domains 创建数据域和子域
create_data_products 创建与域和资产关联的数据产品

数据质量规则

工具 描述
create_dq_rules_tool 创建数据质量规则(空值检查、唯一性、正则表达式、自定义 SQL 等)
update_dq_rules_tool 更新现有数据质量规则
schedule_dq_rules_tool 使用 cron 表达式调度数据质量规则执行
delete_dq_rules_tool 删除数据质量规则

自定义元数据

工具 描述
create_custom_metadata_set_tool 创建带有类型属性的自定义元数据集
add_attributes_to_cm_set_tool 向现有自定义元数据集添加新属性
remove_attributes_from_cm_set_tool 从自定义元数据集中归档(软删除)属性
delete_custom_metadata_set_tool 永久删除自定义元数据集并从所有资产中清除其值
update_custom_metadata_tool 更新一个或多个资产上的自定义元数据值
remove_custom_metadata_tool 从资产中移除自定义数据集的值

Atlan 标签

工具 描述
add_atlan_tags_tool 向一个或多个资产添加 Atlan 标签
remove_atlan_tag_tool 从一个或多个资产移除 Atlan 标签

其他资源