Skip to main content
Glama
Power BI Local MCP

Power BI Local MCP

by togrulh

edit_layout

Change titles and positions of existing ungrouped visuals in a new validated copy while preserving field bindings and filters.

Instructions

Change the titles or positions of existing ungrouped visuals in a new validated copy. Keeps field bindings and filters.

Input Schema

NameRequiredDescriptionDefault
nameYes
pageIdYes
sourceYes
changesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=false; the description adds real value on top by clarifying that changes land in a new validated copy rather than mutating the original, and that field bindings and filters are preserved. It still omits what happens when validation fails and how the resulting copy is identified.

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?

Two sentences, zero filler, and the most decision-relevant fact (a new validated copy is produced) is placed immediately after the action statement. Nothing needs trimming.

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

Completeness2/5

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

For a tool with four required parameters, no output schema, and zero schema description coverage, the description covers behavior but not inputs. An agent can infer the operation but not how to supply source, name, or pageId, or that at most 30 change entries are allowed, so it is not complete enough to call reliably without reading the schema closely.

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

Parameters2/5

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

Schema description coverage is 0% and all four top-level parameters are required, yet the description never explains what "source" versus "name" mean, nor that "changes" carries per-visual id/title/position entries and that pageId scopes the page. Only the title/position concepts are echoed, leaving the most consequential identifiers undocumented.

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

Purpose4/5

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

The description states a concrete verb+resource pair ("Change the titles or positions of existing ungrouped visuals") and adds a material scope detail: the edit happens in "a new validated copy." That is enough to separate it from siblings like create_dashboard or validate_report, though the qualifier "ungrouped" is left undefined.

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

Usage Guidelines3/5

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

Usage is implied by the scope restriction to "existing ungrouped visuals," which tells the agent this is not for creating or grouping visuals. However, there is no explicit when-to-use/when-not guidance, no prerequisites (e.g., that source and name identify the origin and the new copy), and no named alternative tool.

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