Atlan

официальный

Официальный MCP-сервер от Atlan, который позволяет использовать возможности метаданных в ваших 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 Model Context Protocol сервер позволяет вашим AI-агентам взаимодействовать с сервисами Atlan.

Быстрый старт

  1. Создайте API-ключ Atlan, следуя документации.
  2. Выберите один из следующих подходов в зависимости от ваших предпочтений:

[!NOTE] Обязательно замените <YOUR_API_KEY>, <YOUR_INSTANCE> и <YOUR_AGENT_ID> на ваш фактический API-ключ Atlan, URL экземпляра и идентификатор агента (необязательно) в файле конфигурации соответственно.

Установка через Docker

Предварительные требования:

Добавление в 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Получение происхождения (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 — Обход происхождения (lineage)
  • 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

Как это работает

Когда инструменты ограничены:

  1. Скрыты из списков: Ограниченные инструменты не будут отображаться, когда клиенты запрашивают доступные инструменты
  2. Выполнение заблокировано: Если кто-то попытается выполнить ограниченный инструмент, он получит понятное сообщение об ошибке
  3. Ведётся журнал: Все решения о доступе регистрируются для мониторинга и отладки

Без ограничений (по умолчанию)

Если вы не зададите переменную окружения RESTRICTED_TOOLS, все инструменты будут доступны по умолчанию.

Режимы транспорта

Atlan MCP-сервер поддерживает три режима транспорта, каждый из которых оптимизирован для различных сценариев развёртывания. Подробнее о режимах транспорта MCP см. в официальной документации MCP.

Режим транспортаСценарий использованияПреимуществаКогда использовать
stdio (по умолчанию)Локальная разработка, интеграция с IDEПростое, прямое взаимодействиеClaude Desktop, Cursor IDE
SSE (Server-Sent Events)Удалённые развёртывания, веб-браузерыПотоковая передача в реальном времени, совместимость с вебомОблачные развёртывания, веб-клиенты
streamable-httpУдалённые соединения на основе HTTPСтандартный HTTP, совместимость с балансировщиками нагрузкиKubernetes, контейнеризованные развёртывания

Для исчерпывающих инструкций по развёртыванию, примеров конфигурации и лучших практик для продакшена см. наше Руководство по развёртыванию.

Развёртывание в продакшене

  • Разместите образ контейнера Atlan MCP в облаке/на платформе по вашему выбору
  • Убедитесь, что вы добавили все необходимые переменные окружения
  • Выберите подходящий режим транспорта для вашего сценария развёртывания. Для продакшена рекомендуется транспорт SSE (-e MCP_TRANSPORT=sse)
  • Подробные сценарии развёртывания и конфигурации см. в Руководстве по развёртыванию

Удалённая конфигурация MCP

В настоящее время у нас нет общедоступного удалённого MCP-сервера для Atlan.

Вы можете использовать локальный прокси-инструмент 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. Сам Model Context Protocol не зависит от языка, но наша текущая реализация требует Python 3.11+ для работы.

Устранение неполадок

  1. Если Claude Desktop показывает ошибку, похожую на spawn uv ENOENT {"context":"connection","stack":"Error: spawn uv ENOENT\n at ChildProcess._handle.onexit, скорее всего, это эта проблема, когда Claude не может найти uv. Чтобы исправить:
    • Убедитесь, что uv установлен и доступен в вашем PATH
    • Выполните which uv, чтобы проверить путь установки
    • Обновите конфигурацию Claude, указав точный путь к uv, выполнив whereis uv и используйте этот путь