Пропустите установку. Заработает меньше чем за 2 минуты.
Начните бесплатный период на cloud.anythingmcp.com, добавьте Microsoft Power BI одним кликом и направьте свой ИИ-клиент (Claude, ChatGPT, Copilot или Cursor) на сгенерированный MCP-эндпоинт. Без Docker, без git clone, без опыта разработки.
AnythingMCP есть в каталоге коннекторов Claude: добавьте его в Claude в один клик (откроется в новой вкладке), затем войдите и выберите, какие MCP-серверы может использовать Claude.
Кратко
Power BI REST API со входом через рабочую учётную запись Microsoft: рабочие области, семантические модели, отчёты, дашборды, потоки данных, шлюзы и приложения, DAX-запросы к модели, источники данных, параметры, история и расписание обновлений, запуск и отмена обновлений. Изменение параметров модели отключено при установке.
Попробуй спросить
Примеры промптов для Microsoft Power BI
Кликни по промпту — он скопируется. Вставь в Claude, ChatGPT, Cursor, Gemini, Copilot или OpenClaw и запусти через этот коннектор.
Claude — это AI, он может ошибаться. Проверяйте ответы.
💡 Без установки? Используйте cloud.anythingmcp.com напрямую. Войдите, нажмите Connectors → Microsoft Power BI, вставьте учётные данные, создайте MCP API key, и готово. Без Docker, без
git clone, без локального сервера.
Microsoft Power BI + Claude
Power BI REST API со входом через рабочую учётную запись Microsoft: рабочие области, семантические модели, отчёты, дашборды, потоки данных, шлюзы и приложения, DAX-запросы к модели, источники данных, параметры, история и расписание обновлений, запуск и отмена обновлений. Изменение параметров модели отключено при установке.
Предварительные требования
Полные инструкции по настройке встроены в коннектор (видны в магазине при выборе коннектора). Требуемые переменные окружения:
MICROSOFT_CLIENT_ID, MICROSOFT_CLIENT_SECRET, MICROSOFT_TENANT_ID
Шаг 1 — Получите учётные данные
Настройка занимает около 10 минут, один раз. Нужна рабочая или учебная учётная запись Microsoft с лицензией Power BI (Free, Pro или Premium Per User) и бесплатная регистрация приложения в Microsoft Entra. В некоторых организациях дать согласие может только администратор.
- Откройте https://entra.microsoft.com, затем Applications, App registrations, New registration. Можно использовать регистрацию приложения другого коннектора Microsoft.
- Поддерживаемые типы учётных записей: обычно выбирают Accounts in this organizational directory only. Power BI работает только с рабочими и учебными учётными записями, не с личными учётными записями Microsoft.
- URI перенаправления: платформа Web,
https://cloud.anythingmcp.com/api/mcp-oauth/callbackна AnythingMCP Cloud или<your AnythingMCP URL>/api/mcp-oauth/callback, если вы размещаете AnythingMCP сами. Он должен совпадать символ в символ, иначе Microsoft ответит AADSTS50011. - API permissions, Add a permission, Power BI Service, Delegated permissions: отметьте
Workspace.Read.All,Dataset.ReadWrite.All,Report.Read.All,Dashboard.Read.All,Dataflow.ReadWrite.All,Gateway.Read.AllиApp.Read.All. Для коннектора только на чтение возьмите вместо нихDataset.Read.AllиDataflow.Read.All. Затем нажмите Grant admin consent, если в вашей организации пользователи не могут давать согласие сами. - Certificates & secrets, New client secret: скопируйте Value секрета (показывается один раз), а не Secret ID.
- Вставьте Application (client) ID в
MICROSOFT_CLIENT_ID, а значение секрета вMICROSOFT_CLIENT_SECRET. Укажите вMICROSOFT_TENANT_IDDirectory (tenant) ID, ваш домен видаcontoso.onmicrosoft.comилиorganizationsдля мультитенантного приложения;commonиconsumersне подходят. Установите коннектор. - На странице коннектора нажмите Authorize with Provider и войдите пользователем с лицензией Power BI. Refresh-токен хранится в зашифрованном виде, access-токены обновляются автоматически. Для проверки запустите
power_bi_list_workspaces.
Scope: коннектор запрашивает https://analysis.windows.net/powerbi/api/.default offline_access. .default выдаёт разрешения Power BI, отмеченные на шаге 4 (добавляйте или убирайте их там и авторизуйтесь заново), а offline_access даёт refresh-токен. Не добавляйте в этот коннектор scopes Microsoft Graph: один токен служит одному API.
Чьи права: ИИ видит ровно то, что вошедший пользователь может видеть в службе Power BI. Модели с безопасностью на уровне строк возвращают только те строки, которые этому пользователю разрешено видеть.
Что он читает: рабочие области и то, у кого и с какой ролью к ним есть доступ; в каждой рабочей области семантические модели (наборы данных), отчёты и их страницы, дашборды и их плитки, потоки данных и импорты файлов .pbix, .rdl, .xlsx или .json; содержимое «Моей рабочей области» (My workspace), у которой нет id рабочей области, через power_bi_list_my_datasets, power_bi_list_my_reports и power_bi_list_my_dashboards; установленные приложения с их отчётами и дашбордами; источники данных и параметры Power Query модели; историю обновлений (у неудачного обновления ошибка лежит в serviceExceptionJson), подробности расширенного обновления и расписание обновлений; транзакции обновления и источники данных потоков данных; локальные шлюзы, которые администрирует пользователь, их источники данных и то, может ли шлюз достучаться до одного из них.
DAX-запросы: power_bi_execute_dax_query отвечает на вопросы цифрами из семантической модели. Для этого нужна настройка клиента Dataset Execute Queries REST API (в новых порталах администрирования Semantic model Execute Queries REST API; Admin portal, Tenant settings, Integration settings) и права Read и Build на модель. Модели в Azure Analysis Services не поддерживаются. Один запрос за вызов, начинается с EVALUATE (можно после DEFINE), только DAX. Чтобы изучить модель, EVALUATE COLUMNSTATISTICS() перечисляет её таблицы и столбцы, а EVALUATE TOPN(5, 'Table') показывает примеры строк. API не перечисляет меры (функции INFO и DMV-запросы отклоняются), поэтому ИИ спрашивает у вас названия мер или берёт те, что показывает отчёт, и предпочитает меры модели суммированию сырых столбцов. impersonated_user_name проверяет, что видит другой пользователь при безопасности на уровне строк, и требует права записи на модель.
Что он записывает: power_bi_refresh_dataset, power_bi_cancel_refresh и power_bi_refresh_dataflow включены при установке. Обновление загружает источники и учитывается в дневном лимите обновлений, поэтому ИИ спрашивает вашего подтверждения перед запуском. Обновление набора данных отвечает 202 без тела; новый запуск появляется в начале power_bi_get_refresh_history со статусом Unknown, пока выполняется. Общая ёмкость (Pro) допускает 8 обновлений в день на модель, включая запланированные, и только notify_option. Параметры вроде type, objects или commit_mode делают обновление расширенным: ему нужна ёмкость Premium, PPU или Fabric, и notify_option передавать нельзя. Отслеживать через power_bi_get_refresh_details и отменять через power_bi_cancel_refresh можно только расширенные обновления.
Отключено при установке: power_bi_update_dataset_parameters, который меняет параметры Power Query модели (например, какой сервер или какой период она загружает) и действует со следующего обновления. Включайте его отдельно, только если ИИ должен это делать.
Форматы данных: списки приходят как {"value": [...]}. Id это GUID. Время в ISO 8601 в UTC. webUrl открывает элемент в службе Power BI. Результаты DAX лежат в results[0].tables[0].rows, ключи столбцов имеют вид Table[Column], вычисляемые столбцы [Name].
Постраничная выдача и фильтры: инструменты списков возвращают всё сразу, кроме power_bi_list_workspaces и power_bi_list_workspace_users, которые листаются через top и skip. Рабочие области фильтруются через OData, например contains(name,'Sales').
Ограничения: DAX-запрос возвращает одну таблицу, не более 100 000 строк или 1 000 000 значений (что наступит раньше) и 15 МБ; каждый пользователь может выполнять 120 запросов в минуту. Power BI REST API ограничивает частоту по пользователю и по клиенту, ответ 429 содержит Retry-After. Ёмкости Premium замедляют обновления при перегрузке, а обновление, ограничиваемое дольше часа, завершается ошибкой.
Частые ошибки: 401 означает, что авторизация истекла или отозвана, либо истёк client secret: при необходимости вставьте новый секрет и снова нажмите Authorize with Provider. 403 PowerBINotAuthorizedException или Unauthorized означает, что у пользователя нет доступа к этой рабочей области или элементу, не хватает разрешения из шага 4 или, для DAX, нет права Build либо настройки клиента. 404 ItemNotFound или PowerBIEntityNotFound означает неверный id или элемент в другой рабочей области. 400 DatasetExecuteQueriesError означает неверный DAX-запрос; сообщение движка объясняет причину. 400 при обновлении означает, что notify_option передан вместе с расширенными параметрами, расширенные параметры использованы на общей ёмкости или обновление уже выполняется.
Коннектор не создаёт, не редактирует и не удаляет отчёты, дашборды и модели, не загружает файлы .pbix и не использует Microsoft Graph. С личными учётными записями Microsoft он не работает.
Шаг 2 — Установите адаптер
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
Шаг 3 — Добавьте коннектор в Claude
URL вашего сервера: в AnythingMCP откройте MCP Servers → сервер, на котором находится этот коннектор, и скопируйте его URL (
https://cloud.anythingmcp.com/mcp/…). Используйте его везде, где в этом руководстве указаноYOUR_SERVER_ID.
Рекомендуемый путь: работает в claude.ai web без редактирования конфигурационных файлов.
- Открой в Claude Customize → Connectors.
- Нажми +, затем Add custom connector.
- Введи название, например
Microsoft Power BI, и URL удалённого MCP-сервераhttps://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID, затем нажми Add. - Нажми Connect и войди в AnythingMCP (OAuth), чтобы разрешить доступ.
Все инструменты ниже появятся в чате: начинайте писать промпты.
Доступные инструменты
| Tool | What it does |
|---|---|
power_bi_list_workspaces | List the workspaces (groups) the signed-in user can access: id, name, isReadOnly, isOnDedicatedCapacity (Premium or Fabric capacity) and… |
power_bi_get_workspace | Read one workspace: name, read-only flag, capacity and default semantic model storage format |
power_bi_list_workspace_users | List who has access to a workspace: email or app id, display name, principalType (User, Group, App) and groupUserAccessRight (Admin… |
power_bi_list_datasets | List the semantic models (datasets) of a workspace: id, name, configuredBy (owner), isRefreshable, isOnPremGatewayRequired… |
power_bi_list_my_datasets | List the semantic models (datasets) in the signed-in user's My workspace |
power_bi_get_dataset | Read one semantic model (dataset) of a workspace: name, owner (configuredBy), isRefreshable, storage mode, whether it needs a gateway or an… |
power_bi_execute_dax_query | Run a DAX query against a semantic model and get the rows back as JSON (results[0].tables[0].rows, keys like "Table[Column]" or "[Measure]") |
power_bi_list_dataset_datasources | List the data sources of a semantic model: datasourceType (Sql, AnalysisServices, SharePointList, Web, File, ...), connectionDetails… |
power_bi_list_dataset_parameters | List the Power Query parameters of a semantic model: name, type, currentValue, isRequired and suggestedValues |
power_bi_get_refresh_history | Refresh history of a semantic model, newest first: requestId, refreshType (Scheduled, OnDemand, ViaApi, ...), startTime, endTime, status… |
power_bi_get_refresh_details | Execution details of one refresh of a semantic model (enhanced refreshes started through the API on Premium, PPU or Fabric capacity)… |
power_bi_get_refresh_schedule | The scheduled refresh of a semantic model: enabled, days, times, localTimeZoneId and notifyOption |
power_bi_list_reports | List the reports of a workspace: id, name, reportType (PowerBIReport or PaginatedReport), the datasetId it reads, description and webUrl |
power_bi_list_my_reports | List the reports in the signed-in user's My workspace: id, name, type, datasetId and webUrl |
power_bi_get_report | Read one report of a workspace: name, type, the datasetId (semantic model) behind it, description and webUrl |
power_bi_list_report_pages | List the pages of a Power BI report: name (the internal id used in URLs), displayName and order |
power_bi_list_dashboards | List the dashboards of a workspace: id, displayName, isReadOnly and webUrl |
power_bi_list_my_dashboards | List the dashboards in the signed-in user's My workspace: id, displayName, isReadOnly and webUrl |
power_bi_list_dashboard_tiles | List the tiles of a dashboard: id, title, the reportId and datasetId each tile comes from, and its size (rowSpan, colSpan) |
power_bi_list_dataflows | List the dataflows (Gen1) of a workspace: objectId, name, description and configuredBy |
power_bi_list_dataflow_transactions | Refresh transactions of a dataflow, newest first: id, refreshType, startTime, endTime and status |
power_bi_list_dataflow_datasources | List the data sources a dataflow reads: type, connection details and gateway ids |
power_bi_list_gateways | List the on-premises data gateways the signed-in user administers: id, name, type and gatewayStatus |
power_bi_list_gateway_datasources | List the data sources configured on a gateway: id, datasourceName, datasourceType, connectionDetails and credentialType |
power_bi_get_gateway_datasource_status | Check whether a gateway can reach one of its data sources |
power_bi_list_apps | List the Power BI apps installed for the signed-in user: id, name, description, publishedBy and lastUpdate |
power_bi_get_app | Read one installed app: name, description, publisher and last update |
power_bi_list_app_reports | List the reports of an installed app (ids are the app copies; datasetId names the semantic model) |
power_bi_list_app_dashboards | List the dashboards of an installed app: id, displayName, isReadOnly and webUrl |
power_bi_list_imports | List the imports (uploads of .pbix, .rdl, .xlsx or .json files) of a workspace: id, name, importState (Publishing, Succeeded, Failed)… |
power_bi_get_import | Read one import of a workspace: its state and the reports and semantic models it created |
power_bi_refresh_dataset | Start a refresh of a semantic model |
power_bi_cancel_refresh | Cancel a running enhanced refresh of a semantic model (one started through the API with enhanced options) |
power_bi_refresh_dataflow | Start a refresh of a dataflow |
power_bi_update_dataset_parameters | Change Power Query parameter values of a semantic model (for example a server name or a date range) |
Примеры запросов
- «Какие семантические модели в рабочей области Sales не смогли выполнить последнее обновление и почему?»
- «По модели, на которой построен отчёт Sales Overview, какой была выручка по регионам в 3 квартале 2026 года?»
- «Покажи таблицы и столбцы модели Finance и пять примеров строк таблицы Orders.»
- «Перечисли страницы отчёта Executive Summary и плитки дашборда KPI.»
- «Покажи сегодняшнюю историю обновлений модели Inventory, а затем запусти обновление, когда я подтвержу.»
FAQ
Работает ли с Claude Code так же как с Claude Desktop? Да, оба указывайте на https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID.
Следующие шаги
- Страница коннектора
- Подключить к ChatGPT
- Подключить к Cursor
- Подключить к Gemini
- Подключить к Meta Muse
- Подключить к Microsoft Copilot
Это руководство помогло?