Marmot — скилл для каталога данных

Marmot

Скилл учит агента искать таблицы, смотреть lineage и словарь терминов в вашем каталоге данных Marmot через CLI, REST и MCP.

  • 627 ★ репозитория
  • Последний коммит
  • MIT
СкиллОфициальный

Широкий доступ

Почему такой уровень

  • Агент получает токен или ключ API с вашими правами в каталоге и может править описания, теги и владельцев, а команда `marmot assets delete` удаляет активы
  • Инструмент query_data выполняет SQL по источникам данных под вашей учетной записью, строки попадают в диалог с моделью
  • Вход через marmot login регистрирует токен в хранилище учетных данных Docker для хоста экземпляра
Все причины и проверки

marmotdata/marmot

Установка

Работает в

В терминале, через SkillFoxx CLI

npx skillfoxx add skills/marmot

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • Агент получает токен или ключ API с вашими правами в каталоге и может править описания, теги и владельцев, а команда `marmot assets delete` удаляет активы
  • Инструмент query_data выполняет SQL по источникам данных под вашей учетной записью, строки попадают в диалог с моделью
  • Вход через marmot login регистрирует токен в хранилище учетных данных Docker для хоста экземпляра

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

Marmot — каталог данных с открытым кодом в одном бинарнике: он описывает таблицы, топики, очереди, API и дашборды вашей организации и хранит связи между ними. Скилл из корня репозитория объясняет агенту, как работать с вашим экземпляром Marmot. Агент ищет активы, смотрит, откуда данные приходят и куда уходят, читает глоссарий и определения терминов, проверяет запуски пайплайнов, находит владельцев и теги, получает метрики. В скилле расписан консольный клиент `marmot`: команды для активов, поиска, глоссария, lineage, запусков, команд, пользователей, ключей API и метрик. Для агента есть отдельный режим: `marmot agent schema` выводит JSON со всеми командами, флагами и кодами выхода, а переменная `MARMOT_READ_ONLY=true` запрещает любые команды, которые не читают. Каждый код выхода понятен агенту без разбора текста. Код 3 означает отсутствие входа, код 4 говорит о запрете доступа, код 9 — о блокировке режимом чтения. У сервера Marmot есть встроенный MCP, и скилл советует предпочитать его. Инструменты discover_data, find_ownership, lookup_term, trace_lineage и другие читают каталог; update_documentation, manage_tags и manage_owners его меняют; query_data выполняет один запрос SQL только на чтение. Перед записью агент обязан назвать правку и актив и дождаться согласия.

Для кого. Для аналитиков и инженеров данных, у которых развернут Marmot и которые хотят спрашивать каталог у кодового агента.

Подходит, если

  • Нужно выяснить, кто владеет таблицей и что значит поле, не открывая веб-интерфейс каталога
  • Перед изменением таблицы агент должен показать, какие потоки и дашборды ниже по цепочке от нее зависят
  • Требуется сверить термин с определением в бизнес-глоссарии и найти активы, к которым он привязан
  • Нужно проверить последние запуски пайплайнов и увидеть, какие объекты они обработали
  • Для отчета нужно выполнить один запрос SQL к источнику каталога и получить строки вместе с контекстом таблиц

Не подходит, если

  • Экземпляра Marmot нет: скилл работает только с развернутым каталогом и входом в него
  • Нужен доступ к самой базе без каталога: для этого подойдет прямой MCP-сервер баз данных
  • Агент не должен ничего менять: тогда включите режим чтения или не подключайте инструменты записи
  • Каталог нужно развернуть и наполнить: скилл описывает работу с готовым каталогом, а установку сервера и плагинов источников разбирает документация Marmot

Пример запроса к агенту

Найди таблицу `orders` в каталоге, покажи, кто ей владеет и какие дашборды зависят от нее ниже по цепочке.

Ограничения

Скилл ничего не делает без развернутого экземпляра Marmot. Вход выполняется командой `marmot login`: она открывает браузер и по OAuth 2.0 PKCE получает токен на 24 часа; вместо входа можно задать `MARMOT_HOST` и `MARMOT_API_KEY`. Запросы SQL доступны только учетным записям с правом `assets:query`, а отказ нельзя обходить переписыванием запроса.

Команда `marmot login` попутно регистрирует токен в хранилище учетных данных Docker для хоста экземпляра, чтобы работали `docker push`, `oras push` и `crane push` для публикации плагинов. Запись в глоссарий, метрики и администрирование есть только в CLI и REST, MCP их не покрывает.

Доступность вашего экземпляра и сайта get.marmotdata.io из России при подготовке карточки не проверялась.

Как отключить. Удалите папку скилла ~/.claude/skills/marmot, а при установке в проект — папку .claude/skills/marmot. Выйдите из каталога командой `marmot logout`: она стирает кэшированный токен и учетные данные реестра, а выданные ключи API отзовите командой `marmot apikeys delete`. Запись marmot из конфигурации MCP тоже стоит убрать.

Частые вопросы

Как поставить скилл Marmot в Claude Code?

Выполните `npx skills add marmotdata/marmot` или, если уже установлен консольный клиент, `marmot skills install`. По умолчанию скилл попадает в ~/.claude/skills/marmot для всех проектов, флаг `--project` кладет его в .claude/skills/marmot, а `--dir` задает свою папку. После обновления клиента команду стоит повторить.

Как войти в Marmot из агента?

Командой `marmot login https://marmot.example.com`: она откроет браузер и получит токен, который живет 24 часа. Для автоматизации задайте `MARMOT_HOST` и `MARMOT_API_KEY` или передайте флаги `--host` и `--api-key`.

Как запретить агенту менять каталог?

