/ Diretório / Playground / mcp-engine-public
● Comunidade maxanatsko ⚡ Instantâneo

mcp-engine-public

por 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.

Por que usar

Principais recursos

Demo ao vivo

Como fica na prática

engine-public.replay ▶ pronto
0/0

Instalar

Escolha seu cliente

~/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
    }
  }
}

Abra Claude Desktop → Settings → Developer → Edit Config. Reinicie após salvar.

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

Cursor usa o mesmo esquema mcpServers que o Claude Desktop. Config de projeto vence a global.

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

Clique no ícone MCP Servers na barra lateral do Cline, depois "Edit Configuration".

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

Mesmo formato do Claude Desktop. Reinicie o Windsurf para aplicar.

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

O Continue usa um array de objetos de servidor em vez de um map.

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

Adicione em context_servers. Zed recarrega automaticamente ao salvar.

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

Uma linha só. Verifique com claude mcp list. Remova com claude mcp remove.

Casos de uso

Usos do mundo real: mcp-engine-public

Write DAX without memorizing syntax

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

Quando usar: You know what you want in English; you don't want to debug CALCULATE for an hour.

Pré-requisitos
  • 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
Fluxo
  1. Orient the model
    List the tables in the open model and key measures.✓ Copiado
    → 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.✓ Copiado
    → DAX + creation confirmation
  3. Validate
    Run the measure over 2024 vs 2025 and spot-check 3 rows.✓ Copiado
    → Numbers that look right

Resultado: A working measure with validation, not a guess.

Armadilhas
  • 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

Quando usar: The original author is gone and the model has 40 tables of mystery.

Fluxo
  1. Dump structure
    Dump the model: every table's role, every measure's DAX, every relationship.✓ Copiado
    → 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.✓ Copiado
    → Human-readable model doc

Resultado: Useful documentation without reading every measure yourself.

Combine com: filesystem

Refactor measures to follow naming + modeling conventions

👤 Teams standardizing Power BI practices ⏱ ~30 min intermediate

Quando usar: Measures are named inconsistently (e.g. 'Total Sales' vs 'SumSales').

Fluxo
  1. Find violations
    List measures that don't follow the naming convention '<Verb> <Subject> [<Modifier>]'.✓ Copiado
    → Violation list
  2. Rename safely
    Propose renames; list any visuals or calculated tables that reference each old name.✓ Copiado
    → Rename plan with dependencies

Resultado: A consistent measure catalog with broken references caught before you hit Apply.

Combinações

Combine com outros MCPs para 10× de alavancagem

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.✓ Copiado
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.✓ Copiado

Ferramentas

O que este MCP expõe

FerramentaEntradasQuando chamarCusto
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)

Custo e limites

O que custa rodar

Cota de API
None — local only
Tokens por chamada
Model dumps can be large; focus queries
Monetário
Proprietary license with permitted personal + commercial use (see mcpengine.dev/license)
Dica
Ask for specific tables rather than a full model dump on complex reports.

Segurança

Permissões, segredos, alcance

Armazenamento de credenciais: None required — uses PBI Desktop's session
Saída de dados: Zero telemetry claimed; all local to PBI Desktop

Solução de problemas

Erros comuns e correções

No Power BI instance found

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

Verificar: 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.

Verificar: get_model_structure
Changes don't persist after closing PBI

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

Verificar: Title bar shows no asterisk

Alternativas

mcp-engine-public vs. outros

AlternativaQuando usarTroca
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

Mais

Recursos

📖 Leia o README oficial no GitHub

🐙 Ver issues abertas

🔍 Ver todos os 400+ servidores MCP e Skills