/ Каталог / Песочница / mcp-engine-public
● Сообщество maxanatsko ⚡ Сразу

mcp-engine-public

автор maxanatsko · maxanatsko/mcp-engine-public

Chat with your Power BI model — read schema, run DAX, create measures, manage relationships — all locally, no cloud round-trip.

MCP Engine (mcp-engine-public) by Maxim Anatsko connects to a local Power BI Desktop instance. Read model structure, run DAX queries, create and modify measures, and manage relationships via natural language. Runs locally (Windows/macOS) with zero telemetry.

Зачем использовать

Ключевые функции

Живое демо

Как выглядит на практике

engine-public.replay ▶ готово
0/0

Установка

Выберите клиент

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "engine-public": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/maxanatsko/mcp-engine-public"
      ],
      "_inferred": true
    }
  }
}

Откройте Claude Desktop → Settings → Developer → Edit Config. Перезапустите после сохранения.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "engine-public": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/maxanatsko/mcp-engine-public"
      ],
      "_inferred": true
    }
  }
}

Cursor использует ту же схему mcpServers, что и Claude Desktop. Конфиг проекта приоритетнее глобального.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "engine-public": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/maxanatsko/mcp-engine-public"
      ],
      "_inferred": true
    }
  }
}

Щёлкните значок MCP Servers на боковой панели Cline, затем "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "engine-public": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/maxanatsko/mcp-engine-public"
      ],
      "_inferred": true
    }
  }
}

Тот же формат, что и Claude Desktop. Перезапустите Windsurf для применения.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "engine-public",
      "command": "TODO",
      "args": [
        "See README: https://github.com/maxanatsko/mcp-engine-public"
      ]
    }
  ]
}

Continue использует массив объектов серверов, а не map.

~/.config/zed/settings.json
{
  "context_servers": {
    "engine-public": {
      "command": {
        "path": "TODO",
        "args": [
          "See README: https://github.com/maxanatsko/mcp-engine-public"
        ]
      }
    }
  }
}

Добавьте в context_servers. Zed перезагружается автоматически.

claude mcp add engine-public -- TODO 'See README: https://github.com/maxanatsko/mcp-engine-public'

Однострочная команда. Проверить: claude mcp list. Удалить: claude mcp remove.

Сценарии использования

Реальные сценарии: mcp-engine-public

Write DAX without memorizing syntax

👤 Power BI analysts new to DAX ⏱ ~15 min intermediate

Когда использовать: You know what you want in English; you don't want to debug CALCULATE for an hour.

Предварительные требования
  • Power BI Desktop with a model open — Launch Power BI Desktop and open your .pbix
  • MCP Engine installed and connected — See mcpengine.dev — installer under 5 min
Поток
  1. Orient the model
    List the tables in the open model and key measures.✓ Скопировано
    → Model map
  2. Write the measure
    Create a DAX measure 'YoY Revenue' that returns current revenue minus same period prior year, using Date[Date] for time intelligence.✓ Скопировано
    → DAX + creation confirmation
  3. Validate
    Run the measure over 2024 vs 2025 and spot-check 3 rows.✓ Скопировано
    → Numbers that look right

Итог: A working measure with validation, not a guess.

Подводные камни
  • Time intelligence requires a properly marked date table — Verify Date table is marked as a date table first
  • Model calculations differ between DirectQuery and Import — Be aware of your storage mode; DirectQuery imposes DAX restrictions

Auto-document an existing Power BI model

👤 Analysts inheriting a .pbix ⏱ ~25 min beginner

Когда использовать: The original author is gone and the model has 40 tables of mystery.

Поток
  1. Dump structure
    Dump the model: every table's role, every measure's DAX, every relationship.✓ Скопировано
    → Full structural listing
  2. Write prose docs
    Write a one-page explanation of this model for a new analyst: what it reports on, main tables, key measures.✓ Скопировано
    → Human-readable model doc

Итог: Useful documentation without reading every measure yourself.

Сочетать с: filesystem

Refactor measures to follow naming + modeling conventions

👤 Teams standardizing Power BI practices ⏱ ~30 min intermediate

Когда использовать: Measures are named inconsistently (e.g. 'Total Sales' vs 'SumSales').

Поток
  1. Find violations
    List measures that don't follow the naming convention '<Verb> <Subject> [<Modifier>]'.✓ Скопировано
    → Violation list
  2. Rename safely
    Propose renames; list any visuals or calculated tables that reference each old name.✓ Скопировано
    → Rename plan with dependencies

Итог: A consistent measure catalog with broken references caught before you hit Apply.

Комбинации

Сочетайте с другими MCP — эффект x10

engine-public + filesystem

Export model documentation as a Markdown file alongside the .pbix

Document the model and save as ~/Docs/PBI/sales-model.md next to sales.pbix.✓ Скопировано
engine-public + postgres

Cross-check PBI measures against raw Postgres queries

PBI says Q1 revenue is $4.2M. Run the same query on the source Postgres DB and tell me if there's a discrepancy.✓ Скопировано

Инструменты

Что предоставляет этот MCP

ИнструментВходные данныеКогда вызыватьСтоимость
get_model_structure (none) Session start free (local)
run_dax query: str Ad-hoc DAX query free (local)
create_measure table, name, expression Add new measure free (write)
update_measure table, name, expression Modify existing free (write)
manage_relationship from_table, from_col, to_table, to_col, action: create|delete|update Schema changes free (write)

Стоимость и лимиты

Во что обходится

Квота API
None — local only
Токенов на вызов
Model dumps can be large; focus queries
Деньги
Proprietary license with permitted personal + commercial use (see mcpengine.dev/license)
Совет
Ask for specific tables rather than a full model dump on complex reports.

Безопасность

Права, секреты, радиус поражения

Хранение учётных данных: None required — uses PBI Desktop's session
Исходящий трафик: Zero telemetry claimed; all local to PBI Desktop

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

Частые ошибки и исправления

No Power BI instance found

Ensure Power BI Desktop is running with a report open; the MCP connects to the local port it exposes.

Проверить: Check Task Manager for msmdsrv process
DAX error: Column not found

Table/column reference is case-sensitive and must match exactly. Use the model structure dump to get names right.

Проверить: get_model_structure
Changes don't persist after closing PBI

PBI Desktop doesn't auto-save — Ctrl+S after each batch of changes.

Проверить: Title bar shows no asterisk

Альтернативы

mcp-engine-public в сравнении

АльтернативаКогда использоватьКомпромисс
Tabular Editor 3 (scripting)You want a full scripting environment for PBI/SSAS modelsPaid; no MCP surface
DAX StudioYou only need a DAX query toolNo write operations; no AI layer

Ещё

Ресурсы

📖 Читать официальный README на GitHub

🐙 Открытые задачи

🔍 Все 400+ MCP-серверов и Skills