powerbi-mcp
powerbi-mcp
Внутренняя служба Node.js для доступа к Power BI MCP. Она предназначена для работы параллельно с приложением Next.js, обычно под управлением PM2, и вызывается только с серверного уровня Next.js.
Этот проект не является копией репозитория Google Ads MCP. Он следует той же идее специализированного бэкенда MCP, но адаптирован для Power BI/Fabric, прямых вызовов JSON-RPC и итерации агента/инструментов, уже проверенной в POC бота PBI.
Что он делает
Вызывает эндпоинт Fabric Power BI MCP с токеном носителя (bearer token) пользователя.
Перечисляет и выполняет инструменты MCP через JSON-RPC.
Обнаруживает рабочие области Power BI и семантические модели для улучшения промптов моделей.
Запускает цикл агента, совместимый с OpenAI, который может вызывать инструменты Power BI MCP.
Предоставляет внутренние HTTP-эндпоинты для бэкенда Next.js.
Поставляется с конфигурацией процесса PM2 под названием
powerbi-mcp.
Related MCP server: Power BI MCP for Claude
Эндпоинты
GET /healthPOST /internal/mcp/toolsPOST /internal/mcp/callPOST /internal/powerbi/catalogPOST /internal/chatPOST /internal/chat/json
Маршруты для совместимости с браузером/прокси также доступны по адресу /api/*:
GET /api/auth/statusGET /api/auth/loginGET /api/auth/callbackGET /api/auth/logoutPOST /api/mcp/toolsPOST /api/mcp/callPOST /api/powerbi/catalogPOST /api/chatPOST /api/chat/json
Все внутренние маршруты принимают токен доступа Power BI пользователя в одной из следующих форм:
Authorization: Bearer <power-bi-access-token>x-powerbi-access-token: <power-bi-access-token>Поле JSON-тела
accessToken
Если настроен INTERNAL_API_KEY, также отправьте:
x-internal-api-key: <your-internal-key>Установка
cd powerbi-mcp
npm install
cp .env.example .env
npm run checkЗаполните .env настройками вашего шлюза, совместимого с LiteLLM/OpenAI.
Для маршрута браузера установите URI перенаправления Azure на обратный вызов прокси Next.js, например:
http://localhost:3000/api/powerbi-mcp/auth/callbackЗапуск локально
npm run devURL службы по умолчанию — http://127.0.0.1:3101.
Запуск с PM2
pm2 start ecosystem.config.js
pm2 statusОжидаемое имя процесса:
powerbi-mcpВстраиваемый маршрут Next.js
Храните файлы маршрутов Next.js вне этого репозитория бэкенда. В этой рабочей области они находятся в соседней папке:
../powerbi-analyst-next-dropin/appСкопируйте эти файлы в реальную директорию ads-next/app:
app/Power_BI_Analyst/page.tsxapp/api/powerbi-mcp/[...path]/route.ts
Затем перейдите по адресу:
/Power_BI_AnalystПрокси Next.js вызывает этот бэкенд по адресу:
http://127.0.0.1:3101/api/*Пример сервера Next.js
Вызывайте это только из серверного маршрута, серверного действия или обработчика API. Не раскрывайте токен доступа Power BI коду на стороне браузера за пределами вашего обычного потока аутентификации.
const response = await fetch("http://127.0.0.1:3101/internal/chat/json", {
method: "POST",
headers: {
"Content-Type": "application/json",
"x-internal-api-key": process.env.POWERBI_MCP_INTERNAL_API_KEY,
"Authorization": `Bearer ${powerBiAccessToken}`
},
body: JSON.stringify({
message: "Show total sales this month vs last month",
history: []
})
});
const data = await response.json();Для потоковых ответов UI вызывайте /internal/chat или /api/chat; он возвращает события, отправляемые сервером (server-sent events):
data: {"token":"..."}
data: [DONE]Примечания
Эта служба поддерживает как пересылку токенов через
/internal/*, так и поток сеанса браузера через/api/auth/*.Привязывайтесь к
127.0.0.1в рабочей среде, если только вы намеренно не помещаете это за границу частной сети.Установите
INTERNAL_API_KEYперед развертыванием, чтобы службу могли использовать только доверенные внутренние вызывающие стороны.
This server cannot be deployed
Maintenance
Related MCP Connectors
- BasedashOAuthcom.basedash
Governed BI MCP. Ask questions of live company data and list workspace sources via OAuth.
Forge designed Power BI projects (.pbip) from your agent, bound to your own semantic model.
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
Official Fibery MCP server: query and update your workspace from any AI client via OAuth.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceThe Fabric-Analytics-MCP server enables AI agents to interact directly with Microsoft Fabric using natural language. It transforms complex data engineering tasks—such as workspace management, data exploration, and job execution—into intuitive, conversational workflows for LLMs like Claude or GitHub11 npm110MIT
- AlicenseNot gradedqualityCmaintenanceMCP server for Microsoft Power BI and Fabric, enabling Claude to discover workspaces, semantic models, generate and execute DAX queries, and retrieve report metadata via device-code authentication.14 npm1MIT
- AlicenseAqualityCmaintenanceAn MCP (Model Context Protocol) server that lets AI agents manage Power BI workspaces, datasets, and refreshes via natural language.112MIT
- AlicenseBqualityBmaintenanceMCP server for Microsoft Fabric REST APIs that enables data engineers and analysts to manage Fabric components using AI assistants.2198 npmAGPL 3.0