Skip to main content
Glama

bulk_bind_visuals

Rebind many Power BI visuals in one batch call, isolating failures per visual so partial results are reported instead of aborting the whole operation.

Instructions

BATCH set_visual_fields: rebind MANY visuals in one call instead of one round-trip each. items = JSON array of {page, visual, bindings:[{role,table,field,kind}, ...]}. One result row per target; a failing item never aborts the rest (partial failure is reported per item, never silently all-or-nothing).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
itemsYesJSON array of {page, visual, bindings:[{role,table,field,kind}]}
reportSessionIdYes
Behavior4/5

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

With no annotations, the description carries the burden and delivers key behavioral details: it is a batch operation, partial failures are reported per item, and a failing item never aborts the rest. It also discloses the output shape ('one result row per target'). It could add more about mutation safety (rebinding overwrites) or permissions, but the disclosed behavior is solid and non-contradictory.

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?

Three sentences, each earning its place: the first explains the batch purpose, the second defines the input format, and the third clarifies failure behavior. Front-loaded with 'BATCH set_visual_fields' for immediate clarity. No fluff or repetition.

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

Completeness5/5

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

For a batch binding tool with no output schema, the description covers the essential context: what it does, input structure, and failure semantics. The mention of per-item result rows gives a sense of the return format. Given the tool's moderate complexity, this is sufficient for an agent to select and invoke it correctly.

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?

The description expands on the schema by defining the exact JSON array structure for 'items' ({page, visual, bindings:[{role,table,field,kind}]}), which is more detailed than the schema's brief description. The 'reportSessionId' remains undocumented in both, but it's a standard session identifier. Overall, the added structure meaningfully improves param understanding.

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 description opens with 'BATCH set_visual_fields: rebind MANY visuals in one call' which clearly states the verb (rebind), resource (visuals), and batch scope. It explicitly distinguishes itself from the single-binding sibling tool by noting 'instead of one round-trip each'.

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?

It provides clear context for when to use this tool: when rebinding many visuals to avoid multiple round-trips. It references the alternative 'set_visual_fields' by name. However, it doesn't explicitly state when not to use it (e.g., for a single visual) or mention other batch tools, so it stops short of a full when/when-not comparison.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/cyphonica/powerbi-pbix-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server