Задайте `MARMOT_READ_ONLY=true` или флаг `--read-only`: заблокированная команда завершится с кодом 9 и ничего не изменит. Сервер показывает инструменты записи MCP только тем, у кого есть право на правку, а скилл требует спросить пользователя перед каждой записью.

Какие инструменты MCP есть у Marmot?

Для чтения: discover_data, find_ownership, lookup_term, explore_data_products, explore_teams и trace_lineage. Для записи: update_documentation, manage_tags и manage_owners. Для данных: list_queryable_sources и query_data, они доступны с правом `assets:query`.

Чем Marmot отличается от DBHub?

DBHub открывает агенту базы PostgreSQL, MySQL и другие напрямую. Marmot добавляет к данным каталог: владельцев, глоссарий, lineage, и query_data возвращает строки вместе с тем, что каталог знает о каждой прочитанной таблице.

Обсуждение

Вопросов и отзывов пока нет.

Скиллы
Официальный

MCP-сервер и скиллы от TigerData, с которыми агент пишет схемы и запросы PostgreSQL по актуальной документации и практикам

MCP-серверРасширенный доступ1,9 тыс.Звезды репозитория
Официальный

CLI и MCP-сервер для извлечения структурированных знаний из документов: графы, гиперграфы и поиск по фактам с источниками

CLIРасширенный доступ4,2 тыс.Звезды репозитория
Официальный

Графовая база с ветвями как в git: сервер отдает ее агентам по MCP на /mcp, а встроенный скилл учит агента схемам, запросам и политикам

MCP-серверШирокий доступ1,8 тыс.Звезды репозитория
Официальный

Набор скиллов для работы с данными ALGOPACK Московской биржи: доступ и авторизация, свечи, стакан, объемы и алерты по рынку

СкиллМинимальный доступ4Звезды репозитория
Официальный

Официальный MCP-сервер Tableau: агент ищет источники данных, отправляет к ним запросы и открывает дашборды и метрики Pulse

MCP-серверШирокий доступ361Звезды репозитория
Официальный

Официальный MCP-сервер MongoDB: запросы и агрегации к базам, управление индексами, кластерами Atlas и локальными развертываниями

MCP-серверШирокий доступ1,2 тыс.Звезды репозитория

Коротко о README

Документ представляет Marmot как каталог данных для команд, которым не нужна сложная инфраструктура: один бинарник, веб-интерфейс, полнотекстовый поиск с фильтрами, интерактивный lineage, владельцы и глоссарии. В описании подчеркнуто, что каталог отдает контекст агентам через MCP, REST и интерфейс. Подробности установки описаны в документации на marmotdata.io, там же раздел про скиллы и MCP, а в самом репозитории рядом лежат плагины источников данных и SDK на Go, Python и TypeScript.

Бейдж для README

Исходный SKILL.md

---
name: marmot
description: Interact with a Marmot data catalog instance. Use this skill when the user wants to search for data assets, view lineage, browse glossary terms, check pipeline runs, manage tags or owners, view metrics, query catalogued data, or do anything related to their data catalog. Covers the Marmot CLI, REST API and MCP server.
---

This skill helps you interact with a Marmot data catalog. Marmot catalogs data assets (databases, tables, topics, APIs, dashboards) across an organisation's data stack and tracks lineage between them.

## Setup

The user needs the Marmot CLI installed and authenticated. If not already set up:

```bash
curl -fsSL get.marmotdata.io | sh
marmot login https://marmot.example.com
```

`marmot login` opens a browser for OAuth 2.0 PKCE authentication and caches the token locally. The token expires after 24 hours and carries the user's roles and permissions as claims. Login also registers the token with the Docker credential store for the instance's host, so `oras push`, `crane push` and `docker push` can publish plugins to the registry the instance serves. This goes through the `docker-credential-marmot` helper, a symlink to the marmot binary that `install.sh` creates; if the helper is not on your PATH, login writes the token itself into `~/.docker/config.json` the way `docker login` does. Alternatively, use an API key:

```bash
export MARMOT_HOST=https://marmot.example.com
export MARMOT_API_KEY=<key>
```

Or pass `--host` and `--api-key` as flags on any command.

`marmot skills install` refreshes this skill to match the installed CLI.

## MCP Server

Marmot has a built-in MCP (Model Context Protocol) server. If the user has configured MCP, you can interact with the catalog directly using these tools instead of the CLI:

Reading the catalog:

- **discover_data**: unified data discovery. Supports natural language queries, lookups by ID or MRN (e.g. `postgres://db/schema/table`), filtering by type, provider and tags, and metadata-based queries.
- **find_ownership**: ownership in both directions. "Who owns this asset?", "What does this user own?", "Show all data owned by the data-eng team". Works for assets and glossary terms.
- **lookup_term**: business glossary lookups. Search for terms by name or retrieve definitions.
- **explore_data_products**: curated collections of assets that serve a business purpose, and what they contain.
- **explore_teams**: teams and their members.
- **trace_lineage**: what feeds an asset (upstream) and what it feeds (downstream).

Changing the catalog (only offered to callers allowed to make the change):

- **update_documentation**: write or clear the human-authored description on an asset.
- **manage_tags**: add or remove tags on an asset.
- **manage_owners**: add or remove a user or team as an owner of an asset.

Querying data (only offered to callers with `assets:query`):

- **list_queryable_sources**: the sources that answer queries, searchable by name.
- **query_data**: run one read-only SQL statement against a source. The answer carries the rows plus what the catalog knows about every table read, and the id the query was recorded under.

Ask before calling the tools that change the catalog, even when the user's request implies the change. Say what you are about to write and to which asset.

Сообщить о проблеме

Foxx AIMarmot — скилл для каталога данных
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.