Atlan
官方來自 Atlan 的官方 MCP 伺服器,讓你能將中繼資料的力量帶入你的 AI 工具中
你可以用 Atlan MCP 做什麼?
- 搜尋資產 — 使用
search_assets依條件尋找資料資產。 - 透過 DSL 擷取資產 — 使用領域特定語言查詢
get_assets_by_dsl來擷取資產。 - 探索資料血緣 — 使用
traverse_lineage追蹤資產的上游與下游關係。 - 更新資產中繼資料 — 透過
update_assets修改資產的使用者描述與憑證狀態。 - 管理業務詞彙表 — 使用
create_glossaries、create_glossary_categories及create_glossary_terms建立詞彙表、類別與詞彙。 - 治理資料品質規則 — 使用
create_dq_rules、update_dq_rules、schedule_dq_rules及delete_dq_rules建立、更新、排程與刪除資料品質規則。
文件
Atlan MCP 伺服器
[!WARNING] 此本地 MCP 伺服器已棄用。 請改用託管的 Atlan MCP,網址為 mcp.atlan.com/mcp。
本地安裝路徑(Docker、uv 或
pip install atlan-mcp-server)僅處於維護模式 — 無新功能,不保證支援。託管端點是將 Atlan 與 Claude Desktop、Cursor、Codex、Databricks UC 及其他 MCP 用戶端整合的建議方式。請參閱 Atlan MCP 概覽 進行設定。
Atlan 模型上下文協定 伺服器可讓您的 AI 代理程式與 Atlan 服務互動。
快速入門
- 依照 文件 產生 Atlan API 金鑰。
- 根據您的偏好選擇下列其中一種方式:
- 透過 Docker 安裝 - 使用 Docker 容器(建議)
- 透過 uv 安裝 - 使用 UV 套件管理器
[!NOTE] 請務必在設定檔中分別將
<YOUR_API_KEY>、<YOUR_INSTANCE>和<YOUR_AGENT_ID>替換為您實際的 Atlan API 金鑰、執行個體 URL 和代理程式 ID(選用)。
透過 Docker 安裝
先決條件:
- 依照您作業系統的官方 Docker 安裝指南 操作
- 驗證 Docker 是否正在執行:
docker --version
新增至 Claude Desktop
前往 Claude > Settings > Developer > Edit Config > claude_desktop_config.json 並新增:
{
"mcpServers": {
"atlan": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ATLAN_API_KEY=<YOUR_API_KEY>",
"-e",
"ATLAN_BASE_URL=https://<YOUR_INSTANCE>.atlan.com",
"-e",
"ATLAN_AGENT_ID=<YOUR_AGENT_ID>",
"ghcr.io/atlanhq/atlan-mcp-server:latest"
]
}
}
}
新增至 Cursor
開啟 Cursor > Settings > Tools & Integrations > New MCP Server 以包含下列內容:
{
"mcpServers": {
"atlan": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ATLAN_API_KEY=<YOUR_API_KEY>",
"-e",
"ATLAN_BASE_URL=https://<YOUR_INSTANCE>.atlan.com",
"-e",
"ATLAN_AGENT_ID=<YOUR_AGENT_ID>",
"ghcr.io/atlanhq/atlan-mcp-server:latest"
]
}
}
}
透過 uv 安裝
先決條件:
- 安裝 uv:
# macOS/Linux curl -LsSf https://astral.sh/uv/install.sh | sh # Windows (PowerShell) powershell -c "irm https://astral.sh/uv/install.ps1 | iex" # Alternative: if you already have Python/pip pip install uv - 驗證安裝:
uv --version
[!NOTE] 使用 uv 時,
uvx會在每次執行時自動擷取最新版本。如需更可預測的行為,請考慮使用 Docker 選項。
新增至 Claude Desktop
前往 Claude > Settings > Developer > Edit Config > claude_desktop_config.json 以包含下列內容:
{
"mcpServers": {
"atlan": {
"command": "uvx",
"args": ["atlan-mcp-server"],
"env": {
"ATLAN_API_KEY": "<YOUR_API_KEY>",
"ATLAN_BASE_URL": "https://<YOUR_INSTANCE>.atlan.com",
"ATLAN_AGENT_ID": "<YOUR_AGENT_ID>"
}
}
}
}
新增至 Cursor
開啟 Cursor > Settings > Tools & Integrations > New MCP Server 以包含下列內容:
{
"mcpServers": {
"atlan": {
"command": "uvx",
"args": ["atlan-mcp-server"],
"env": {
"ATLAN_API_KEY": "<YOUR_API_KEY>",
"ATLAN_BASE_URL": "https://<YOUR_INSTANCE>.atlan.com",
"ATLAN_AGENT_ID": "<YOUR_AGENT_ID>"
}
}
}
}
可用工具
| 工具 | 說明 |
|---|---|
search_assets | 根據條件搜尋資產 |
get_assets_by_dsl | 使用 DSL 查詢擷取資產 |
traverse_lineage | 擷取資產的譜系 |
update_assets | 更新資產屬性(使用者描述和憑證狀態) |
create_glossaries | 建立詞彙表 |
create_glossary_categories | 建立詞彙表類別 |
create_glossary_terms | 建立詞彙表術語 |
create_dq_rules | 在 Table、View、MaterialisedView 或 SnowflakeDynamicTable 資產上建立資料品質規則(欄位層級、表格層級、自訂 SQL) |
update_dq_rules | 更新現有的資料品質規則(閾值、優先順序、條件等) |
schedule_dq_rules | 使用 cron 表達式排程資產的資料品質規則執行 |
delete_dq_rules | 依 GUID 刪除一或多個資料品質規則 |
query_asset | 在表格/檢視表資產上執行 SQL 查詢 |
工具存取控制
Atlan MCP 伺服器包含一個可設定的工具限制中介層,可讓您控制使用者可以使用哪些工具。這對於實作基於角色的存取控制或在特定環境中限制某些操作非常有用。
限制工具
您可以使用 RESTRICTED_TOOLS 環境變數限制對特定工具的存取。提供應封鎖的工具名稱逗號分隔清單:
Docker 設定
{
"mcpServers": {
"atlan": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"ATLAN_API_KEY=<YOUR_API_KEY>",
"-e",
"ATLAN_BASE_URL=https://<YOUR_INSTANCE>.atlan.com",
"-e",
"ATLAN_AGENT_ID=<YOUR_AGENT_ID>",
"-e",
"RESTRICTED_TOOLS=get_assets_by_dsl_tool,update_assets_tool",
"ghcr.io/atlanhq/atlan-mcp-server:latest"
]
}
}
}
uv 設定
{
"mcpServers": {
"atlan": {
"command": "uvx",
"args": ["atlan-mcp-server"],
"env": {
"ATLAN_API_KEY": "<YOUR_API_KEY>",
"ATLAN_BASE_URL": "https://<YOUR_INSTANCE>.atlan.com",
"ATLAN_AGENT_ID": "<YOUR_AGENT_ID>",
"RESTRICTED_TOOLS": "get_assets_by_dsl_tool,update_assets_tool"
}
}
}
}
可用於限制的工具名稱
您可以限制下列任何工具:
search_assets_tool- 資產搜尋功能get_assets_by_dsl_tool- DSL 查詢執行traverse_lineage_tool- 譜系走訪update_assets_tool- 資產更新(描述、憑證)create_glossaries- 詞彙表建立create_glossary_categories- 類別建立create_glossary_terms- 術語建立create_dq_rules_tool- 資料品質規則建立update_dq_rules_tool- 資料品質規則更新schedule_dq_rules_tool- 資料品質規則排程delete_dq_rules_tool- 資料品質規則刪除
常見使用案例
唯讀存取
限制所有寫入操作:
RESTRICTED_TOOLS=update_assets_tool,create_glossaries,create_glossary_categories,create_glossary_terms,create_dq_rules_tool,update_dq_rules_tool,schedule_dq_rules_tool,delete_dq_rules_tool
停用 DSL 查詢
基於安全或效能原因:
RESTRICTED_TOOLS=get_assets_by_dsl_tool
最小存取權限
僅允許基本搜尋:
RESTRICTED_TOOLS=get_assets_by_dsl_tool,update_assets_tool,traverse_lineage_tool,create_glossaries,create_glossary_categories,create_glossary_terms,create_dq_rules_tool,update_dq_rules_tool,schedule_dq_rules_tool,delete_dq_rules_tool
運作方式
當工具受到限制時:
- 從清單中隱藏:受限工具不會在用戶端請求可用工具時出現
- 封鎖執行:如果有人嘗試執行受限工具,他們會收到明確的錯誤訊息
- 記錄:所有存取決策都會記錄下來,以便監控和偵錯
無限制(預設)
如果您未設定 RESTRICTED_TOOLS 環境變數,預設情況下所有工具都將可用。
傳輸模式
Atlan MCP 伺服器支援三種傳輸模式,每種模式都針對不同的部署場景進行了最佳化。如需 MCP 傳輸模式的更多詳細資訊,請參閱 官方 MCP 文件。
| 傳輸模式 | 使用案例 | 優點 | 使用時機 |
|---|---|---|---|
| stdio(預設) | 本地開發、IDE 整合 | 簡單、直接的通訊 | Claude Desktop、Cursor IDE |
| SSE(伺服器傳送事件) | 遠端部署、網頁瀏覽器 | 即時串流、與網頁相容 | 雲端部署、網頁用戶端 |
| streamable-http | 基於 HTTP 的遠端連線 | 標準 HTTP、負載平衡器友善 | Kubernetes、容器化部署 |
如需全面的部署說明、設定範例和生產環境最佳實務,請參閱我們的 部署指南。
生產環境部署
- 在您選擇的雲端/平台上託管 Atlan MCP 容器映像
- 確保您新增了所有必要的環境變數
- 為您的部署場景選擇適當的傳輸模式。建議在生產環境中使用 SSE 傳輸(
-e MCP_TRANSPORT=sse) - 如需詳細的部署場景和設定,請參閱 部署指南
遠端 MCP 設定
我們目前沒有可供一般使用的 Atlan 遠端 MCP 伺服器。
您可以使用 mcp-remote 本地代理工具將其連接到您的遠端 MCP 伺服器。
這可讓您使用真實的 MCP 用戶端測試與遠端 MCP 伺服器的互動情況。
{
"mcpServers": {
"math": {
"command": "npx",
"args": ["mcp-remote", "https://hosted-domain"]
}
}
}
本地開發
想要本地開發嗎?請查看我們的 本地建置 指南,以取得逐步操作說明!
需要協助?
- 如有任何問題或回饋,請寄送電子郵件至 support@atlan.com
- 您也可以直接建立 GitHub 議題,我們將會為您解答
常見問題
我需要安裝 Python 嗎?
簡答:取決於您的安裝方法。
- Docker(建議):主機上無需安裝 Python。容器包含了所需的一切。
- uv:需要 Python 執行環境,但如果尚未安裝,uv 會自動為您下載並管理 Python 3.11+。
技術細節:Atlan MCP 伺服器是以 Python 應用程式實作。模型上下文協定本身與語言無關,但我們目前的實作需要 Python 3.11+ 才能執行。
疑難排解
- 如果 Claude Desktop 顯示類似
spawn uv ENOENT {"context":"connection","stack":"Error: spawn uv ENOENT\n at ChildProcess._handle.onexit的錯誤,很可能是 這個 問題,即 Claude 找不到 uv。若要修復:- 確保 uv 已安裝並可在您的 PATH 中使用
- 執行
which uv以驗證安裝路徑 - 透過執行
whereis uv更新 Claude 的設定以指向確切的 uv 路徑,並使用該路徑