Пропустите установку. Заработает меньше чем за 2 минуты.
Начните бесплатный период на cloud.anythingmcp.com, добавьте Metabase одним кликом и направьте свой ИИ-клиент (Claude, ChatGPT, Copilot или Cursor) на сгенерированный MCP-эндпоинт. Без Docker, без git clone, без опыта разработки.
Кратко
Работайте с Metabase, своим или Metabase Cloud, из любого AI-агента: поиск и запуск сохранённых вопросов и карточек дашбордов, запросы SQL или MBQL, метаданные баз данных, таблиц и полей, просмотр коллекций, создание и изменение вопросов, дашбордов и коллекций. API-ключ с правами одной группы Metabase.
Попробуй спросить
Примеры промптов для Metabase
Кликни по промпту — он скопируется. Вставь в Claude, ChatGPT, Cursor, Gemini, Copilot или OpenClaw и запусти через этот коннектор.
Claude — это AI, он может ошибаться. Проверяйте ответы.
💡 Без установки? Используйте cloud.anythingmcp.com напрямую. Войдите, нажмите Connectors → Metabase, вставьте учётные данные, создайте MCP API key, и готово. Без Docker, без
git clone, без локального сервера.
Metabase
Работайте с Metabase, своим или Metabase Cloud, из любого AI-агента: поиск и запуск сохранённых вопросов и карточек дашбордов, запросы SQL или MBQL, метаданные баз данных, таблиц и полей, просмотр коллекций, создание и изменение вопросов, дашбордов и коллекций. API-ключ с правами одной группы Metabase.
Настройка
Настройка занимает около 3 минут. Нужен экземпляр Metabase (свой или Metabase Cloud) и администратор, который может создать API-ключ.
- Укажите в
METABASE_URLадрес, по которому вы открываете Metabase, напримерhttps://metabase.example.comилиhttps://yourcompany.metabaseapp.com, без/apiи без косой черты в конце. - Как администратор откройте Admin settings, Settings, Authentication, API keys, нажмите Create API key, задайте имя и группу. Ключ действует с правами этой группы: для чтения достаточно права просмотра коллекций и права запросов к нужным базам данных; для создания и изменения контента нужен доступ curate. Чтение, доступное только администраторам, например
metabase_list_users, требует группы Administrators. - Скопируйте ключ (он показывается один раз) в
METABASE_API_KEY. Он отправляется в заголовкеx-api-key. - Установите коннектор и вызовите
metabase_get_current_user: он покажет учётную запись, от имени которой действует ключ, и подтвердит адрес и ключ.
Что он читает: контент через metabase_search (вопросы, модели, метрики, дашборды, коллекции, таблицы, базы данных, сегменты, при желании также SQL-текст нативных вопросов или корзину), коллекции и их содержимое, сохранённые вопросы, модели и метрики с запросом за ними, дашборды с вкладками, фильтрами и карточками, а также недавние и самые популярные элементы. Подключённые к Metabase базы данных со схемами, таблицами и полями (данные подключения не возвращаются) и закэшированные значения категориальных полей для фильтров. Пользователей и группы прав.
Что он запускает: metabase_run_card запускает сохранённый вопрос или модель, фильтры задаются в parameters; metabase_run_dashboard_card запускает одну карточку дашборда со значениями фильтров дашборда. metabase_run_native_query выполняет SQL на диалекте базы данных, с переменными {{name}} через template_tags и parameters; metabase_run_query выполняет MBQL-запрос, собранный из id таблиц и полей. Ничего не сохраняется. AI сначала отвечает сохранёнными вопросами и пишет собственные запросы, только если ничего не подходит.
Что он записывает: metabase_create_card сохраняет новый вопрос, модель или метрику в коллекции или прямо в дашборде, metabase_update_card изменяет их, metabase_create_dashboard создаёт пустой дашборд, metabase_update_dashboard меняет название, фильтры, вкладки или карточки. Его список dashcards заменяет все карточки, поэтому AI сначала читает дашборд, сохраняет существующие карточки с их id и добавляет новые с отрицательным id на сетке из 24 колонок. metabase_create_collection и metabase_update_collection создают, переименовывают и перемещают коллекции.
Отключено при установке: ничего, все инструменты включены. Инструментов удаления нет: архивирование вопроса, дашборда или коллекции через инструменты обновления переносит их в корзину, откуда их можно восстановить с archived false.
Форматы данных: результаты запросов приходят как data.cols (name, display_name, base_type, например type/Integer или type/DateTime) и data.rows (массивы в порядке колонок) вместе с row_count. Даты в формате ISO 8601 в часовом поясе отчётов экземпляра. Id баз данных, таблиц, полей, вопросов и дашбордов целые числа; верхняя коллекция называется root. type карточки: question, model или metric; в поиске и в содержимом коллекций модель отображается как dataset.
Постраничный вывод: metabase_search, metabase_list_collection_items и metabase_list_users принимают limit и offset и возвращают total. Остальные списки отдают всё сразу. metabase_get_database_metadata для больших баз данных бывает очень объёмным; metabase_list_schema_tables и metabase_get_table_metadata легче.
Ограничения: инструменты запросов возвращают не более 2 000 строк, это лимит API для произвольных результатов, поэтому AI агрегирует или фильтрует в самом запросе, а не листает сырые строки. Нативный запрос выполняется через подключение к базе данных, которое использует Metabase: для баз, которые никогда не должны меняться, настройте в Metabase пользователя базы данных только для чтения.
Частые ошибки: неудачный запрос возвращается со status: failed и сообщением базы данных в error и сообщается как неудачный вызов. 401 означает неверный или удалённый ключ. 403 означает, что у группы ключа нет нужного права (доступ к данным, curate или admin). 404 означает неверный id или адрес без маршрутов /api: проверьте METABASE_URL.
Коннектор не удаляет контент окончательно, не меняет пользователей, группы и права и не создаёт и не редактирует подключения к базам данных.
Предварительные требования: METABASE_URL, METABASE_API_KEY
Локальная установка коннектора
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
Откройте http://localhost:3000/connectors/store, выберите Metabase и введите переменные, перечисленные в Предварительных требованиях.
Доступные инструменты
| Tool | What it does |
|---|---|
metabase_get_current_user | The account the API key acts as: id, name, e-mail, whether it is an admin, and its group memberships |
metabase_list_users | People in Metabase (admin only): id, name, e-mail, active state, groups, last login |
metabase_list_permission_groups | Permission groups (All Users, Administrators and custom groups) with their member count |
metabase_list_databases | Databases connected to Metabase: id, name, engine (postgres, bigquery-cloud-sdk, snowflake, ...), sync state. include=tables also lists… |
metabase_get_database | One database: name, engine, time zone, sync schedule and, with include=tables, its tables |
metabase_get_database_metadata | Full metadata of a database: every table with its fields (id, name, display name, base and semantic type, foreign key target) |
metabase_list_database_schemas | Schema names of one database (for example public or analytics), for metabase_list_schema_tables |
metabase_list_schema_tables | Tables of one schema of a database: id, name, display name, description, entity type, row count estimate |
metabase_get_table_metadata | A table with its fields (id, name, display name, base type, semantic type such as type/PK, type/FK, type/Category, foreign key targets)… |
metabase_get_field_values | Distinct values Metabase has cached for a category field (up to 1000), useful for filter values |
metabase_list_cards | Saved questions, models and metrics: id, name, type (question, model, metric), display, collection, description, the query behind it… |
metabase_get_card | One saved question, model or metric: name, description, collection, display, the query (dataset_query: native SQL or MBQL), parameters and… |
metabase_run_card | Run a saved question (or model) and return its result: data.cols (column names and types), data.rows (rows as arrays), row_count |
metabase_list_dashboards | Dashboards: id, name, description, collection, creator and last edit |
metabase_get_dashboard | One dashboard with its tabs, filters (parameters) and cards (dashcards): each dashcard has its id, card_id, the card, position and… |
metabase_run_dashboard_card | Run one card of a dashboard with the dashboard's filter values and return its result rows (data.cols, data.rows) |
metabase_list_collections | Collections (folders for questions, models and dashboards): id, name, location (path of parent ids), personal owner, archived flag |
metabase_get_collection | One collection: name, description, location, authority level (official), personal owner |
metabase_list_collection_items | What a collection contains: questions (card), models (dataset), metrics, dashboards, sub-collections, with id, name, model, description and… |
metabase_search | Search Metabase content by name and description: questions (card), models (dataset), metrics, dashboards, collections, tables, databases… |
metabase_run_native_query | Run a SQL (native) query on a connected database without saving it, with the permissions of the API key's group |
metabase_run_query | Run any dataset query without saving it: an MBQL query built from table and field ids ({"database": 1, "type": "query", "query"… |
metabase_get_recent_items | Items the API key's account recently viewed (views) or picked in the data picker (selections): questions, dashboards, tables, collections… |
metabase_get_popular_items | The most viewed dashboards, questions and tables of the instance, for "what do people use most" |
metabase_create_card | Save a new question, model or metric in a collection. dataset_query is the query (native SQL or MBQL, as in metabase_run_query); display is… |
metabase_update_card | Change a saved question: name, description, query, chart type and settings, collection, or archive it (archived true moves it to the trash… |
metabase_create_dashboard | Create an empty dashboard in a collection |
metabase_update_dashboard | Change a dashboard: name, description, collection, filters, tabs, archive state, or its cards. dashcards REPLACES the whole card list: read… |
metabase_create_collection | Create a collection (folder), optionally inside another one |
metabase_update_collection | Rename a collection, change its description, move it under another parent, or archive it (archived true moves it and its content to the… |
Примеры запросов
- «Найди сохранённый вопрос о ежемесячной выручке и запусти его за последние 12 месяцев.»
- «Какие дашборды в нашем Metabase смотрят чаще всего? Перечисли их вместе с коллекцией.»
- «Запусти карточки дашборда Sales overview с фильтром региона EMEA и кратко опиши цифры.»
- «Напиши SQL-запрос к таблице orders, который считает заказы по странам за этот год, и покажи результат.»
- «Сохрани только что выполненный запрос как вопрос со столбчатой диаграммой в коллекции Marketing.»
Следующие шаги
Это руководство помогло?