Skip to main content
Glama
HorizunGroup

Horizun PBI MCP

Official
by HorizunGroup

pbi_convert_pbix_to_pbip

Convert Power BI .pbix files to .pbip projects (PBIR + TMDL), extracting reports and serializing the model via Power BI Desktop. Handles single files or folders recursively, preserving originals.

Instructions

Convierte uno o varios .pbix en proyectos .pbip (PBIR + TMDL).

El informe sale del propio archivo: si el .pbix ya guarda PBIR se copia tal cual, y si trae el formato heredado se traduce pagina a pagina.

El modelo NO se puede leer del archivo (es un backup comprimido del motor), asi que se ABRE EL .pbix EN POWER BI DESKTOP y se serializa a TMDL desde ahi. Cuenta con eso: cada archivo tarda lo que tarde Desktop en cargarlo. Si el informe ya esta abierto se reutiliza esa sesion; si lo abre esta tool, lo cierra al terminar (close_desktop). El .pbix original nunca se modifica.

path: un .pbix o una CARPETA (recursive incluye subcarpetas). out_dir: carpeta donde crear el proyecto; se crea una subcarpeta por informe. Los dos son obligatorios y esos son sus nombres: pbix_path y output_dir NO existen como alias, porque un parametro obligatorio del contrato congelado no se puede sustituir por otro nombre. include_model=false genera solo la mitad del informe, sin tocar Desktop. dataset_connection_string es obligatorio para informes con conexion en vivo (los que no llevan modelo propio).

Devuelve, por archivo, que se escribio y —lo importante— los avisos y lo que se quedo por el camino (dropped), como los marcadores.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathYes
out_dirYes
overwriteNo
recursiveNo
request_idNo
project_nameNo
close_desktopNo
include_modelNo
desktop_timeoutNo
dataset_connection_stringNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.1

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses non-obvious behavior: the tool opens Power BI Desktop to serialize the model because the .pbix model cannot be read directly, reuses an already-open Desktop session, closes Desktop if it opened it, and never modifies the original .pbix. It also warns about per-file time cost and dropped items. This goes well beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Dense but well organized: it moves from the core purpose to report/model behavior, then to parameter details, and finally to return information. Every sentence adds useful operational context; there is no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is nearly complete for a complex tool with external side effects: it covers inputs, Desktop interaction, session reuse, non-destructiveness, live-connection requirements, and return contents. The main gap is that overwrite and desktop_timeout behavior are left to be inferred from schema defaults.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description carries the parameter-documentation burden. It explains path, out_dir, recursive, include_model, close_desktop, and dataset_connection_string, and even warns that pbix_path/output_dir aliases do not exist. However, it leaves overwrite, project_name, request_id, and desktop_timeout undocumented, so the coverage is strong but not complete.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence states the operation precisely: converting one or more .pbix files into .pbip projects (PBIR + TMDL). It explains what happens to the report and the model, which distinguishes it from inspection or project-creation siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives strong context for invocation: path accepts file or folder, recursive covers subfolders, out_dir creates one subfolder per report, include_model=false avoids touching Desktop, and dataset_connection_string is required for live connections. It does not explicitly name sibling alternatives or give a when-not-to-use rule, but the guidance is clear and practical.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools