社区建设 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 使用:
- FastMCP 用于MCP协议处理
- httpx 用于异步HTTP通信
- Pydantic 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/许可证
麻省理工学院
