元数据治理连接器

Apache Atlas MCP服务器是一个社区构建的连接器,用于将LLM代理连接到Apache Atlas元数据治理平台,提供搜索、追踪数据血统、浏览术语表和管理分类等功能。

  • by DanMeon
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 DanMeon/apache-atlas-mcp

使用说明

社区建设 MCP(模型上下文协议) 将LLM代理连接到的服务器 阿帕奇阿特拉斯 元数据治理平台。不隶属于Apache软件基金会。

默认情况下为只读。 写入操作(创建/删除实体、管理分类)需要通过以下方式明确选择加入 --write 旗帜或 ATLAS_ALLOW_WRITE=true.

为什么?

Apache Atlas是Hadoop生态系统及其他领域广泛使用的开源元数据治理框架。随着2.4.0版本(2025年1月)打破了2年的差距,2.5.0(RC)增加了PostgreSQL后端支持和Trino提取器,Atlas看到了新的活动。

此MCP服务器允许AI代理:

  • 搜索 整个元数据目录中的数据资产
  • 追踪血统 --了解数据如何从源流向目标
  • 浏览术语表 --查找业务术语和定义
  • 检查类型 --理解元数据模式结构
  • 管理分类 --应用PII、GDPR、机密等治理标签 (写入模式)
  • 创建/删除实体 --修改元数据目录 (写入模式)

快速开始

安装

# Using uv (recommended)
uv add apache-atlas-mcp

# Using pip
pip install apache-atlas-mcp

# Run without installing
uvx apache-atlas-mcp

配置

设置连接到Atlas实例的环境变量:

export ATLAS_BASE_URL=http://your-atlas-server:21000
export ATLAS_USERNAME=your-username
export ATLAS_PASSWORD=your-password

所有配置选项:

变量 默认值 描述
ATLAS_BASE_URL (必填) Atlas服务器URL(例如。, http://localhost:21000)
ATLAS_USERNAME (必填) 身份验证用户名
ATLAS_PASSWORD (必填) 身份验证密码
ATLAS_VERIFY_SSL true 验证SSL证书
ATLAS_TIMEOUT 30 HTTP请求超时(秒)
ATLAS_ALLOW_WRITE false 启用写入操作(创建、删除、分类)

使用Claude Desktop

添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "apache-atlas": {
      "command": "uvx",
      "args": ["apache-atlas-mcp"],
      "env": {
        "ATLAS_BASE_URL": "http://your-atlas-server:21000",
        "ATLAS_USERNAME": "your-username",
        "ATLAS_PASSWORD": "your-password"
      }
    }
  }
}

要启用写入操作,请执行以下操作:

{
  "mcpServers": {
    "apache-atlas": {
      "command": "uvx",
      "args": ["apache-atlas-mcp", "--write"],
      "env": {
        "ATLAS_BASE_URL": "http://your-atlas-server:21000",
        "ATLAS_USERNAME": "your-username",
        "ATLAS_PASSWORD": "your-password"
      }
    }
  }
}

使用Claude代码

# Read-only (default)
claude mcp add atlas-server -- uvx apache-atlas-mcp

# With write operations enabled
claude mcp add atlas-server -- uvx apache-atlas-mcp --write

直接运行

# Read-only (default)
apache-atlas-mcp

# With write operations enabled
apache-atlas-mcp --write

可用工具

只读工具(始终可用)

实体搜索

工具 说明
search_entities 按关键字、类型或分类进行基本搜索
dsl_search 使用Atlas DSL查询语言进行高级搜索
quick_search 快速部分匹配搜索(自动完成风格)
get_entity 按GUID获取完整的实体详细信息
get_entity_by_attribute 通过唯一属性(例如qualifiedName)获取实体
get_entities_bulk 通过GUID获取多个实体

世系

工具 说明
get_lineage 按GUID跟踪上游/下游数据流
get_lineage_by_attribute 按唯一属性跟踪沿袭

分类

工具 说明
get_classifications 列出实体上的所有分类

术语表

工具 说明
list_glossaries 列出所有商业术语
get_glossary 获取包含术语和类别的术语表详细信息
get_glossary_terms 在术语表中列出术语
get_glossary_term 获取术语表术语的完整详细信息

类型定义

工具 说明
get_all_type_definitions 获取完整的Atlas类型系统
get_type_definition 按名称获取特定类型定义
get_entity_type_definition 获取具有所有属性的实体类型

写入工具(必需 --write 或 ATLAS_ALLOW_WRITE=true)

工具 说明
create_entity 创建或更新实体
delete_entity 软删除实体
add_classification 应用分类标签(带有沿袭传播)
remove_classification 从实体中删除分类

建筑

LLM Agent  <-->  MCP Protocol  <-->  Apache Atlas MCP Server  <-->  Atlas REST API v2
                                              |
                                       FastMCP + httpx
                                              |
                                     Apache Atlas Instance
                                     (HBase / PostgreSQL backend)

服务器包装 Atlas REST API v2 使用:

REST API是独立于后端的-无论Atlas使用HBase、Cassandra还是新的PostgreSQL后端(Atlas 2.5.0+),它都能工作。

兼容性

  • 阿帕奇阿特拉斯:2.1.0+(用2.3.2和2.4.0测试)
  • python: 3.11+
  • 认证:HTTP Basic(基于Atlas文件的身份验证、LDAP或AD——都使用Basic HTTP标头)

发展

# Clone the repository
git clone https://github.com/DanMeon/apache-atlas-mcp.git
cd apache-atlas-mcp

# Install dependencies
uv sync --group dev

# Run tests
uv run pytest tests/ -v --cov

# Lint & type check
uv run ruff check src/ tests/
uv run pyright src/apache_atlas_mcp/

许可证

麻省理工学院