Skip to main content
Glama

Server Quality Checklist

58%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.15.0

  • Disambiguation3/5

    With 141 tools, there is significant overlap in functionality, especially around measure creation (multiple specialized tools) and Excel imports. While descriptions help distinguish them, an agent could easily pick the wrong tool.

    Naming Consistency4/5

    Most tools follow a consistent 'pbi_verb_noun' snake_case pattern, but there are minor inconsistencies like mixing 'create' and 'add' for similar operations (e.g., pbi_create_measure vs pbi_add_visual) and plural forms (pbi_create_measures).

    Tool Count1/5

    141 tools is far too many for any server. This creates a bloated surface where many tools are either redundant or overly specialized, making it difficult for an agent to navigate.

    Completeness4/5

    The tool set covers a comprehensive range of Power BI operations, from model management to report layout, DAX, and data source handling. Minor gaps exist (e.g., no direct tool for editing visual types beyond conversion), but the coverage is extensive.

  • Average 2.8/5 across 141 of 141 tools scored. Lowest: 1/5.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 5 commits in the last 12 weeks
    • Last stable release on
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    Tool has no description.

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

    Conciseness1/5

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

    Tool has no description.

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

    Completeness1/5

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

    Tool has no description.

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

    Parameters1/5

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

    Tool has no description.

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

    Purpose1/5

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

    Tool has no description.

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

    Usage Guidelines1/5

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

    Tool has no description.

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

  • Behavior1/5

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

    With no annotations, the description should disclose behavioral traits. It only says 'Plan or run validated batch measure creation' without explaining what 'plan' vs 'run' entails, what 'validated' means, or any side effects. This is insufficient for safe invocation.

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

    Conciseness2/5

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

    The description is extremely short but not concise in a helpful way—it omits critical details. It fails to front-load key information about the tool's behavior or parameters.

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

    Completeness1/5

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

    Despite having an output schema, the description does not hint at return values or workflow outputs. For a 'workflow' tool, it lacks context on stages, validation steps, or error handling, making it incomplete.

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

    Parameters1/5

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

    The input schema has 4 parameters with 0% description coverage. The description adds no meaning to parameters like 'apply', 'table', 'measures', or 'overwrite'. The agent must infer usage from names alone.

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

    Purpose2/5

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

    The description 'Plan or run validated batch measure creation' is vague and does not clearly distinguish from sibling tools like pbi_create_measure, pbi_create_measures, or pbi_rename_measure. It lacks specificity about the tool's exact role.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives. For instance, it is unclear whether this workflow replaces or supplements individual measure creation tools.

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

  • Behavior1/5

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

    The description is a single sentence that does not disclose any behavioral traits beyond the basic purpose. Annotations are absent, so the description carries full burden. It fails to mention side effects like modifications to existing tables, refresh behavior, or injection details.

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

    Conciseness2/5

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

    The description is overly concise to the point of being uninformative. It lacks any structure or additional context that would help the agent, such as examples or parameter highlights.

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

    Completeness1/5

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

    Despite having an output schema and moderate complexity with 6 parameters, the description does not explain the output or provide enough context for correct invocation. The agent cannot determine what 'inject' means or what the resulting query will look like.

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

    Parameters1/5

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

    With 0% schema description coverage, the description adds no meaning to the six parameters. It does not explain what 'table', 'excel_path', 'sheet_name', or optional parameters like 'refresh_after' mean, leaving the agent to rely solely on parameter names.

    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 clearly states the tool generates and injects an Excel import Power Query for a table, which is a specific verb-resource combination. However, it does not distinguish from sibling tools like pbi_create_csv_import_query, which perform similar functions for different sources.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives such as pbi_create_csv_import_query or pbi_import_excel_workbook. There is no mention of prerequisites or context for usage.

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

  • Behavior2/5

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

    With no annotations, the description carries the full burden. It only mentions creating/updating without disclosing behavior like what happens if the role exists, required permissions, or side effects. This is insufficient for safe invocation.

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

    Conciseness3/5

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

    The description is extremely concise at five words, but this brevity sacrifices usefulness. It is not structured to highlight key information; it's merely a functional statement.

    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?

    Given four parameters and the existence of an output schema, the description is far too minimal. It does not cover parameter details, return values, or prerequisites, making it incomplete for effective tool usage.

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

    Parameters1/5

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

    Schema coverage is 0%, meaning no parameters are described in the schema titles. The description adds no value for the four parameters (name, overwrite, permission, description). It fails to explain their meanings or constraints, which is a critical gap.

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

    Purpose3/5

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

    The description states 'Create or update a model role,' which is a specific verb-resource pair. However, it does not differentiate from sibling tools like pbi_add_role_member or pbi_list_roles. The term 'model role' is somewhat ambiguous without context, and the description lacks uniqueness.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives, such as when to create vs update, or any prerequisites. The description offers no contextual usage advice.

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

  • Behavior2/5

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

    With no annotations, the description must fully disclose behavior. It only lists three validation areas without stating whether the tool modifies data, what 'collision' means, or what the output format is.

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

    Conciseness3/5

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

    The description is a single sentence, which is concise but lacks structure. It covers a few aspects but omits necessary details, making it borderline under-specified.

    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?

    Given the existence of an output schema, the description still needs to provide behavioral context. It does not explain the validation process, error handling, or return structure, leaving gaps.

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

    Parameters1/5

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

    Schema description coverage is 0%, so the description needs to explain parameters. It does not mention 'include_hidden' or 'validate_expressions', leaving their purpose undocumented.

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

    Purpose3/5

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

    The description states it validates measures, formats, and name collisions, which gives a clear action and resource. However, it does not differentiate from sibling tools like pbi_validate_dax or pbi_detect_name_collisions, leaving scope ambiguous.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives. Does not mention prerequisites, typical use cases, or exclusion scenarios.

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

  • Behavior1/5

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

    No annotations are provided, so the description carries the full burden. It only states 'List model tables and columns' with no mention of side effects, read-only nature, prerequisites, or what the parameters do. For a tool with two parameters and no safety cues, this is severely lacking.

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

    Conciseness2/5

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

    The description is extremely short (one sentence) and does not waste words, but it omits critical information. It is under-specified rather than concise, forcing the agent to guess about parameters and behavior.

    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?

    While an output schema exists (not shown), the description fails to cover essential aspects: parameter behavior, prerequisites, or when to use. The tool has two optional parameters that significantly affect output, and the description provides no context about them.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description does not mention any parameters. The agent must rely solely on parameter names ('include_hidden', 'include_row_counts'), which are slightly informative but insufficient. The description adds no value.

    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 'List model tables and columns' clearly states the action (list) and the resource (model tables and columns). It distinguishes from sibling tools like pbi_list_measures or pbi_list_pages, which list different resources. However, it could be more explicit that it returns columns within each table.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives. The sibling list is provided but without any contextual hints about when to choose pbi_list_tables over other list tools. The agent must infer from the name alone.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden. It says 'run a complete QA scenario' but does not disclose whether the operation is destructive, whether it modifies the model, what permissions are needed, or what the output contains. This is insufficient for a potentially impactful tool.

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

    Conciseness3/5

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

    The description is a single sentence with no waste, but it sacrifices essential information for brevity. While efficient, it does not earn its place by providing complete guidance.

    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?

    Given the tool's complexity (3 parameters, a QA scenario runner), the description omits critical details like output format, prerequisites (e.g., must be connected to a PBI instance), and the nature of 'scenario'. The existence of an output schema is not addressed.

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

    Parameters1/5

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

    With 0% schema description coverage, the description must explain parameters. It only mentions 'active model' and 'optional extracted layout', leaving 'scenario', 'extract_folder', and 'include_hidden' unexplained. The agent cannot infer what values to provide.

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

    Purpose3/5

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

    The description states the verb 'run' and the resource 'complete QA scenario against the active model and optional extracted layout', which is clearer than a tautology. However, 'QA scenario' is ambiguous and does not differentiate from sibling tools like pbi_validate_model or pbi_audit_model, which also perform quality checks.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. Given many sibling QA-related tools, the agent cannot determine when pbi_run_scenario is appropriate or what prerequisites are needed.

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

  • Behavior2/5

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

    With no annotations, the description must disclose behavioral traits. It does not mention whether the tool modifies data, returns results, or requires specific permissions. The term 'detect' implies read-only, but this is not explicitly stated.

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

    Conciseness2/5

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

    The description is short (one sentence), but it is under-specified. Conciseness is achieved at the expense of completeness, making it less helpful.

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

    Completeness1/5

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

    Given the tool has four parameters and no annotations or output schema visible in the input, the description is severely incomplete. It lacks essential details about parameters, return values, and behavior.

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

    Parameters1/5

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

    The description does not explain any of the four input parameters. Schema coverage is 0%, so the description adds no value beyond the parameter names, leaving the agent to guess their meaning (e.g., 'max_samples', 'min_parse_success_rate').

    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 clearly states the action ('detect') and the target ('text columns that look like dirty dates'). It is specific and unambiguous, but does not differentiate from other detection tools in the sibling list, such as pbi_detect_circular_dependencies.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives or what prerequisites are needed. The description only states what it does, leaving the agent without context for appropriate invocation.

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

  • Behavior2/5

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

    With no annotations, the description fails to disclose behavioral traits. It does not mention whether the tool is read-only, what side effects it has, or what specific actions it performs beyond the vague term 'validation'. Minimal behavioral context is provided.

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

    Conciseness2/5

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

    The description is overly concise (one phrase, 9 words) but at the expense of essential details. It lacks structure and does not earn its place by providing sufficient context. Conciseness without completeness is a flaw.

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

    Completeness1/5

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

    Given the tool has 3 parameters and an output schema, the description is severely incomplete. It does not cover what validation does, how parameters affect behavior, or what the output represents. The description adds no contextual value beyond the tool name.

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

    Parameters1/5

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

    The description does not explain any of the three parameters (page, extract_folder, include_hidden). Since schema description coverage is 0%, the description should compensate but adds no value. Users must infer meaning from names alone, which is insufficient for correct usage.

    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 clearly states the tool validates visual bindings at the alias level, distinguishing it from update tools like pbi_update_visual_bindings. However, it could be more explicit about what 'validation' entails (e.g., checking correctness, finding errors).

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

    Usage Guidelines2/5

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

    The description does not provide any guidance on when to use this tool versus other validators like pbi_validate_report_fields. Usage context is implied by the name and parameters but no explicit when-to-use or when-not-to-use information is given.

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

  • Behavior2/5

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

    With no annotations, the description must convey behavior but only provides a high-level summary. It does not explain what 'connect' entails (e.g., opening a new connection vs. reusing an existing one), side effects, or error conditions. The force_reconnect parameter hints at behavior, but the description does not clarify it.

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

    Conciseness3/5

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

    The description is very concise (one sentence), which is good for front-loading. However, it sacrifices important details, making it under-specified. It is structured as a single statement but does not earn its place due to incompleteness.

    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?

    Given the tool's moderate complexity (two optional parameters, output schema exists), the description is too brief. It lacks context about connection management, what 'report' produces, and how the output schema relates to the action. The description does not compensate for the missing annotation and low schema coverage.

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

    Parameters1/5

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

    The description adds no meaning to the two parameters (preferred_port, force_reconnect). Since schema coverage is 0% and the tool relies on the description for parameter explanation, the complete lack of parameter information fails to help the agent use them correctly.

    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 clearly states that the tool connects to Power BI Desktop and reports the active instance, specifying the action and the resource. It distinguishes itself from sibling tools like pbi_list_instances or pbi_refresh, though 'report' could be more explicit about what is returned.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives such as pbi_list_instances or pbi_refresh. The description does not mention prerequisites, context, or exclusions, leaving the agent without information to decide when this tool is appropriate.

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

  • Behavior2/5

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

    Without annotations, the description must disclose behavioral traits. It only states 'Delete', implying destructiveness, but fails to mention whether deletion is permanent, checks dependencies, requires specific permissions, or affects related objects. This is a significant gap for a mutation tool.

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

    Conciseness3/5

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

    The description is very short (6 words), which is concise, but it prioritizes brevity over completeness. It lacks necessary context, so it does not fully earn its place; a slightly longer description with key behavioral details would improve utility.

    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?

    Given the tool's simplicity (2 parameters, no annotations, output schema exists), the description should cover dependencies, error cases, and return value. It fails to do so, leaving the agent underinformed. An output schema is present but unacknowledged.

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

    Parameters1/5

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

    Schema description coverage is 0%, yet the description adds no meaning for the two required parameters (name, table). It does not explain what values are acceptable, formats, or constraints, leaving the agent to infer solely from parameter names.

    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 clearly states the action (delete) and resource (a column from a table), distinguishing it from sibling tools like pbi_delete_table or pbi_delete_measure. However, it does not explicitly differentiate from similar column operations, but the verb and object are specific.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives, such as pbi_rename_column or pbi_set_column_data_type. The description does not specify prerequisites, when not to use (e.g., column used in measures/relationships), or consequences.

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

  • Behavior2/5

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

    No annotations provided. Description merely states 'Delete a DAX measure' without warning about destructive nature, irreversibility, or cascading effects on visuals or relationships that depend on the measure.

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

    Conciseness3/5

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

    Very concise (one sentence) but overly terse. Misses opportunity to add value without sacrificing conciseness.

    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 simple delete tool with an output schema, description provides minimal context. Lacks info on return value, error conditions, or typical usage pattern.

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

    Parameters1/5

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

    Schema has 0% description coverage. Description adds no meaning beyond property names. Agent must infer what 'name' and 'table' refer to, risking incorrect invocation.

    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?

    Description clearly states action ('Delete') and resource ('DAX measure'). However, it does not differentiate from sibling tools like pbi_delete_column or pbi_delete_table, which have similar patterns.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool or when to prefer alternatives such as pbi_rename_measure or pbi_delete_column. No exclusion criteria or prerequisites mentioned.

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

  • Behavior2/5

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

    With no annotations, the description must fully cover behavioral traits. It mentions 'lightweight DAX probes' but omits side effects, prerequisites (e.g., extract_folder), or any mutation potential. The description is insufficient for safe invocation.

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

    Conciseness3/5

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

    The description is a single sentence, which is concise, but it sacrifices essential detail. It is not well-structured to front-load key information.

    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?

    Given the tool has 5 parameters and an output schema, the description is far from complete. It fails to explain inputs, output, or how results relate to detecting empty visuals.

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

    Parameters1/5

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

    Schema description coverage is 0%, yet the description does not explain any parameter. Critical parameters like 'extract_folder' are left undefined, forcing the agent to guess their meaning.

    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 clearly states the tool's purpose: detecting visuals with no data using DAX probes. However, it does not distinguish this from the sibling 'pbi_detect_missing_visuals', which could cause confusion.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool vs. alternatives. Sibling tools like 'pbi_detect_missing_visuals' exist, but the description offers no comparative context or usage constraints.

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

  • Behavior2/5

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

    No annotations are provided, so the description must convey behavioral traits. It only states detection but doesn't disclose whether the tool is read-only, what happens on collision detection (e.g., returns list or errors), or any side effects. Minimal transparency.

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

    Conciseness3/5

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

    The description is a single sentence with no wasted words, but its brevity omits important details like parameter explanation, making it under-specified rather than efficiently concise.

    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 one parameter and no annotations, the description is incomplete. It fails to clarify the parameter, usage context, or output nature. An output schema exists but the description adds no context.

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

    Parameters1/5

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

    Schema description coverage is 0%, yet the description does not explain the single parameter 'include_hidden'. The parameter's role in collision detection is completely 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 clearly states the resource (table, column, measure name collisions) and the action (detect before writes), distinguishing it from sibling detection tools like pbi_detect_circular_dependencies. However, it could be more precise about the scope (e.g., current model?).

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, typical scenarios, or exclusions, leaving the agent to infer context.

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

  • Behavior2/5

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

    No annotations are provided, yet the description does not disclose behavioral traits such as side effects, required permissions, or whether the tool is destructive. The 'apply' parameter hints at a two-step process, but this is not explained.

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

    Conciseness2/5

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

    The description is extremely concise but at the expense of completeness. It fails to provide critical information, making it under-specified rather than appropriately concise.

    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?

    Given the tool has 5 parameters (1 required) and no schema descriptions, the description should provide more context. The existence of an output schema does not compensate for the lack of parameter and workflow explanation.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description does not explain any of the five parameters. For example, 'apply', 'refresh_after', 'promote_headers', and 'sheet_table_map' remain cryptic, leaving the agent without guidance on how to use them.

    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 clearly states it involves importing an Excel workbook into Power BI, with two modes (plan or run). However, it does not differentiate from sibling tools like pbi_import_excel_workbook or pbi_bulk_import_excel, which likely have similar purposes.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives. With many sibling tools related to Excel import and Power BI workflows, the lack of usage context is a significant gap.

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

  • Behavior2/5

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

    With no annotations, the description must fully disclose behavioral traits. It fails to mention whether the query is read-only, what side effects occur, authentication needs, or rate limits. The tool name implies execution, but the description lacks critical safety and behavior details.

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

    Conciseness2/5

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

    The description is a single sentence, which is concise but underspecified for a tool with multiple parameters. It sacrifices clarity and completeness for brevity, failing to earn its place by providing substance beyond the tool name.

    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?

    Despite having an output schema, the description does not explain what the tool returns (e.g., tabular results). It lacks completeness for a query execution tool: no mention of error handling, expected output format, or usage context, leaving significant gaps.

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

    Parameters1/5

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

    Schema coverage is 0%, and the description adds no information about the three parameters (query, max_rows, timeout_seconds). The agent receives no explanation of their purpose, format, or constraints, making it difficult to use correctly.

    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 clearly states the action ('Execute') and the resource ('DAX or DMV query'), which is specific and distinguishes it from many sibling tools focused on creation or validation. However, it does not explicitly differentiate from similar tools like pbi_execute_dax_as_role.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no context for typical use cases. Sibling tools such as pbi_validate_dax or pbi_execute_dax_as_role are not mentioned, leaving the agent without decision-making support.

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

  • Behavior2/5

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

    With no annotations, the description must disclose behavioral traits like side effects or required permissions. It does not state whether executing tests modifies the model, is read-only, or what happens to existing data. This is a significant gap for a tool that 'executes' actions.

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

    Conciseness2/5

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

    The description is a single sentence, which is concise but overly terse. It lacks essential details and does not earn its place by providing value beyond the name. The tool demands more context (e.g., what smoke tests are, how execution works).

    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?

    Given the complexity (3 parameters, no annotations, existence of an output schema), the description is incomplete. It does not describe the output or behavior, leaving the agent with significant ambiguity about how to use the tool correctly.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description adds no information about the three parameters (measures, max_measures, include_hidden). The agent must infer meaning solely from parameter names and types, which is insufficient for correct usage.

    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 clearly states the action ('generate and execute') and the resource ('smoke tests for DAX measures'), distinguishing it from similar sibling tools like pbi_lint_dax or pbi_validate_dax. However, 'smoke tests' could be more precisely defined.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives such as pbi_validate_dax or pbi_lint_dax. There is no mention of prerequisites, context, or exclusions.

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

  • Behavior2/5

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

    With no annotations, the description carries full burden. It fails to disclose behavior beyond basic action: no mention of overwrite handling, error handling, output format, or side effects on existing measures.

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

    Conciseness3/5

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

    Extremely concise (one sentence), but at the cost of completeness. It is not verbose, but under-specification makes it less useful.

    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?

    Given 6 parameters, 0% schema description, and presence of output schema, the description is insufficient. It doesn't explain what the output contains or how parameters affect behavior. The tool performs a non-trivial operation and needs more detail.

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

    Parameters1/5

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

    Schema description coverage is 0%, yet the description provides no parameter explanations. Parameters like 'path', 'table', 'overwrite', 'stop_on_error', etc., are left undocumented, forcing the agent to infer or guess.

    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 clearly states the tool parses a .dax file and bulk-creates measures. It distinguishes from related tools like pbi_create_measure by emphasizing bulk operation, but doesn't explicitly differentiate from pbi_create_measures or other import tools.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives like pbi_create_measures or pbi_import_excel_workbook. No prerequisites or context provided.

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

  • Behavior1/5

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

    No annotations exist, yet the description offers no behavioral context: no mention of read-only nature, permissions, or potential cost. The description carries the full burden for transparency and fails.

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

    Conciseness4/5

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

    The description is a single sentence, front-loaded and to the point. It is concise but at the expense of important details, so while efficient, it is not optimally informative.

    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?

    Given the existence of an output schema and two optional parameters, the description is incomplete. It fails to explain filtering capabilities or return value structure. For a straightforward query tool, more context is expected.

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

    Parameters1/5

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

    Schema description coverage is 0%, but the description does not explain the two parameters (table and measure) or their role as optional filters. The parameters are completely undocumented beyond the schema.

    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 the tool returns dependency graph rows from DISCOVER_CALC_DEPENDENCY, clearly indicating the resource and action. However, it does not explicitly differentiate from sibling tools like pbi_detect_circular_dependencies, though the specific verb 'return' and data source hint at its distinct role.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives, no prerequisites, no exclusions. The description is purely functional.

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

  • Behavior2/5

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

    No annotations are present, so the description bears full responsibility for disclosing behavior. It mentions 'run a compact model audit with recommendations' but does not explain whether the operation is read-only, what changes occur, permissions needed, or the nature of recommendations.

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

    Conciseness3/5

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

    The description is a single short sentence, which is concise but lacks structure. It is not verbose, but it omits important details that could be included without becoming overly long.

    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?

    Given that the tool is a workflow with an output schema, the description is incomplete. It does not explain the scope of the audit, the format of recommendations, or how the boolean parameters affect behavior. More context is needed for effective use.

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

    Parameters1/5

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

    The description does not mention either parameter ('include_hidden', 'include_row_counts'), even though schema description coverage is 0%. The tool has two boolean parameters with defaults, but the description adds no meaning beyond the schema.

    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 clearly states that the tool runs a 'compact model audit' and provides 'recommendations,' indicating the action and output. However, it does not differentiate from sibling tool 'pbi_audit_model,' which may perform a similar but non-compact audit.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives like pbi_audit_model, pbi_validate_model, or other diagnostic tools. The description lacks context for appropriate usage scenarios.

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

  • Behavior2/5

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

    No annotations provided. Description implies mutation ('create or replace') but does not disclose side effects, permissions, or prerequisites. Minimal behavioral context beyond the name and schema.

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

    Conciseness3/5

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

    Single sentence is concise but under-specified. It is front-loaded but sacrifices necessary detail for brevity.

    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?

    Given the complexity (patching TMDL, seven parameters, no annotations, no parameter docs), the description is incomplete. Prerequisites, error states, and the meaning of 'replace' are missing.

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

    Parameters1/5

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

    Schema description coverage is 0%. The description adds no information about parameters (e.g., expression, format_string) beyond the schema titles. Seven parameters are left entirely unexplained.

    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 specifies the verb (create/replace) and resource (measure block in TMDL file) with context of one table. However, it does not distinguish from siblings like pbi_create_measure, which might create a measure similarly.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool vs alternatives (e.g., pbi_create_measure, pbi_write_tmdl_file). The description lacks any conditional or comparative information.

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

  • Behavior2/5

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

    No annotations are provided, and the description does not disclose behavioral traits such as whether the refresh is synchronous, destructive, or requires specific permissions. The description carries the full burden but offers only a minimal action statement.

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

    Conciseness3/5

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

    The description is a single sentence, concise but lacking structure. It could be improved by separating purpose and parameter usage, but it is not overly verbose.

    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?

    Despite having an output schema, the description is too brief for a tool that triggers a potentially long-running operation. It does not explain what the agent can expect (e.g., immediate completion, status updates), leaving the interaction incomplete.

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

    Parameters1/5

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

    The input schema has no descriptions for the two parameters (target and refresh_type), and the description does not explain their meaning, allowed values, or defaults. With 0% schema coverage and no added parameter semantics, the agent has no guidance on how to fill them.

    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?

    Description states it triggers a model or table refresh, clearly identifying the action and resource. It distinguishes between targeting a model or table, but lacks details on what 'refresh' entails, which could be more specific.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives like pbi_refresh_metadata. The description does not provide context on prerequisites or scenarios, leaving the agent to infer usage.

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

  • Behavior2/5

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

    No annotations exist. The description does not disclose whether the tool is read-only or modifies anything, nor does it mention side effects or required permissions. For a scoring tool, it likely is non-destructive, but this is not stated.

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

    Conciseness3/5

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

    The description is a single sentence, which is concise, but it lacks structure and is too brief to convey necessary information. It earns its place but could be more detailed without being verbose.

    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?

    Given the tool has two parameters and no required fields, plus an output schema exists (so returns are not needed in description), the description still fails to explain how the parameters affect scoring or what the output represents, leaving significant gaps.

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

    Parameters1/5

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

    Schema coverage is 0% and the description does not mention or explain either parameter ('extract_folder', 'include_hidden'). The agent has no semantic clues to set them correctly.

    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?

    Description clearly states the tool scores dashboard quality across four specific dimensions (model, DAX, layout, readability). However, it does not differentiate from the sibling tool 'pbi_score_rubric', which may have a different scoring methodology.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives, no prerequisites or context provided. Agent has no hints on usage boundaries.

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

  • Behavior2/5

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

    The description does not disclose any behavioral traits such as whether the tool is read-only, requires specific permissions, or has side effects. Since no annotations are provided, the description should cover these aspects but does not.

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

    Conciseness3/5

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

    The description is concise at one sentence, but it lacks structure and key details. While not overly verbose, it omits important information that could have been added without sacrificing conciseness.

    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?

    Although the tool has an output schema, the description fails to explain the return structure, such as what timing diagnostics include. For a tool that executes arbitrary queries, more completeness is needed regarding error handling and output format.

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

    Parameters1/5

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

    With 0% schema description coverage, the description adds no meaning beyond the schema's parameter names and types. It does not explain the expected format of the query, the meaning of timeout_seconds, or any constraints.

    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 clearly states the action (execute a DAX query) and the result (return result rows with timing diagnostics). It distinguishes itself from sibling tools like pbi_execute_dax by explicitly mentioning timing diagnostics, which is a unique feature.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives like pbi_execute_dax or pbi_lint_dax. The description does not mention prerequisites, limitations, or when not to use it.

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

  • Behavior1/5

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

    No annotations provided, and the description offers no behavioral details such as destructiveness (e.g., irreversible action, cascading effects) or return behavior. The agent cannot assess risks.

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

    Conciseness3/5

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

    The description is one concise sentence, but it sacrifices necessary detail. While short, it fails to provide adequate information for safe and correct usage.

    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?

    Despite low complexity (single required parameter, output schema exists), the description is insufficient for a deletion operation. It omits success indicator, confirmation requirements, and potential side effects.

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

    Parameters1/5

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

    The single parameter 'table_name' has no description in the schema (0% coverage) and the tool description adds no meaning. The agent does not know expected format, case sensitivity, or if it refers to display name or internal name.

    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 clearly states the specific verb 'Delete' and resource 'calculation group table', distinguishing it from siblings like pbi_delete_table (for regular tables) and pbi_list_calc_groups (listing).

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives, nor any prerequisites or limitations. The agent is left to infer usage from the name alone.

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

  • Behavior2/5

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

    Without annotations, the description carries the full burden of disclosing behavioral traits. It mentions 'Create or overwrite' but omits details on side effects, such as whether the file is replaced without warning, required permissions, or error handling. The behavior of the 'create' boolean parameter is not explained.

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

    Conciseness2/5

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

    While the single sentence is concise, it is undercoded. It lacks structure and fails to provide necessary details about parameters or usage. Conciseness should not come at the expense of missing critical information.

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

    Completeness1/5

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

    Given the tool's complexity (file write operation with 4 parameters, no annotations, and an output schema not described), the description is completely inadequate. It does not explain the file format (TMDL), the role of the 'create' flag, or what the return value contains.

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

    Parameters1/5

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

    The input schema has 0% coverage (no parameter descriptions) and the tool description does not explain any parameters. The agent gets no additional meaning about 'project_path', 'relative_file', 'content', or 'create' beyond their names and types.

    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 clearly states the action ('Create or overwrite') and the resource ('one TMDL file inside a Power BI Project definition folder'). It distinguishes this tool from siblings like pbi_read_tmdl_file and pbi_list_tmdl_files, making its purpose unambiguous.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives, nor prerequisites or exclusions. The minimal description does not help an agent decide when to invoke this tool or what conditions to check (e.g., file existence, required permissions).

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

  • Behavior2/5

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

    With no annotations, the description carries full burden for behavioral traits but only states create/update. No mention of permissions, side effects, or required context.

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

    Conciseness3/5

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

    Short and to the point, but overly minimal. Could include more details within a concise structure.

    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?

    With 8 parameters and no output schema or annotations, the description is insufficient for correct agent invocation. Missing details on return values and operational context.

    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 the description adds no meaning beyond naming the tool. It does not explain key parameters like data_type, is_hidden, or overwrite.

    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 'Create or update a calculated column' clearly states the verb and resource, but lacks differentiation from sibling tools like pbi_create_measure or pbi_create_table.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives. No exclusions or context provided.

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

  • Behavior2/5

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

    No annotations exist, and the description only says 'generate and inject' without disclosing whether it replaces existing queries, requires certain permissions, or other side effects.

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

    Conciseness2/5

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

    The description is a single sentence, which is concise but fails to provide necessary detail for a tool with 8 parameters.

    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?

    Despite an output schema, the description omits usage context, behavioral details, and parameter explanations, making it incomplete for an 8-parameter tool.

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

    Parameters1/5

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

    Schema coverage is 0%; the description does not explain any of the 8 parameters (table, csv_path, encoding, etc.), leaving the agent to rely solely on schema titles.

    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 clearly states the tool generates and injects a CSV import Power Query for a table, which is specific and distinguishes it from related tools like pbi_create_import_query.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool vs. alternatives (e.g., pbi_create_import_query), nor any prerequisites or context.

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

  • Behavior2/5

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

    With no annotations, the description carries the full burden. It mentions 'create or update' but does not elaborate on side effects, permissions, or the behavior of the overwrite parameter. The agent lacks context on mutation implications.

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

    Conciseness3/5

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

    The description is very short (one sentence), which is concise but sacrifices important details. It could be expanded slightly to improve clarity without becoming verbose.

    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?

    Given the tool has 8 parameters and an output schema, the description is insufficient. It does not explain the return value or provide enough context for the agent to use the tool correctly.

    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 the description adds no parameter information. Parameter names are somewhat self-explanatory, but the description does not clarify format, constraints, or relationships between parameters.

    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 clearly states the action (create or update) and the resource (DAX measure). However, it does not distinguish this generic tool from specialized siblings like pbi_create_rolling_average_measure or pbi_create_topn_measure.

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

    Usage Guidelines2/5

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

    No usage guidelines are provided. The description does not indicate when to use this tool versus alternatives, nor does it mention prerequisites or exclusions.

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

  • Behavior2/5

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

    With no annotations, the description carries full burden. It does not disclose destructiveness, side effects (e.g., cascading deletion of members), required permissions, or reversibility. This is insufficient for a delete operation.

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

    Conciseness3/5

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

    The description is a single sentence with no wasted words. However, it is overly minimal, trading conciseness for clarity and completeness. It earns no extra credit for brevity at the expense of substance.

    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?

    Despite having an output schema, the description does not explain what the tool returns or side effects. For a deletion tool, details on confirmation, error handling, or impact on related entities are missing. The description is inadequate.

    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?

    The single parameter 'name' is documented only by its type in the schema. The description adds no additional meaning, such as what the name represents or how to specify it. With 0% schema description coverage, this is a significant gap.

    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 'Delete a model role' clearly states the action (delete) and the resource (model role). It effectively distinguishes from sibling tools like pbi_create_role or pbi_add_role_member. However, it does not elaborate on the exact scope or implications.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives like pbi_remove_role_member or pbi_create_role. The description lacks context for appropriate use, prerequisites, or contraindications.

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

  • Behavior1/5

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

    The description references a parameter 'manager' that is not defined in the input schema, creating confusion. It does not disclose whether the tool is read-only or destructive (no annotations), nor any auth or rate limits. The conditional behavior is poorly specified, leading to potential misuse.

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

    Conciseness4/5

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

    The description is concise, with the purpose stated in the first sentence and details in the second. However, it wastes space on an undefined parameter (manager) and lacks parameter explanations, which slightly reduces efficiency.

    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?

    The description covers the output structure well (given an output schema exists), but it fails to explain the input parameters, which are critical for correct invocation. The omission of parameter semantics and lack of usage guidance make it incomplete for an agent to use autonomously.

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

    Parameters1/5

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

    Schema description coverage is 0%, so the description must explain the two required parameters (page, extract_folder). It does not; it only describes the output structure. No information about what values these parameters accept or how they affect the result.

    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 clearly states it returns a structured snapshot of a report page, listing specific components per visual (id/type/position, bindings, formatting, binding_health). This distinguishes it from sibling tools like pbi_get_page (which likely returns a simpler page structure) and pbi_extract_report (full report extraction).

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives like pbi_get_page or pbi_extract_report. It does not mention prerequisites, exclusions, or scenarios where this tool is preferred. The mention of 'when manager is supplied' is unclear since manager is not in the input schema.

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

  • Behavior2/5

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

    No annotations are provided, so the description must carry full burden. It states 'write or update' implying mutation, but does not disclose side effects (e.g., whether refresh is triggered, whether previous M expression is overwritten, permissions required, reversibility). The 'refresh_after' parameter hints at behavior but is not explained.

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

    Conciseness3/5

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

    The description is a single sentence, very concise. However, it lacks structure and does not front-load critical information. It is acceptable but minimal.

    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?

    Given an output schema exists, the description does not need to explain return values. However, it fails to cover the operation's implications, such as success criteria, error conditions, or any context around the parameter defaults. The tool's purpose is clear but not complete for an AI agent to use confidently.

    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%, so the description must add meaning. It only loosely references 'table partition', leaving 'm_expression', 'refresh_after', and 'partition_name' undefined. The parameter names are somewhat self-explanatory, but the description fails to clarify format or usage specifics.

    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 clearly states the verb (write/update) and the resource (M expression on a table partition). It distinguishes from siblings like pbi_get_power_query (read) and pbi_list_power_queries (list). However, it lacks precision on what constitutes a 'partition' in the Power BI context.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives, no prerequisites (e.g., table must exist), no exclusions, and no mention of when not to use it. The sibling tools are many, but no differentiation is offered.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden. 'Detect' implies a read-only analysis, but there is no disclosure of what the tool does to the model, what it returns, or any required permissions. Minimal behavioral context.

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

    Conciseness3/5

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

    The description is a single sentence, which is concise but lacks structure. It could be improved by adding a sentence about the parameter or the output.

    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?

    Despite having an output schema, the description does not explain what is returned (e.g., list of issues, severity). For a detection tool, more context is needed for effective use.

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

    Parameters1/5

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

    The input schema has one parameter (include_hidden) with 0% schema description coverage. The description does not mention or explain this parameter, providing no added value beyond the schema itself.

    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 clearly states the action (detect) and the resource (model structures), listing specific types of issues (missing, ambiguous, bidirectional, orphaned). This distinguishes it from sibling tools like pbi_detect_circular_dependencies or pbi_validate_model.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives, such as pbi_detect_circular_dependencies or pbi_validate_model. The agent must infer usage from the name alone.

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

  • Behavior2/5

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

    No annotations are present, and the description does not disclose behavioral aspects like mutation, reversibility, or authentication needs. As a tool that creates multiple queries, more transparency is required.

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

    Conciseness3/5

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

    The description is a single sentence, which is concise but lacks essential details. While it is efficiently structured, it sacrifices completeness for brevity.

    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?

    Given the tool's complexity (4 params, 1 required) and lack of parameter descriptions or behavioral context, the description is inadequate. An output schema exists but is not visible, so the description should compensate with more context.

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

    Parameters1/5

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

    With 0% schema description coverage, the description adds no parameter explanations. It does not clarify key parameters like 'excel_path' format or 'sheet_table_map' usage, leaving the agent to infer from the schema alone.

    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 clearly states 'Bulk-create Excel import queries for multiple tables,' specifying a precise action (bulk-create), resource (Excel import queries), and scope (multiple tables), which distinguishes it from siblings like pbi_create_csv_import_query.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool vs alternatives such as pbi_excel_import_workflow or pbi_create_import_query. There are no prerequisites or context for appropriate usage.

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

  • Behavior2/5

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

    No annotations provided. Description only mentions preserving compatible field bindings, but does not disclose whether the operation is destructive, reversible, requires permissions, or what happens to incompatible fields. For a mutation tool, more behavioral context is needed.

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

    Conciseness3/5

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

    One sentence of 12 words is concise but inadequately short for a tool with 4 parameters. It lacks necessary details, so it is not well-structured for the complexity.

    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?

    Tool has 4 required parameters with no schema descriptions. Despite having an output schema, the description does not mention the output or side effects. Incomplete for the complexity.

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

    Parameters1/5

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

    Schema description coverage is 0%. The description does not explain any of the 4 parameters (extract_folder, page, visual_id, new_type) beyond their names. Agents cannot infer what values to provide.

    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?

    Description clearly states it converts (migrates) an existing visual to a different type while preserving compatible field bindings. It specifies the verb 'migrate' and the resource 'visual type', distinguishing it from creating new visuals (pbi_add_visual) or updating bindings only (pbi_update_visual_bindings).

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool vs alternatives like pbi_add_visual or pbi_update_visual_bindings. No prerequisites or conditions for use are stated.

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

  • Behavior2/5

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

    With no annotations, the description must disclose behavioral traits. It only states 'Create or update' but does not explain what triggers an update vs creation, potential side effects, or required permissions. The overwrite and refresh parameters imply destructive behavior but are not described.

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

    Conciseness3/5

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

    The single-sentence description is concise but omits critical details. It front-loads the core action but lacks structure for parameter or usage guidance.

    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?

    Given the tool has 5 parameters and an output schema, the description fails to cover return values, parameter roles, or usage context. It is insufficient for an agent to invoke the tool correctly.

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

    Parameters1/5

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

    Schema description coverage is 0%, yet the description provides no explanation of the five parameters (name, expression, is_hidden, overwrite, refresh_after_create). It adds no meaning beyond the schema names.

    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 explicitly states 'Create or update a calculated table,' which is a specific verb-resource pairing. It clearly distinguishes from sibling tools like pbi_create_measure or pbi_create_column by specifying 'table' as the resource.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives like pbi_create_measure, pbi_create_column, or pbi_delete_table. The description lacks context on prerequisites or exclusions.

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

  • Behavior3/5

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

    Without annotations, the description carries the full burden. 'Export as JSON' implies a read‑only, non‑destructive operation, but it does not explicitly state file overwrite behavior, connection requirements, or any side effects. The behavioral disclosure is minimal.

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

    Conciseness4/5

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

    The description is a single concise sentence that front‑loads the purpose. It avoids unnecessary words but sacrifices completeness.

    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?

    Given 6 parameters, no schema descriptions, and no annotations, the description is insufficient for an agent to use the tool correctly. Parameter semantics are entirely missing, and usage context is absent.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description does not explain any parameter. An agent cannot infer the meaning or usage of extract_folder, include_hidden, include_measure_tests, include_empty_visual_scan, or empty_visual_filter_expression from the description alone.

    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 clearly states the tool exports multiple aspects (model, DAX, layout, binding, score validation) as JSON. The verb 'Export' and resource 'validation report' are specific, and it distinguishes from siblings like pbi_export_model and pbi_export_correction_report. However, 'score validation' is ambiguous.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives like pbi_export_correction_report or pbi_export_model. No prerequisites, use cases, or exclusions are mentioned.

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

  • Behavior2/5

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

    With no annotations, the description carries full burden but only says 'in one call'. It does not disclose destructive nature (e.g., overwriting tables), required permissions, or the impact of parameters like refresh_after.

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

    Conciseness3/5

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

    The description is a single sentence, which is concise but lacks structure. It omits essential details such as parameter explanations or usage notes.

    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?

    Given 4 parameters with zero documentation, the description is severely incomplete. While an output schema exists, the description fails to cover input semantics or behavioral context.

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

    Parameters1/5

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

    Schema description coverage is 0%, yet the description adds no explanation for any of the 4 parameters (excel_path, refresh_after, promote_headers, sheet_table_map). The agent gets no help understanding their meaning or usage.

    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 clearly states the verb 'Import' and the resource 'Excel workbook into Power BI tables', and specifies 'in one call', distinguishing it from batch or workflow siblings.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives like pbi_bulk_import_excel or pbi_excel_import_workflow. The agent must infer without context.

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

  • Behavior2/5

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

    No annotations provided. Description does not disclose behavioral traits such as whether it recurses subfolders, file extension filtering, or side effects. Minimal information leaves agent uncertain about behavior.

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

    Conciseness3/5

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

    Single sentence is concise but fails to include necessary details. Conciseness is good, but at the expense of completeness.

    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?

    Despite having only one parameter and an output schema, the description lacks parameter guidance and usage context. Not complete enough for correct invocation, especially regarding path semantics.

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

    Parameters1/5

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

    Schema has 0% description coverage. Description does not add any meaning for the 'project_path' parameter (e.g., format, whether absolute/relative path, trailing slash). Agent has no clues beyond parameter name.

    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?

    Description uses specific verb 'List' and resource 'TMDL files' with location 'Power BI Project semantic model definition folder'. Clearly distinguishes from sibling tools like pbi_read_tmdl_file and pbi_write_tmdl_file.

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

    Usage Guidelines2/5

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

    No guidance on when to use or not use this tool. No mention of alternatives among sibling listing tools. Description is purely functional without context.

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

  • Behavior3/5

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

    The description states 'pure offline calculation,' implying no side effects or network dependencies. It guarantees non-overlapping results. However, with no annotations provided, the description should disclose more behavioral traits like error handling, input validation, or performance characteristics. The current description is adequate but not thorough.

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

    Conciseness3/5

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

    The description is one sentence, which is concise and front-loaded. However, for a tool with 9 parameters and no schema descriptions, this brevity results in under-specification. Every sentence earns its place, but more structure or detail would improve usability.

    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?

    The description is incomplete for the tool's complexity. It does not explain the input format of the 'specs' array or the meaning of other parameters. While an output schema exists (mitigating the need to describe return values), the description still lacks critical context for proper use.

    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 coverage is 0%, so the description must add meaning to parameters. It mentions 'column-based grid' which relates to the 'cols' parameter, but does not explain any other parameters like 'specs', 'gap', or 'start_x'. The description is too brief to compensate for the lack of schema descriptions, leaving most parameters 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 clearly states the tool computes non-overlapping layout coordinates for visual specs on a column-based grid. It uses a specific verb and resource, distinguishing it from other pbi tools like pbi_add_visual or pbi_patch_layout. However, it does not explicitly differentiate from sibling tools.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It mentions 'pure offline calculation' but does not specify prerequisites, typical use cases, or when not to use it. There are no explicit exclusions or references to sibling tools.

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

  • Behavior2/5

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

    No annotations exist, so the description must carry the full burden. It says 'export' but does not clarify if it modifies the model, permissions needed, or file size limits. The optional disk write is mentioned but no side effects.

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

    Conciseness4/5

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

    The description is a single sentence, front-loaded with key action. It is concise but could be slightly more informative without being verbose.

    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?

    With 3 parameters (none required), an output schema, and no parameter explanations in the description, the tool definition is incomplete. An agent would lack context on parameter usage and output format.

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

    Parameters1/5

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

    Schema description coverage is 0%, so the description should explain parameters. It does not: no mention of path, include_hidden, or include_row_counts. Parameter names are self-explanatory but description adds no value.

    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 clearly states the tool exports the full model as JSON, optionally to disk. The verb 'export' and resource 'full model' are specific and distinct from sibling tools.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool over alternatives (e.g., pbi_extract_report). The description does not provide context for when the tool is appropriate.

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

  • Behavior2/5

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

    With no annotations, the description carries full burden. It says 'validate that a patched PBIX still contains a readable, persistent report layout' but does not disclose what the validation entails (e.g., file access, checking layout integrity), side effects, or requirements. Minimal behavioral disclosure.

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

    Conciseness4/5

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

    The description is a single efficient sentence (10 words) with no redundancy. However, it could be expanded to include essential context without becoming verbose.

    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?

    Given the tool has 3 parameters and an output schema, the description is incomplete. It does not explain the parameters, the return value, or the typical usage context (e.g., after patching). Sibling tools suggest a workflow, but the description fails to situate itself within that workflow.

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

    Parameters1/5

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

    The input schema has 0% description coverage. The description does not explain any of the three parameters (pbix_path, extract_folder, require_security_bindings_removed), leaving their meaning unclear. For example, extract_folder's role is not implied by the description or tool name.

    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 clearly states the action (validate) and the specific object (patched PBIX report layout). It distinguishes from sibling tools like pbi_validate_pbix_reopen, which validates reopening, making the purpose unambiguous.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives (e.g., pbi_validate_pbix_reopen). It does not mention prerequisites or typical workflow context, such as being used after pbi_patch_layout.

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

  • Behavior2/5

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

    No annotations are provided, so the description must fully disclose behavior. It states the tool compares versions but does not clarify if it is read-only, what the output format is, or any side effects. This leaves the agent uncertain about the tool's impact.

    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?

    The description is a single sentence that directly communicates the tool's purpose. No extraneous information.

    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?

    With 4 parameters (2 required) and no output schema shown, the description lacks detail on how parameters should be provided and what the comparison result looks like. It mentions comparison criteria but does not explain the output structure, making it incomplete for an agent to confidently invoke.

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

    Parameters1/5

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

    Schema description coverage is 0%, meaning parameters have no descriptions in the schema. The tool description does not describe any parameters; it only mentions 'extracted report versions' which loosely correspond to extract_folder_a and extract_folder_b, but label_a and label_b are entirely unexplained.

    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 clearly states the tool compares two extracted report versions, and specifies the comparison dimensions (pages, visuals, layout score). This distinguishes it from siblings like pbi_extract_report and pbi_compile_report.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives. It does not mention prerequisites (e.g., that extract_folder_a and extract_folder_b must be pre-existing extracts from pbi_extract_report) or provide context for when comparison is appropriate.

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

  • Behavior2/5

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

    No annotations are provided, so the description must fully convey behavioral traits. It mentions 'generate and inject' but does not disclose potential side effects, whether it overwrites existing queries, authorization needs, or what happens after execution.

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

    Conciseness4/5

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

    The description is a single sentence that is front-loaded and avoids fluff. However, it is slightly too terse, missing essential details that could be added without losing conciseness.

    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?

    Given the tool's complexity (6 parameters, 2 required), the description is insufficient. It does not explain the return value (output schema exists but no mention), the injection process, or preconditions like existing table or folder permissions.

    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%, leaving the description to explain parameter meanings. It only hints at 'table' and 'folder_path' but does not define the other four parameters (refresh_after, partition_name, extension_filter, include_hidden_files), nor their defaults or constraints.

    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 clearly states the tool generates and injects a folder import Power Query for a table, using specific verbs and resource, and distinguishes from sibling tools like pbi_create_csv_import_query by specifying 'folder import'.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives such as pbi_create_csv_import_query or pbi_create_import_query. The description does not mention prerequisites, exclusions, or context.

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

  • Behavior2/5

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

    No annotations are provided, so the description must disclose behavioral traits. It only says 'Read' but does not specify safety, permissions, or side effects. The absence of any behavioral context leaves the agent uninformed.

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

    Conciseness3/5

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

    The description is a single concise sentence, front-loaded with the action. However, it is overly brief and could incorporate additional useful information without losing conciseness.

    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?

    Given the simplicity of the tool (2 parameters, output schema exists), the description is too sparse. It lacks usage guidelines, parameter explanations, and behavioral transparency, making it incomplete for effective tool selection and invocation.

    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 the description does not explain the purpose of 'table' and 'partition_name' beyond their names. No additional meaning is provided over the schema.

    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 clearly states the tool reads the M expression for a specific table partition, with a specific verb and resource, and distinguishes from sibling tools like pbi_set_power_query (write) and pbi_list_power_queries (list).

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives like pbi_list_power_queries or pbi_set_power_query. The description lacks context on prerequisites or use cases.

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

  • Behavior2/5

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

    No annotations are provided, so the description must fully convey behavioral traits. The description only says 'list,' implying read-only, but does not disclose any side effects, authentication needs, rate limits, or whether results are paginated. This leaves significant gaps for an agent.

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

    Conciseness3/5

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

    The description is a single sentence, which is concise, but it is too brief to be informative. It could include more detail about the parameter or output without becoming verbose, so it is mediocre.

    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?

    With only one parameter and an output schema available, the description is still incomplete. It does not explain the scope (e.g., all tables or specific), the output structure, or any nuances. The agent cannot fully understand the tool's behavior from the description alone.

    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%, yet the description does not mention the 'include_hidden' parameter. The agent must infer its meaning from the name alone, which is insufficient. The description should explain the parameter's effect, but it does not.

    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 clearly states it lists table partitions and their source expressions. The verb 'list' and specific resource 'table partitions' and 'source expressions' make the purpose unambiguous, distinguishing it from siblings like pbi_get_power_query which retrieves a single query.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives such as pbi_get_power_query or pbi_list_tables. There is no mention of prerequisites, limitations, or context that would help an agent decide to invoke this tool.

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

  • Behavior2/5

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

    No annotations are present, so the description must carry the behavioral disclosure burden. The description only says 'full model snapshot' without elaborating on performance, permissions, or what is included. It does not reveal potential risks or limits.

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

    Conciseness3/5

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

    The description is a single sentence, which is concise and front-loaded. However, it lacks any structure (no paragraphs, bullet points) and may be too minimal for a complex tool. Every word earns its place, but more detail would improve usability.

    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?

    Although an output schema exists, the description does not set adequate context for the tool's scope. It fails to mention what the 'full model snapshot' includes (e.g., tables, measures, relationships), leaving ambiguity about the tool's comprehensive nature.

    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%, meaning the input schema lacks parameter descriptions. The description does not mention or explain the parameters (include_hidden, include_row_counts). While parameter names are somewhat self-explanatory, the description adds no value to their meaning.

    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 clearly states the tool returns a 'full model snapshot in a single call.' This is a specific verb (return) and resource (full model snapshot), which distinguishes it from sibling tools like pbi_list_tables that return partial model info.

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

    Usage Guidelines2/5

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

    No guidance is given on when to use this tool versus alternatives. With many sibling tools offering more targeted functionality (e.g., pbi_list_measures), the description should explicitly state when to use the full snapshot versus partial queries.

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

  • Behavior3/5

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

    The description notes that callers must update dependent DAX, which is a behavioral implication. However, no details on reversibility, permission requirements, or error behavior. Given no annotations, the description carries the full burden but is insufficient.

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

    Conciseness4/5

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

    Very concise, two sentences. The main action is front-loaded. However, it sacrifices informativeness for brevity.

    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?

    Given the simplicity of the tool (rename a column), the description is minimal. However, it lacks context on failure scenarios, prerequisites, and behavior when the column does not exist. With an output schema available, the description should at least hint at the return value.

    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%. The description does not explain the three parameters (name, table, new_name) beyond their names. For example, it doesn't clarify that 'name' is the current column name or specify the expected format.

    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 clearly states the action (rename) and the resource (column). However, it does not distinguish from sibling tools like pbi_rename_measure or pbi_rename_table; the distinction is implied by the resource name but not explicitly clarified.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool vs alternatives (e.g., pbi_rename_table, pbi_rename_measure). The warning about dependent DAX is a constraint but not a usage guideline.

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

  • Behavior2/5

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

    With no annotations, the description bears full weight for behavioral disclosure. It mentions that the visual is created via a generic dispatcher with field validation and that dry_run skips layout writing. However, it omits important behaviors such as whether existing visuals are overwritten, required permissions, side effects on data sources, or error handling. This is insufficient given the lack of annotations.

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

    Conciseness4/5

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

    The description is three sentences, each providing meaningful information: the core purpose, schema reference, and dry_run behavior. It is concise without redundancy, though the structure could be improved with bullet points or clearer separation of planning vs. building steps.

    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?

    Given the tool's complexity (9 parameters, nested objects, and an output schema), the description is too sparse. It does not address the meaning of position/size parameters, the purpose of extract_folder, or the output format. While the output schema exists, the description still leaves many usage aspects unclear.

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

    Parameters1/5

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

    The input schema has zero descriptions for its 9 parameters, and the description only clarifies the 'intent' and 'dry_run' parameters. The other 7 parameters (x, y, page, title, width, height, extract_folder) are left unexplained. Since schema coverage is 0%, the description fails to compensate, making this dimension severely lacking.

    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 clearly states the tool's purpose: 'Plan a visual from a business-intent spec, then build it.' It distinguishes itself from the sibling 'pbi_plan_visual_tool' by mentioning the same intent schema but adding the building step. The verb 'plan and build' is specific to this tool.

    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?

    The description provides some usage context by noting the dry_run option and referencing the separate planning tool. However, it does not explicitly state when to use this tool versus alternatives like 'pbi_add_visual' or when to avoid it. Guidance is implied but not comprehensive.

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

  • Behavior2/5

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

    With no annotations, the description carries the full burden. It discloses the properties set but fails to mention side effects, reversibility, or the role of the required parameter 'extract_folder' (which appears unrelated to autoscale). The agent lacks behavioral context for safe invocation.

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

    Conciseness4/5

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

    The description is a single, technically precise sentence. It is concise but could be improved by listing parameters or breaking into multiple sentences for clarity. No redundancy, but the technical detail is dense.

    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?

    Given the tool has 4 parameters (1 required) and 0% schema coverage, the description is incomplete. It does not explain how to use extract_folder, page, or visual_ids to target specific card visuals. The output schema exists but does not compensate for missing parameter semantics.

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

    Parameters1/5

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

    Schema description coverage is 0%, so the description must explain all parameters. It only hints at label_precision via the technical note, but extract_folder (required), page, and visual_ids are entirely unexplained. The agent cannot infer their purpose from the description alone.

    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 clearly states the tool disables auto K/M/B unit-scaling on card visuals, specifying the underlying settings (labelDisplayUnits=1 and labelPrecision). This verb-resource pair is specific and distinguishes it from other PBI formatting tools.

    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?

    The description implies usage for card visuals needing to disable autoscale, but it does not provide explicit guidance on when to use this tool versus alternatives like pbi_set_format or pbi_set_visual_format_property. There are no when-not-to-use or alternative tool references.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the basic action and role context, but lacks details about side effects, permissions, error handling, or whether the query is read-only. The return behavior is not described, even though an output schema exists.

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

    Conciseness4/5

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

    The description is concise with a single front-loaded sentence. It states the core functionality without fluff, but could be slightly expanded to include parameter hints without losing conciseness.

    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?

    Given the tool has 3 parameters (2 required), no parameter descriptions in the schema, and an output schema, the description is insufficient. It does not explain parameter purposes, usage context, or return value semantics, leaving the agent with inadequate guidance.

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

    Parameters1/5

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

    Schema description coverage is 0%, so the description must add meaning to parameters. However, the description does not explain what the 'role', 'query', or 'username' parameters represent or how they should be used. It adds no value beyond the parameter names in the schema.

    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 clearly states the verb 'execute' and the resource 'DAX query' with the context 'under a specific role'. It distinguishes the tool from sibling tools like pbi_execute_dax, which lacks the role context, and from role management tools like pbi_list_roles.

    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?

    The description implies usage when a DAX query needs to be executed under a specific role, but it does not explicitly state when to use this tool versus alternatives like pbi_execute_dax, nor does it mention prerequisites or when not to use it.

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

  • Behavior2/5

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

    No annotations are provided, so the description must disclose behavior. It does not explain the effect of the 'include_hidden' parameter or mention that the tool is read-only, leaving the agent to infer default behavior.

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

    Conciseness4/5

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

    The description is a single sentence, making it very concise. However, it is too brief to cover necessary details, but conciseness itself is good.

    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?

    Despite having an output schema, the description lacks context about the return structure, how 'include_hidden' affects results, and what 'all model measures' includes (e.g., hidden vs visible).

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

    Parameters1/5

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

    With 0% schema description coverage, the description must explain the parameter 'include_hidden', but it does not even mention it, forcing the agent to rely solely on the parameter name.

    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 'List all model measures' uses a specific verb (List) and resource (model measures), clearly distinguishing it from sibling tools like pbi_list_tables or pbi_list_pages.

    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?

    The description implies usage when one needs to see all measures, but it offers no explicit guidance on when to use this tool versus alternatives or any prerequisites.

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

  • Behavior2/5

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

    No annotations are provided, so the description must convey behavioral traits. It only states 'read,' implying a non-destructive operation, but lacks details about prerequisites, side effects, or authentication needs. The transparency is minimal.

    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?

    The description is a single concise sentence that front-loads the core action. Every word is relevant, and there is no superfluous content.

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

    Completeness3/5

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

    Given the tool's simplicity (2 required params, output schema present), the description is adequate for a basic understanding. However, the lack of parameter details and behavioral context means it is not fully complete, especially for an agent encountering this tool for the first time.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description does not explain the parameters (project_path, relative_file). The parameter names are somewhat self-explanatory, but without any additional context from the description, the agent may not know the required format or constraints. The description entirely fails to compensate for the missing schema descriptions.

    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 clearly states the tool reads one TMDL file from a Power BI Project definition folder. It uses a specific verb ('read') and resource ('TMDL file'), and among siblings like pbi_list_tmdl_files and pbi_write_tmdl_file, it distinguishes itself as a read operation.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives. For example, pbi_list_tmdl_files could be used to list available files before reading, but no such advice is given. The description is minimal and does not help the agent decide between tools.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden. It mentions 'one-shot' and the effect of wallpaper_fit, but fails to disclose whether the tool modifies the file in place, requires permissions, or any side effects. The presence of an 'output_path' parameter implies potential file creation, but this is not stated.

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

    Conciseness3/5

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

    The description is short but includes some redundancy (e.g., listing enum values inline). The sentence 'See module docstring for the full flow.' is a weak reference that suggests the description is incomplete. It could be more self-contained.

    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?

    Given the tool's complexity (7 parameters, no schema descriptions, expected output not explained), the description is insufficient. It does not clarify the return value (despite having an output schema), the effect of 'custom_spec', or how 'pages' filtering works. The agent would need additional context to use the tool correctly.

    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?

    The input schema has 0% documentation coverage and 7 parameters. The description only explains 'wallpaper_fit' in detail (enum values and default behavior). No information is provided about 'preset', 'pages', 'custom_spec', 'output_path', or 'wallpaper_path'. This leaves the agent guessing about critical parameters.

    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 clearly states the tool's function: 'Apply a one-shot visual style preset to an existing .pbix.' It uses a specific verb-resource pair and distinguishes from siblings like pbi_apply_design or pbi_apply_theme by mentioning 'visual style preset' and 'one-shot'.

    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?

    The description provides guidance on the optional 'wallpaper_fit' parameter and its default behavior, but it does not explicitly state when to use this tool over alternative tools such as pbi_apply_format_preset or pbi_apply_theme. The reference to 'See module docstring' is insufficient for in-context usage guidance.

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

  • Behavior2/5

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

    No annotations provided, so the description carries full burden. It only states the action without revealing if it's read-only, requires a connection, or any side effects. Minimal disclosure.

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

    Conciseness3/5

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

    Extremely concise at two words. While not verbose, it lacks sufficient context for a tool with no annotations. Could benefit from a sentence about scope or behavior.

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

    Completeness3/5

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

    For a simple list tool with an output schema, the description is adequate but minimal. It doesn't mention what is returned or any filtering options, leaving gaps in context.

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

    Parameters3/5

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

    No parameters exist, so schema coverage is 100%. The description adds no parameter meaning beyond what the schema provides, but baseline is 3 for high coverage.

    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 'List model relationships' uses a specific verb (list) and a clear resource (model relationships). It clearly distinguishes from sibling tools that list other entities like tables or measures.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives like pbi_validate_relationship_plan or pbi_describe_page. The agent is given no hints about appropriate context.

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

  • Behavior2/5

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

    No annotations provided, so the description must disclose behavior. It mentions case-insensitive matching, but lacks details on permanence, permissions, effects on other members, and error handling. For a destructive operation, this is insufficient.

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

    Conciseness3/5

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

    The description is very concise at one sentence, front-loading the action. However, it lacks necessary detail, making it underspecified rather than efficiently complete.

    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?

    Given the tool's destructive nature and zero annotation coverage, the description should cover return values, error conditions, and idempotency. It does not, leaving the agent underinformed.

    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 coverage is 0%, so description must compensate. It only clarifies the matching behavior for 'member_name' but does not explain the 'role' parameter or provide examples. The description adds minimal value beyond parameter names.

    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 clearly states the action ('Remove a member from a role') and specifies the matching criterion (MemberName, case-insensitive). It distinguishes from sibling tools like pbi_add_role_member and pbi_delete_role.

    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?

    No explicit guidance on when to use or not use this tool. The purpose is implied by the name and description, but there are no references to alternatives or prerequisites.

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

  • Behavior3/5

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

    With no annotations, the description carries the full burden. It discloses the side effect of breaking DAX expressions, which is key. However, it omits other behavioral traits such as impact on relationships, immediacy, or naming constraints.

    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 with no wasted words. The first sentence states the purpose, the second adds a critical warning. Perfect front-loading and conciseness.

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

    Completeness3/5

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

    The tool has an output schema and 2 parameters. The description covers the core rename operation and a key warning, but lacks details like naming rules, relationship handling, or confirmation of success. Adequate but with gaps.

    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%, so the description must add meaning. It mentions the parameters implicitly but does not describe constraints like valid characters, uniqueness, or case sensitivity. The parameter names are self-explanatory, but the description adds minimal value.

    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 clearly states 'Rename a table', specifying the verb and resource. However, it does not differentiate from sibling tools like pbi_rename_column or pbi_rename_measure, which have similar purposes.

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

    Usage Guidelines2/5

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

    The description includes a warning about updating dependent DAX expressions, but does not provide when to use this tool versus alternatives, prerequisites, or context for when renaming is appropriate.

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

  • Behavior2/5

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

    No annotations are provided, so the description must disclose behavior. It only states it validates, giving no insight into side effects, error handling, or whether it modifies state. This is minimal transparency.

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

    Conciseness4/5

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

    The description is a single concise sentence that front-loads the key purpose. No unnecessary words, appropriate length.

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

    Completeness3/5

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

    Given one parameter and no annotations, the description is minimally complete for a simple validation tool. The existence of an output schema may compensate for missing return value details, but the description could mention what validation produces (e.g., success/error).

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

    Parameters1/5

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

    The schema has 0% description coverage. The description does not add meaning to the parameter 'filter_expression', such as format requirements or that it must be a boolean DAX expression. No value beyond the parameter name.

    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 uses a specific verb 'Validate' and resource 'DAX boolean filter expression' with context 'before visual probes', clearly distinguishing from sibling tools like pbi_validate_dax or pbi_execute_dax.

    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?

    The description implies usage before visual probes but does not explicitly state when to use this tool versus alternatives like pbi_validate_dax, nor does it provide exclusions or conditions.

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

  • Behavior4/5

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

    No annotations provided, so the description carries full burden. It explains OCR privacy implications (captures entire desktop, returns only signal labels) and default behavior of use_windows_ocr. However, it does not disclose side effects like whether the file remains open or Desktop state changes.

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

    Conciseness4/5

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

    The description is relatively short, with a clear main sentence and a focused paragraph on OCR behavior. It is front-loaded with purpose. However, the OCR paragraph could be more concise.

    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?

    With six parameters and no annotations, the description is incomplete. It lacks information about the output/return value (despite an output schema, the description should still hint at what the agent can expect) and does not cover many parameter behaviors.

    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%, yet only one parameter (use_windows_ocr) is explained in detail. The other five parameters (pbix_path, close_after, screenshot_path, timeout_seconds, analyze_screenshot) receive no description, leaving the agent uninformed about their purpose.

    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 clearly states the tool opens a PBIX and scans for visible repair-error signals. It provides a specific verb and resource, but does not explicitly differentiate from sibling tools like pbi_diagnose_pbix_dbcc or pbi_validate_pbix_persistence.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool vs alternatives (e.g., other validation or diagnostic tools). No prerequisites or restrictions mentioned.

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

  • Behavior2/5

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

    No annotations are provided, so the description must disclose behaviors. It fails to mention side effects, required permissions, what happens if the table already exists, or any other behavioral traits beyond the action itself.

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

    Conciseness3/5

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

    The description is very short (2 sentences) and front-loaded, but lacks structure (e.g., bullet points for parameters). Every sentence adds value, but important details are omitted.

    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?

    Given the tool's complexity (5 params, 0% coverage, output schema exists), the description is incomplete. It does not explain the return value, overwrite behavior, or precedence meaning, leaving significant gaps.

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

    Parameters3/5

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

    Schema coverage is 0%, so the description must compensate. It explains the items parameter structure but leaves out table_name, column_name, overwrite, and precedence. Partial value added, but insufficient for full semantic clarity.

    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 clearly states the tool's action: 'Create a calculation group table with its Name column and optional calculation items.' It is specific and distinguishes from siblings like pbi_delete_calc_group and pbi_list_calc_groups.

    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?

    The description implies usage for creating a calculation group but provides no explicit guidance on when to use this versus alternatives (e.g., pbi_create_table) or prerequisites. No exclusions or context are given.

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

  • Behavior2/5

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

    With no annotations provided, the description must disclose behavioral traits. It indicates the tool creates a measure with a specific DAX formula but does not mention side effects, destructive actions, authentication needs, or the effect of the 'overwrite' parameter. The description lacks transparency about what happens to existing measures or data.

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

    Conciseness4/5

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

    The description is concise, using a few sentences and a code block. It is front-loaded with the purpose and provides the DAX template efficiently. No wasted words, though it could be slightly more structured with explicit parameter descriptions.

    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?

    Given the tool's complexity (10 parameters, 0% schema coverage, no annotations), the description is incomplete. It does not explain the output despite an output schema existing, fails to cover half the parameters, and omits constraints or prerequisites. The agent would need to infer many details.

    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%, so the description must compensate. It explains the roles of base_measure, dimension_table, dimension_column, n, and rank_measure through the DAX template and notes the default for rank_measure. However, it does not explain other parameters like measure_name, format_string, display_folder, overwrite, or table, leaving 5 of 10 parameters undocumented.

    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 clearly states the tool creates a Top-N filter measure, provides the DAX template, and specifies its use for a chart visual. This distinguishes it from other measure creation tools like pbi_create_measure or pbi_create_rolling_average_measure.

    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?

    The description explains when to use the tool ('Use as the value of a chart visual to surface only the top N members of a dimension') and notes that rank_measure defaults to base_measure. However, it does not mention when not to use it or provide alternatives among the many sibling measure tools.

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

  • Behavior3/5

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

    With no annotations provided, the description carries the full burden of disclosing behavioral traits. It correctly notes that deleting a table removes associated relationships and measures, which is a critical side effect. However, it does not mention potential impacts on visuals or other dependencies, nor does it state if the operation is reversible or requires confirmation. The disclosure is useful but incomplete.

    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?

    The description is extremely concise, consisting of two short sentences that deliver the core purpose and key side effect without any unnecessary words. The main action is front-loaded in the first sentence, making it easy for an agent to quickly grasp the tool's function.

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

    Completeness3/5

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

    For a simple tool with one parameter and no annotations, the description covers the primary purpose and a major side effect. However, it lacks broader context such as when deletion is appropriate, whether the operation is destructive and irreversible, or how it integrates with other tools like pbi_list_tables. The presence of an output schema is not utilized in the description. Overall, it meets minimal completeness but has notable gaps.

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

    Parameters1/5

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

    The input schema has one parameter, 'name', with no description (0% coverage). The tool description does not elaborate on what the 'name' parameter expects, such as the table name format or case sensitivity. Given the low schema coverage, the description fails to compensate by adding parameter meaning, leaving the agent with only the parameter name to infer its role.

    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 clearly states the tool deletes a table, using a specific verb and resource. It distinguishes itself from sibling tools like pbi_delete_column, pbi_delete_measure, and pbi_delete_relationship by specifying the target object. The addition of side effects (removing relationships and measures) further clarifies the scope.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives such as pbi_rename_table or pbi_delete_column. There is no mention of prerequisites, safe conditions, or scenarios where deletion is appropriate. The agent receives no help in selecting this over other delete or modification tools.

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

  • Behavior2/5

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

    No annotations provided, so description bears full burden. It explains the requirement entry structure but does not disclose potential side effects, required permissions, or read-only behavior. Minimal depth for behavioral understanding.

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

    Conciseness4/5

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

    Description is short (2 sentences) and front-loaded with main action. The requirement structure is listed inline but clear. No unnecessary words.

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

    Completeness3/5

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

    Output schema exists, so return values need not be explained. But description omits details on 'extract_folder' and 'page' parameters, and lacks usage context. Adequate for basic understanding but incomplete given 3 required params and many siblings.

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

    Parameters3/5

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

    Schema coverage 0% but description adds meaning to 'requirements' parameter by detailing its dict structure (visual_type, count, contains_field, label). However, 'extract_folder' and 'page' are not described. Partial compensation for low coverage.

    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 clearly states the tool's purpose: 'Detect required visuals that are absent from a page.' It uses a specific verb ('detect') and resource ('required visuals'), distinguishing it from siblings like 'pbi_detect_empty_visuals'.

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

    Usage Guidelines2/5

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

    No explicit guidance on when to use this tool versus alternatives like 'pbi_detect_empty_visuals' or 'pbi_describe_page'. No when-not-to-use or context for selection among many detection tools.

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

  • Behavior3/5

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

    With no annotations, the description carries full burden. It discloses that the tool performs an audit and lists check categories, implying it's read-only and returns results. However, it does not mention permissions, connection requirements, or side effects. Adequate but not comprehensive.

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

    Conciseness4/5

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

    One sentence efficiently listing example checks. No wasted words, though it could front-load the main purpose more explicitly. Overall concise.

    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?

    Tool is simple (one param, output schema exists). Description lists checks performed, which is sufficient for a validation tool. It doesn't need to explain output since schema exists. Minor gap: no mention of the parameter, but otherwise complete.

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

    Parameters1/5

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

    Schema description coverage is 0%. The single parameter include_warnings is not mentioned in the description, so the description adds no meaning beyond the schema. With such low coverage, the description should compensate, but it fails to do so.

    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?

    Description clearly states the tool audits the model for common issues, listing specific examples like empty expressions, missing format strings, orphan tables, duplicate measure names. It ties to the name 'validate_model' and distinguishes from siblings like pbi_audit_model by specifying the type of checks.

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

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to use this tool versus alternatives (e.g., pbi_audit_model, pbi_lint_dax). No description of prerequisites, context, or situations to avoid. The agent is left to infer applicability.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries the full burden of behavioral disclosure. It only mentions validation aspects but does not state that the tool is read-only, what the output looks like, or any prerequisites (e.g., existing tables/columns). The description is insufficient to fully understand the tool's behavioral traits.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single sentence with no wasted words. It is concise but could benefit from a slightly more structured breakdown of the validation checks. Still, it is appropriately sized for the content.

    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?

    Given 7 parameters and 4 required, the description is too brief. It does not explain what 'ambiguity' or 'duplicates' refer to, nor what the output schema contains. The existence of an output schema is assumed but not leveraged. The description lacks key details for a comprehensive understanding.

    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 coverage is 0%, so the description must compensate. It mentions cardinality, direction, duplicates, and ambiguity, which map to some parameters, but does not explain parameters like 'is_active' or provide details on format or allowed values. The description adds minimal value beyond the schema.

    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 clearly states it validates relationship cardinality, direction, duplicates, and ambiguity before creation. It uses a specific verb 'Validate' and resource 'relationship plan', distinguishing it from sibling tools like pbi_create_relationship and pbi_update_relationship.

    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?

    The phrase 'before creation' implies it should be used to validate a proposed relationship, but there is no explicit guidance on when to use it vs. alternatives, what prerequisites are needed, or what constitutes a valid plan. The usage context is implied but not fully explicit.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description must carry the full burden. It explains the DAX formula but does not disclose behavioral traits such as overwrite behavior, authorization needs, or side effects. The tool modifies the model, but this is not explicitly stated.

    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?

    The description is extremely concise with two sentences and a code block. It front-loads the purpose and provides a clear DAX template with example usage. No wasted words.

    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?

    Given the tool has 7 parameters with no schema descriptions, the description is not complete. It explains the logic of the contribution measure but does not clarify the role of each parameter or return value. With a sparse context, more detail is needed for safe usage.

    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%, so the description must compensate. It provides meaning for scope_columns with an example but does not explain the other 6 parameters (table, base_measure, measure_name, overwrite, format_string, display_folder). Only partial semantic value is added.

    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 clearly states the tool creates a %-of-total contribution measure. It provides the DAX template and explains the denominator scope, making it distinct from generic create-measure siblings like pbi_create_measure or other specialized measures.

    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?

    The description implies usage for creating contribution measures with a specific DAX pattern but does not explicitly state when to use this tool versus alternatives like pbi_create_measure. No exclusions or when-not-to-use guidance is given.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations provided. Description only shows a DAX template but doesn't disclose behavior such as overwrite effects, naming, permissions, or side effects. The template gives some insight but insufficient.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Description is short and includes a code block for the DAX template. It is front-loaded with the purpose. Could be slightly improved by adding structure or brief notes on parameters.

    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?

    Given 10 parameters with no schema descriptions, the description does not sufficiently compensate. Lacks explanations for many parameters, no usage examples, and does not mention output schema. Incomplete for the tool's complexity.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 0% (no descriptions), but the DAX template provides meaning for key parameters (date_table, date_column, window, granularity, base). However, other parameters like overwrite, measure_name, format_string, display_folder are not explained in the description.

    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?

    Clearly states 'Create a trailing rolling average measure' which is a specific verb and resource, and distinguishes from other measure creation tools like pbi_create_measure or pbi_create_variance_measure.

    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?

    Implies usage for rolling average creation, but no explicit when-to-use or comparisons with alternative measure tools. Among many sibling tools for different measures, guidance is missing.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description should disclose behavioral traits like being read-only or requiring a connection. It only restates the name's intention, adding no extra behavioral insight.

    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?

    The description is a single, direct sentence with no unnecessary words. It is appropriately concise for a zero-parameter tool.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Although an output schema exists and there are no parameters, the description does not provide any context about prerequisites (e.g., connection) or what 'items' refers to. It is minimally adequate.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100% (no parameters), so baseline 3 is appropriate. The description adds no value beyond what the schema already indicates.

    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 clearly states the tool lists calculation groups and their items, distinguishing it from sibling tools like pbi_list_measures or pbi_list_pages by specifying the exact resource.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool versus alternatives or any prerequisites. The description lacks any context for usage decisions.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations provided, the description must disclose behaviors. It mentions the dual set/remove behavior based on filter_expression value, but lacks details on side effects (e.g., overwriting existing filters), error handling, idempotency, or required permissions. The behavioral disclosure is partial.

    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?

    The description is a single sentence that immediately communicates the core functionality and the special case for removal. Every word serves a purpose; no fluff or redundancy.

    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?

    Given the complexity (3 required params, no schema descriptions, no annotations, but has an output schema), the description is minimally complete. It omits essential context like return value, behavior on missing roles/tables, and whether the filter replaces or appends. More information is needed for safe usage.

    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%, so the description must compensate. It adds meaning for 'filter_expression' (DAX filter, removal if None/empty) but does not explain 'role' and 'table' parameters (likely names, no format hints). The description incompletely covers the three parameters.

    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 clearly states the action: setting or removing an RLS DAX filter on a table for a role. It specifies the verb ('Set (or remove)'), resource ('RLS DAX filter on a table for a role'), and distinct condition (removal when filter_expression is None/empty), differentiating it from sibling tools like pbi_add_role_member or pbi_validate_filter_expression.

    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?

    The description implies usage for setting or removing RLS filters but provides no explicit guidance on when to use this tool versus alternatives (e.g., pbi_validate_filter_expression for validation) or prerequisites (e.g., role and table must exist). No when-not-to-use scenarios are mentioned.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries the full burden. It explains internal storage details and that it writes the canonical shape, but does not disclose side effects like overwriting existing formatting, required permissions, or behavior on unsupported visual types.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is well-structured with a clear one-liner followed by a docstring-style parameter list. It is appropriately sized for the tool's complexity, though the internal technical details could be seen as extra.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the complexity (10 parameters, 5 required) and no annotations, the description covers core functionality but misses explanations for several required parameters and does not mention the output or return value, even though an output schema exists.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The description adds meaning for some parameters (column_name case-insensitivity, format_type options, color hex strings, icon_set choices) but omits explanations for required parameters like extract_folder, page, and visual_id, despite schema coverage being 0%.

    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 clearly states the action (add) and the resource (table/matrix conditional formatting), listing the three supported types. It is specific and distinguishes itself from sibling tools like pbi_set_visual_format_property.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to use this tool versus alternatives (e.g., pbi_set_visual_format_property). No prerequisites or context provided for when conditional formatting should be applied.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description discloses several behaviors: it creates a persistent file, injects sentinel rows for string store consistency, and applies style presets via another tool. However, it does not mention potential side effects like file overwrite, authentication needs, or resource impact, which are important for a creation tool.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is structured with separate paragraphs for key parameters and is front-loaded with the main purpose. While it is somewhat lengthy, most sentences add value, and the structure aids readability.

    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?

    Given the tool's complexity with 10 parameters, the description is incomplete. It explains two edge-case parameters but fails to describe core required parameters like output_path, tables, and measures. The existence of an output schema does not compensate for missing input parameter descriptions.

    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%, so the description must explain parameters. It covers prime_string_store and style_preset group well, but omits descriptions for 8 other parameters (e.g., output_path, tables, measures, relationships), leaving a significant gap in understanding required inputs.

    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 clearly states the tool creates a persistent PBIX with DataModel, DAX measures, relationships, pages, and native visuals. This is a specific verb+resource that distinguishes it from sibling tools for individual components.

    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?

    The description provides guidance on when to enable/disable prime_string_store and mentions style_preset application. However, it does not explicitly state when to use this comprehensive tool versus building reports piecewise with sibling tools, leaving usage context unclear.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description carries the full burden. It discloses the DAX formula and default behavior, but does not mention side effects like overwriting existing measures, permission requirements, or other behavioral traits beyond the formula.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is concise with a single sentence and a code block. It is front-loaded with the purpose. However, it could be slightly better structured by listing parameters or providing more explicit guidance.

    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?

    Given the tool has 10 parameters and an output schema (present in context but not described), the description is incomplete. It does not mention return values or explain all parameters, making it hard for an agent to fully understand usage.

    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%, so the description must compensate. It explains some parameters (base, offset, granularity, date table, date column) and gives defaults, but fails to document many others (table, overwrite, measure_name, format_string, display_folder). This leaves significant gaps.

    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 clearly states 'Create a period-over-period variance measure', which is a specific verb+resource pair. It distinguishes itself from sibling tools like pbi_create_measure or pbi_create_rolling_average_measure by explicitly mentioning period-over-period variance and providing the DAX template.

    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?

    The description gives context about default offset and granularity options, implying a typical use case. However, it does not explicitly state when to use this tool versus alternatives like pbi_create_measure or pbi_create_topn_measure, nor does it provide when-not-to-use guidance.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    It discloses writing to output_path, returning path and summary, and lists output sections. However, it is unclear whether it runs analyses itself or aggregates existing results, and no mention of side effects or permissions.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is short and front-loaded with purpose, listing output sections concisely. No extraneous text, but could benefit from a brief note on parameters.

    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?

    Given the presence of an output schema (signalled true), return values are partially covered. However, parameter descriptions are missing, and the aggregation process (whether it runs analyses or reads state) is ambiguous. This leaves gaps for a 4-parameter tool.

    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?

    With 0% schema description coverage, the description only mentions output_path in backticks without explaining its purpose. The other three parameters (extract_folder, rubric_criteria, fact_table_hints) are not described at all, leaving the agent unable to understand their semantics.

    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 clearly states it generates a Markdown correction report aggregating all analysis tools, and lists specific output sections (model overview, star-schema verdict, etc.). This distinguishes it from sibling analysis tools like pbi_validate_star_schema or pbi_detect_circular_dependencies.

    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?

    The description implies it should be used after running analysis tools, but does not explicitly state when to use it vs alternatives like pbi_export_validation_report. No prerequisites or exclusions are mentioned.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description carries full burden. It explains the core behavior (creates/updates parameter, rewrites partitions) and default behavior for 'partitions' but does not discuss side effects, reversibility, or the effects of 'dry_run' and 'refresh_after'.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is concise with two paragraphs, no fluff, and front-loaded with the main purpose and workflow. It could be more structured but is efficient.

    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?

    With 5 parameters and an output schema existing, the description only explains 2 parameters, ignores 'dry_run' and 'refresh_after', and does not mention prerequisites (e.g., connection) or side effects. It is incomplete for a tool of this complexity.

    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%. The description adds meaning for 'parameter_name' and 'file_path' implicitly, and explains 'partitions' thoroughly, but 'dry_run' and 'refresh_after' are not described at all. Only 2 of 5 parameters get sufficient explanation.

    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 clearly states the tool's purpose: making data sources portable via a Power Query parameter. It uses specific verbs ('parameterize', 'rewrites', 'wires in') and distinguishes from siblings by focusing on parameterization for portability rather than direct relocation.

    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?

    The description explains the benefit (collaborators can change file location via Manage parameters) but does not explicitly contrast with alternatives like 'pbi_relocate_data_source'. It implies usage for hardcoded paths but lacks when-not-to-use guidance.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description carries full burden for behavioral disclosure. The description states 'Pre-build DBCC risk analysis' and 'catch empty-String-column risks up front,' implying a read-only validation, but it does not explicitly state that the tool has no side effects, does not modify data, or what permissions are needed. It also lacks details on output behavior (beyond mirroring input shape) or error conditions. This is insufficient for an AI agent to understand the tool's impact.

    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?

    The description is extremely concise: three sentences, no redundant words. The first sentence states the purpose, the second provides context by naming sibling tools, and the third gives direct usage guidance. This structure front-loads the key information and is easy to parse.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The tool has a single parameter and an output schema, so the description need not detail return values. However, the description lacks explanation of domain terminology ('DBCC'), does not clarify that this is a validation step (non-destructive), and provides limited context about what the analysis result includes beyond 'empty-String-column risks.' Given the tool's simplicity and existence of an output schema, the description is adequate but not thorough.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The input schema has one parameter 'tables' with 0% description coverage. The description adds meaning by explaining that this parameter should mirror the input shape of two other tools and that passing the same list enables catching empty-string-column risks. This provides critical usage context that the schema alone does not. However, the description does not detail the expected structure of the objects within the arrays, relying on the referenced tools' schemas. This is partially compensating but could be more explicit.

    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 clearly states the tool performs 'Pre-build DBCC risk analysis on a tables spec.' It specifies the verb ('analyze') and resource ('tables spec'). It also names sibling tools (pbi_create_persistent_report_tool, pbi_scaffold_pbix_tool), indicating a pre-check role. However, the acronym 'DBCC' is not explained, and the description could be more precise about what 'risk analysis' covers beyond empty-string columns.

    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 explicitly states the input shape mirrors two specific tools and advises to pass the same tables list before calling the builder to catch risks upfront. This gives clear context for when to use: before those builders. However, it does not explicitly state when not to use or provide alternative tools for other checks. The guidance is clear but could be more comprehensive.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations provided, the description carries full burden but only states the basic operation (setting data type and optional format). It does not disclose potential side effects (e.g., data truncation, conversion failures), required permissions, or whether changes are reversible. For a mutation tool, this is insufficient behavioral transparency.

    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?

    The description is concise with three sentences: the main action, the use case, and the accepted values for data_type. It is front-loaded and contains no redundant words. Every sentence adds necessary information.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The description covers the core functionality and a common scenario. However, for a mutation tool, it lacks explanation of return value (output schema exists but is not leveraged in description), error conditions, or prerequisites. This leaves gaps for an AI agent to understand fully correct invocation.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The schema has 0% description coverage, so the description must add meaning. It explains that data_type accepts standard TOM names (Int64, Decimal, etc.), which is helpful. For format_string, it only notes it's optional. table and column are not elaborated. This adds moderate value but could provide more detail on format string syntax or validation rules.

    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 clearly states the tool's action: 'Set the DataType (and optionally FormatString) of an existing column.' It specifies the resource (column in a table) and that it works for any column kind. However, it does not explicitly differentiate from sibling tools like pbi_set_format, which might also set format properties, though the focus on data type is distinct.

    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 provides a specific use case: 'Use when Power Query type hints are overridden by PBI's downstream inference and the column ends up as the wrong type.' This gives clear context for when to apply the tool. However, it does not mention when not to use it or suggest alternative tools, which would strengthen guidance.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description must disclose behavioral traits. It only states 'update properties' without explaining side effects like refreshes, permission requirements, or if the relationship must exist. This leaves critical gaps.

    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?

    The description is a single, front-loaded sentence that states the purpose and key updateable properties. No wasted words.

    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?

    Given the tool has 9 parameters with 0% schema coverage, no annotations, and an output schema, the description is too brief. It lacks information on how to use parameters, return values, or behavioral nuances. Many aspects are left unexplained.

    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%, so the description must compensate. It lists only four properties (cardinality, direction, is_active, name) but the schema has nine parameters including from_table, to_table, from_column, to_column, new_name. The description does not explain these or clarify their roles.

    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 clearly states the verb 'update' and the resource 'existing relationship', and lists specific properties (cardinality, direction, is_active, name). It distinguishes from siblings like pbi_create_relationship and pbi_delete_relationship.

    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 tool name and description imply it is for modifying existing relationships, and the sibling tools provide context. However, explicit guidance on when to use versus alternatives (like creating or deleting) is missing.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description must carry the burden. It details that force kills Power BI Desktop, save_before_close sends Ctrl+S and waits, and that the save attempt is best-effort. These are important side-effect disclosures. However, it does not explain the fail_on_persistence_risk parameter's behavior.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is multi-paragraph but well-structured, with clear information flow. Each sentence contributes value, though it could be slightly more concise. The separation of force and save_before_close details is logical.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's complexity (6 parameters, output schema exists), the description covers the critical risky behaviors (force, save before close) and mentions the response includes save_attempt telemetry. However, it omits details on include_hidden and fail_on_persistence_risk, leaving gaps.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, so the description must compensate. It explains 'force' and 'save_before_close' behavior, but the other four parameters (pbix_path, extract_folder, include_hidden, fail_on_persistence_risk) are not described. This partial coverage adds some meaning but is insufficient for a zero-coverage schema.

    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 clearly states 'Patch the modified Report/Layout back into the PBIX archive.' This is a specific verb-resource combination. Among many pbi_ tools, this one focuses on layout patching, though no explicit sibling differentiation is provided.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description does not specify when to use this tool over alternatives like pbi_compile_report or pbi_persist_now. It explains internal behavior (force, save_before_close) but lacks guidance on selecting this tool among siblings.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description carries full burden. It discloses that it applies format strings but does not mention whether it overwrites existing formats, requires permissions, or any side effects. This is insufficient for a modification tool.

    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?

    The description is a single concise sentence with no wasted words, front-loading the core action.

    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?

    Given the tool's simplicity (batch apply), the description is mostly complete. An output schema exists, so return values are covered. It could mention behavior when names are missing, but overall adequate.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, but the description adds meaning by mentioning 'measures or columns', hinting at the object_type parameter. However, it does not explain the names, table, or format_string parameters beyond their schema titles, leaving gaps.

    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 clearly states the tool batch-applies format strings to measures or columns, using specific verbs ('Batch-apply') and resource ('format strings to measures or columns'), distinguishing it from sibling tools like pbi_set_series_color or pbi_set_visual_format_property.

    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?

    The description implies usage for batch formatting but lacks explicit guidance on when to use this tool over individual format-setting tools, and does not mention prerequisites or alternatives.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations provided. Description states it applies presets to a list of items and lists supported families, but does not disclose overwrite behavior, error handling, or permission needs. The description adds moderate value beyond the schema.

    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 focused sentences with no fluff. Front-loaded with the action, then explanation and examples. Each sentence earns its place.

    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?

    Despite an output schema (not shown), the description lacks prerequisites, return value description, and explicit handling of multiple items. Given 0% schema parameter coverage and no annotations, the description is insufficiently complete.

    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?

    With 0% schema description coverage, the description should elaborate on parameters. It lists preset families but does not describe 'names', 'table', 'preset', or 'object_type' beyond implying object_type can be measure or column. Incomplete for a 4-param tool.

    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?

    Description clearly states the tool applies a named format preset to measures or columns, with specific verb 'Apply' and resource list. Distinguishes from sibling pbi_set_format by noting it wraps that tool for convenience.

    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?

    Description advises using pbi_list_format_presets_tool to inspect presets and mentions it avoids memorizing raw format strings, but does not explicitly contrast with direct use of pbi_set_format or specify when to prefer this tool.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description bears full responsibility. It only states the function without disclosing side effects, permissions, rate limits, or return format details like what 'summary metrics' include. The behavioral transparency is minimal.

    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?

    The description is extremely concise at 7 words, with no wasted text. It is front-loaded with the verb and resource.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's simplicity (no parameters, list-only), the description is minimally adequate. However, it does not elaborate on what 'summary metrics' means, leaving ambiguity. With an output schema likely providing details, this is partial but not fully complete.

    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 tool has zero parameters, and schema description coverage is 100% (vacuous). The description adds no parameter info, but since none exist, the baseline of 4 is appropriate.

    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 clearly states the action ('List'), the resource ('scaffold templates'), and adds specificity ('with summary metrics'). This distinguishes it from sibling tools that list other entities or perform different actions.

    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?

    The description implies a simple retrieval use case but provides no explicit guidance on when to use this tool versus alternatives like pbi_list_tables or pbi_list_measures. No when-not-to-use or prerequisites are mentioned.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    The description discloses the tool's behavior: it runs a zero/one-row probe, wraps expressions in EVALUATE ROW or TOPN(0,...), and performs semantic checks on references and format strings. It does not mention destructive actions, which is appropriate. However, it omits details on error handling beyond 'catching errors'.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is relatively concise, using three short paragraphs. The first sentence gives a clear summary, and details follow. Minor redundancy in separating scalar/table and semantic explanations, but overall efficient.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The tool's complexity (two modes, semantic flag) and output schema presence reduce the burden, but the description lacks explanation for several parameters and does not describe the return format or error behavior. It is adequate but not fully complete.

    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?

    With 0% schema description coverage, the description should explain all parameters. It explains 'kind' and 'semantic' but neglects 'expression', 'format_string', and 'include_hidden'. This leaves three of the five parameters undefined, which is a significant gap.

    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 clearly states the tool's purpose: parse-check a DAX expression through a zero/one-row probe. It distinguishes between two modes (scalar and table) and mentions semantic checking, which sets it apart from siblings like pbi_execute_dax or pbi_lint_dax.

    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?

    The description provides context for when to use the tool (to validate DAX syntax) and hints at a sibling tool for semantic details, but it does not explicitly state when not to use it or how it compares to alternatives like pbi_lint_dax or pbi_execute_dax.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations exist, so the description carries full burden. It explains regex support and matching semantics but omits details on error handling, return format, or behavior for unspecified parameters. The tool's read-only nature is implicitly clear but not explicitly stated.

    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?

    The description is two sentences with no filler: the first states the core purpose, the second elaborates with examples and regex detail. Every sentence adds value, and it is front-loaded with the verb and resource.

    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?

    Despite having an output schema, the description fails to explain what the tool returns (e.g., boolean, list of matches). With 4 parameters and no annotations, deeper context on parameters and return value is missing, reducing completeness for effective invocation.

    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?

    With 0% schema description coverage, the description only adds meaning for the 'expected_steps' parameter (substring/regex). Parameters 'table', 'case_sensitive', and 'partition_name' are unexplained, leaving significant gaps for an agent to infer usage.

    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 clearly states the tool verifies that a Power Query (M) expression contains expected step patterns, with a specific verb ('verify') and resource. It provides concrete examples (e.g., checking postal-code left-padding) and distinguishes itself from sibling tools focused on DAX or model validation.

    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 explicitly positions this tool for grading exercises and gives illustrative use cases. While it doesn't enumerate when not to use it or mention alternatives, the sibling context and examples imply appropriate usage without needing further exclusion.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries full burden. It discloses the core behavior (substring replacement), skipped partitions, and dry_run effect. However, it does not mention behavior for case_sensitive or refresh_after parameters, nor any potential side effects or permissions.

    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?

    Four sentences, front-loaded with core action. Every sentence adds value: purpose, usage trigger, matching logic, and dry_run option. No redundant or vague words.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 5 parameters and an output schema, the description covers the primary use case but omits two boolean parameters. It does not mention the output format, but output schema exists. It lacks context on prerequisites or side effects.

    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%, so description must compensate. It explains old_path, new_path, and dry_run, but ignores refresh_after and case_sensitive entirely. Only 3 of 5 parameters are addressed, leaving significant gaps.

    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 clearly states the tool bulk-rewrites a hardcoded file or folder path inside every M partition, using strong verb 'bulk-rewrite' and specific resource. It distinguishes from sibling tools by focusing on substring replacement in M partitions, a niche not covered by other pbi_* tools.

    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?

    Explicitly states 'Use when a workbook moves and queries break with DataSource.NotFound', providing a clear trigger. It also notes that calculated/query-source partitions are skipped, but does not mention alternatives or when not to use.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description bears full burden for behavioral disclosure. It explains the aggregation function and return type but lacks explicit statements about whether the tool is read-only, has side effects, or requires specific permissions. The implied behavior is safe (scoring), but not explicitly stated.

    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?

    The description is concise: two sentences for purpose and a structured bullet-like list for criteria details. It front-loads the main action and uses efficient formatting, with no extraneous information.

    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?

    Given the tool's complexity (2 params, no annotations, output schema exists), the description covers the key aspects: purpose, criteria structure, and return format. However, it omits details about the 'extract_folder' parameter, error handling, or prerequisites. The output schema likely complements, but the description could be slightly more complete.

    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 adds significant meaning to the 'criteria' parameter by detailing its structure (id, label, check with enum values, weight, params). However, the 'extract_folder' parameter is not described, leaving its purpose unclear. Since schema coverage is 0%, the description compensates well for the main parameter but not fully.

    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 clearly states the tool's purpose: 'Aggregate scoring across multiple validators.' It specifies the verb (aggregate) and resource (multiple validators), and provides details on criteria structure, making it easy for an agent to understand what the tool does and how it differs from sibling validation tools.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool vs. alternative sibling validators (e.g., pbi_validate_*). The description implies aggregation of scores but does not explicitly state use cases, prerequisites, or when to choose individual validators over this aggregator.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations provided, so description carries full burden. It explains the internal logic (heuristic for fact/dimension/bridge tables) and the optional fact_table_hints parameter. However, it does not explicitly state side effects (likely read-only) or the output format. The description provides good behavioral context beyond the schema.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Description is concise with two well-structured paragraphs. First paragraph states purpose and heuristic; second covers the optional parameter. Front-loaded with key information. No unnecessary words.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the output schema exists, description need not detail return values. However, it does not mention prerequisites (e.g., connected model), the output type, or how the heuristic applies to real-world scenarios. Adequate but not fully complete for a validation tool.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 0%, but the description adds meaning for one parameter (fact_table_hints), explaining its use for force-tagging tables. The other parameter (include_hidden) is not described. Partial compensation for low schema coverage, but incomplete.

    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?

    Description clearly states purpose: 'Confirm a model follows star schema topology.' It defines specific heuristic for fact/dimension/bridge tables and flags violations like snowflake and constellation. Distinguished from sibling validation tools like pbi_validate_model and pbi_validate_dax.

    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?

    Description implies usage for validating star schema structure but does not explicitly state when to use or exclude alternatives. No mention of prerequisites or comparison to other validation tools. Could be improved by specifying context where this tool is preferred.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description discloses key behaviors: overwrite mode, action in response, and error raising. It lacks details on permissions or side effects, but covers core behavioral traits.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is concise with front-loaded purpose, using two sentences. It could be more structured (e.g., bullet points for overwrite behavior), but it's efficient.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 9 parameters with 0% schema coverage, the description should compensate but only covers one parameter. Output schema likely documents returns, but the description is insufficient for parameter understanding.

    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 coverage is 0%, but the description only explains the 'overwrite' parameter. It does not clarify the meaning or constraints of other parameters like from_table, cardinality, direction, etc., which are critical for correct usage.

    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 states 'Create or update a single-column relationship', which is a specific verb+resource. It clearly handles both create and update, distinguishing it from siblings like pbi_delete_relationship and pbi_list_relationships.

    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 explains when to use overwrite=True vs False, and mentions the duplicate error. However, it doesn't explicitly compare with pbi_update_relationship, which could be an alternative.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries full burden. It explains the algorithm (builds graph from DAX tokens, DFS for cycles, separate self-reports), providing good transparency. Could add details on output format or side effects, but overall sufficient.

    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 dense sentences with no wasted words. The first sentence states purpose, the second explains methodology. Ideal conciseness.

    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?

    Given the tool's complexity (cycle detection in measures), the description covers the core algorithm and self-references. It lacks prerequisites or output details, but the presence of an output schema (not shown) reduces the need. Adequate overall.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters1/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The schema has one parameter (include_hidden) with 0% description coverage. The description does not mention it at all, failing to compensate for the schema gap. For a simple boolean, even brief mention would raise the score.

    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 clearly states the tool detects cycles in the measure dependency graph, using the specific verb 'detect' and resource 'measure dependency graph'. This distinguishes it from siblings like pbi_measure_dependencies (which lists dependencies) and other detect tools.

    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 implies use when circular dependencies are suspected in measures, but lacks explicit when-to-use or when-not-to-use guidance compared to siblings. No exclusions or alternatives are mentioned, which is a minor gap given the large sibling set.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    The description discloses that theme_json_path is validated against a schema and extra_measures are appended after the template baseline. However, it does not mention the behavior of open_after_create or prime_string_store parameters, nor any potential destructive actions (e.g., overwriting files). Since no annotations are provided, more behavioral detail would improve this score.

    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?

    The description is concise and front-loaded with the main action, followed by details on templates and optional parameters. Every sentence earns its place with no fluff.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The description covers the main purpose and several parameters, but it omits the two boolean parameters (open_after_create, prime_string_store). Given the complexity (6 params, 1 required) and presence of an output schema, the description is mostly adequate but not fully complete. Including all parameters would raise the score.

    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 explains the template parameter (listing values), theme_json_path (validation details), and extra_measures (appended after baseline). It does not describe output_path (implicit), open_after_create, or prime_string_store, but covers the key parameters well. This adds significant meaning beyond the schema.

    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 clearly states it creates a starter PBIX from a named template, lists specific templates, and mentions optional parameters like theme_json_path and extra_measures. This distinguishes it from sibling tools that modify existing reports (e.g., pbi_apply_theme, pbi_compile_report).

    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?

    The description implies the tool is for creating new PBIX files, but it does not explicitly state when to use it versus alternatives like pbi_compile_report or pbi_create_persistent_report. There is no guidance on prerequisites, exclusions, or when not to use it.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description carries the full burden. It discloses the internal storage mechanism and clarifies that defaultColor only applies to series without overrides. However, it does not mention permissions, side effects, or error conditions.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is moderately concise with three full sentences, front-loaded with the primary purpose. It adds necessary context but could be slightly shorter without losing clarity.

    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 explains the key distinction between per-series overrides and defaultColor, and how to target series. It does not mention output or required prerequisites, but the presence of an output schema may compensate for return value details.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The input schema has 7 parameters with 0% description coverage. The description adds meaning for series_index, series_name, and role, explaining how to target a series. It does not explain page, visual_id, color, or extract_folder beyond their names.

    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 clearly states the tool sets the fill colour for a single series of a chart visual, which is a specific verb and resource. It distinguishes from surrounding sibling tools like pbi_set_visual_format_property by focusing on per-series colour overrides.

    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 explains when to use this tool by contrasting with the defaultColor property, which affects all series uniformly. It does not explicitly list alternatives but provides clear context for appropriate usage.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries full burden but only states 'Delete a relationship', missing details on irreversible changes, dependencies, or required model refreshes. The minimal disclosure leaves behavioral traits largely unspecified.

    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?

    A single sentence efficiently communicates the action and methods with no superfluous content, making it immediately scannable and information-dense.

    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?

    Given the existence of an output schema and the simplicity of a delete operation, the description provides sufficient context for the tool's basic use. It covers the core functionality, though additional notes on side effects would improve completeness.

    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?

    Despite 0% schema description coverage, the description groups parameters into two approaches ('by name' vs 'by endpoint columns'), adding meaningful structure beyond the raw schema. It clarifies semantic usage without detailing each parameter individually.

    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 uses a specific verb ('Delete') and resource ('relationship'), and specifies two distinct methods ('by name or by endpoint columns'), clearly distinguishing it from sibling tools like pbi_create_relationship or pbi_update_relationship.

    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 states when to use this tool (to delete a relationship) and provides two methods, but does not explicitly mention when not to use it or list alternatives like editing via pbi_update_relationship. This is clear but lacks exclusionary context.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries full transparency burden. It states the tool is a static diagnosis (non-destructive) and describes the return format (list of issues with type/message, valid flag). However, it does not disclose any potential side effects, resource consumption, or limits, leaving some behavioral gaps.

    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?

    The description is extremely concise at three sentences, with the primary action and purpose in the first sentence. Every sentence adds value (what, why, output format), with no redundant or filler content.

    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?

    Given the tool's simplicity (1 required parameter, no annotations, with output schema), the description covers the essential aspects: action, when-to-use, and return structure. It could mention prerequisites like the file being built, but that is implied. Overall, it is sufficiently complete for an AI agent to use correctly.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 0%, so description must compensate. It implies the only parameter 'pbix_path' is a path to a built .pbix file ('on a built .pbix'), which adds context. But it does not specify format, validity requirements, or examples, leaving the parameter semantics only partially clarified.

    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 clearly specifies the action 'statically diagnose' and the resource 'DBCC string-store risks on a built .pbix file', distinguishing it from other diagnostic tools like pbi_detect_* or pbi_validate_*. It uses a specific verb and resource, making its purpose unambiguous.

    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 explicitly recommends using this tool before opening the file in Power BI Desktop to avoid the modal repair dialog, providing clear usage context. It does not mention when not to use or list alternatives, but the given directive is strong and sufficient for the intended scenario.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations exist, so the description carries full weight. It indicates a read-only operation ('return the catalogue') but doesn't disclose potential side effects, permissions, or rate limits. Minimal but adequate for a simple list tool.

    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?

    A single, front-loaded sentence with no wasted words. Every word is meaningful.

    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?

    Given no parameters and a simple output (with an output schema available), the description is complete enough. It could mention that the output schema provides full metadata details, but not necessary.

    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 no parameters and 100% schema coverage, the description adds meaning by specifying 'built-in presets' and 'summary metadata', which goes beyond the empty schema. Baseline is 4.

    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 clearly states the tool returns a catalogue of built-in presets with summary metadata, using a specific verb and resource. It naturally distinguishes from sibling tools like pbi_list_format_presets by specifying 'style presets'.

    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 as a simple listing tool. No explicit when-to-use or when-not-to-use guidance is given, nor are alternatives like pbi_list_format_presets mentioned for differentiation.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations provided, the description carries the burden. It states "without touching the report," implying read-only behavior, but does not explicitly confirm no side effects, required permissions, or rate limits. While the safety profile is hinted, it is not fully transparent.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is well-organized with a clear purpose statement followed by a bullet list of intent keys. While every sentence is useful, the list is somewhat verbose; a slightly more concise format would achieve a perfect score.

    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?

    Given the output schema exists, the description adequately summarizes the return (visual_type, config, rationale) and details the input intent. However, it does not mention prerequisites (e.g., needing an open report) or error conditions, leaving minor gaps.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters5/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The input schema has 0% coverage (no property descriptions), but the description fully compensates by listing and explaining all intent keys (metric, dimension, time, etc.), including optionality and hints. This adds significant meaning beyond the bare schema.

    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 clearly states the tool's purpose: "Plan a visual from a business-intent spec without touching the report." It uses a specific verb (plan) and resource (visual from intent spec) and distinguishes itself from siblings like pbi_add_visual and pbi_add_visual_from_intent by emphasizing it returns a config for later addition without modifying the report.

    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?

    The description implies usage (before adding a visual) and mentions the return includes config for pbi_add_visual, but it lacks explicit guidance on when not to use this tool, such as when the visual type is already known, and does not mention alternatives like pbi_add_visual_from_intent.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    The description discloses the main behaviors: setting via property_types encoding, resetting by deleting properties, and handling of color types. With no annotations, this is fairly transparent, though side effects or permission requirements are not mentioned.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is well-structured with sections but is verbose, especially the type hints list. While informative, it could be more concise while retaining essential details.

    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?

    Given the complexity and lack of schema descriptions, the description is largely complete. It covers setting, resetting, type encoding, and provides examples. It does not discuss return values (output schema exists) or error cases beyond unknown type hints.

    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 documents all 7 parameters, including valid type hints for property_types and examples. This compensates for 0% schema coverage. However, extract_folder is only briefly mentioned as part of target identification without further detail.

    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 clearly states it sets/resets formatting properties on a visual's object properties, with a specific verb and resource. It distinguishes from sibling tools like pbi_set_format by targeting specific visual objects via object_name.

    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?

    No explicit when-to-use or when-not-to-use guidance is provided. Usage is implied through examples, but alternatives or exclusions are not mentioned. This is a gap for a tool with many siblings.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations provided, so description carries full burden. Explains batch saving, optional keys, dry_run behavior (validation, planned_action reporting, no mutation). Does not detail error handling or output format, but covers core behavioral traits.

    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 paragraphs, front-loaded purpose, then details options and dry_run. Efficiently structured with no wasted words.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Complexity moderate (5 params, batch, dry_run). Covers main features but lacks output specification. Dry_run reports planned_action but no mention of success/error return format. Slightly incomplete given output schema exists but not detailed.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 0%, so description must compensate. Explains measures (name, expression, optional keys) and dry_run. However, overwrite and stop_on_error parameters are not mentioned, leaving gaps.

    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?

    Description clearly states 'Batch-create or update multiple DAX measures with a single SaveChanges call', specifying the action (create/update), resource (DAX measures), and batch nature. Distinguishes from sibling pbi_create_measure (singular) by implying batching.

    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?

    Provides guidance on dry_run for preflight validation without mutation. Implies use for batch operations vs single measure tools. Lacks explicit when-not-to-use or alternatives for non-batch cases.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    The description explains the tool writes a copy to output_path and references internal fields (activeTheme, themeCollection). With no annotations, this provides good behavioral context, though it could mention whether it overwrites files or requires specific permissions.

    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 that are front-loaded with the primary action. No redundant information; every sentence adds value.

    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 covers the tool's purpose and main parameters. It does not mention return values, but an output schema exists. For a simple tool with two parameters, it is nearly complete.

    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 coverage is 0%, so the description must explain both parameters. It implicitly describes output_path ('Writes... to output_path') and hint at extract_folder ('from an extracted report'), but extract_folder is not clearly defined. The description does not fully compensate for missing schema details.

    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 clearly states the action (export), the resource (active theme JSON), and the source (extracted report). It specifies the fallback logic (activeTheme or last in themeCollection) and distinguishes from sibling tools like pbi_apply_theme or pbi_validate_theme.

    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 provides a clear use case: 'capturing the baseline theme before customising it.' However, it does not explicitly compare to alternatives or state when not to use this tool.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries full burden. It discloses truncation behavior ('Output is truncated to max_chars... with a trailing note'), the ability to omit measure expressions via include_dax, and the format sections. It does not mention whether it is read-only or other side effects, but the tool is clearly non-destructive.

    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?

    The description is compact and well-structured with a clear opening sentence followed by bulleted sections for the output format. Every sentence adds value; no fluff.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 4 parameters with 0% schema coverage and complexity, the description fails to mention two parameters (include_hidden, include_relationships). It also does not specify prerequisites like needing an active model connection. While output schema exists, the description should cover all parameters to be fully self-contained.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 0%, so description must compensate. It explains max_chars (default 12000, truncation note) and include_dax (omit measures) but omits include_hidden and include_relationships. Only half of the parameters are described, leaving ambiguity about the effect of the others.

    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 clearly states the tool renders a compact markdown snapshot of the model (tables, columns, measures, relationships) for use in LLM prompts to author DAX. It uses specific verbs ('Render', 'paste') and identifies the resource ('model snapshot'), distinguishing it from sibling tools like pbi_export_model or pbi_list_tables which serve different purposes.

    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 explicitly says the snapshot is 'ready to paste into an LLM system prompt so the LLM can author DAX with full schema context in one round-trip,' clearly defining when to use this tool. It does not explicitly state when not to use or mention alternatives, but the use case is well-defined.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries full burden. It discloses a critical behavioral aspect: 'Callers must update downstream DAX expressions themselves.' This informs the agent of a manual post-rename step, which is valuable beyond the schema.

    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?

    The description is extremely concise: two sentences with no fluff. The key action and a critical caveat are front-loaded. Every word adds value.

    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?

    For a simple rename operation with an output schema (not shown), the description covers the essential purpose and a behavioral note. It could mention the return value (e.g., confirmation or updated measure info), but the current text is nearly sufficient.

    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 coverage is 0%, so the description should explain parameters. It does not describe the meaning of 'name', 'table', or 'new_name' beyond what the parameter names imply. The agent lacks explicit guidance on these fields.

    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 clearly states the action: 'Rename a DAX measure.' It uses a specific verb-resource pair that distinguishes it from sibling tools like pbi_create_measure or pbi_delete_measure. The addition about downstream expressions adds precision.

    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 implicitly tells when to use it (to rename a measure). However, it does not explicitly state when not to use it or mention alternatives (e.g., renaming via pbi_rename_column is unrelated). The context is clear enough for a simple tool.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations provided, the description bears full responsibility for behavioral disclosure. It explains the update behavior (without recreation), mutual exclusivity, validation against roles and field references, prototypeQuery rebuild, and dry_run behavior. It does not mention permissions, error handling, or side effects like refresh. These are minor omissions for a mutation tool.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single paragraph that efficiently conveys key information without fluff. It front-loads the main purpose and then lists modes. While it could be slightly more concise, every sentence adds value.

    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?

    For a complex tool with 8 parameters and no annotations, the description covers the core behavior, modes, validation, and dry-run. It mentions prototypeQuery rebuild. However, it does not explain the return value or output schema, even though an output schema exists. It also omits error scenarios. Overall, it is mostly complete but has notable gaps.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0%, so the description must compensate. It explains projections, add_to_role, remove_from_role, and dry_run in detail, adding meaning beyond schema types. However, it does not explain 'page', 'visual_id', 'extract_folder', or 'include_hidden'. These parameters are not self-explanatory from the schema alone, leaving gaps.

    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 clearly states the tool's purpose: 'Update an existing visual's field bindings without removing and recreating it.' It specifies the verb (update), resource (visual's field bindings), and distinguishes from the alternative of removing/recreating. It further details three modes, demonstrating a precise understanding of the tool's function.

    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 provides explicit guidance on when to use each mode ('projections', 'add_to_role', 'remove_from_role') and notes their mutual exclusivity. It also explains validation conditions. However, it lacks explicit comparisons to sibling tools like 'pbi_add_visual' or 'pbi_plan_visual', which could help agents decide between them.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries full burden. It discloses that issues are never ignored (only warnings) and explains parameter behavior. It does not cover auth or side effects, but for a read-like linting tool, this is adequate.

    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?

    The description is concise: a brief intro followed by a clear list of parameters with explanations. Each sentence adds value, and it is well-structured for quick scanning.

    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?

    Given the presence of an output schema (not shown) and the relatively simple purpose, the description covers most aspects. However, missing descriptions for extract_folder and page parameters slightly reduce completeness.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 0%, so description must compensate. It explains three of five parameters (ignore_warnings, only_pages, max_visuals_per_page) but omits extract_folder (required) and page. This adds value but has gaps.

    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 clearly states the tool detects specific layout issues (overlaps, excessive whitespace, tiny visuals, missing titles) with a specific verb and resource, distinguishing it from sibling tools which cover other PBI operations.

    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 explains when to use optional knobs like ignore_warnings and only_pages, providing context for silencing noise or restricting scans. However, it does not explicitly contrast with alternatives or state when not to use this tool.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Without annotations, the description must bear the full burden of behavioral disclosure. It indicates a non-destructive list operation, but lacks details on caching, freshness, or side effects.

    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?

    A single sentence conveys the essential information with no extraneous words, perfectly front-loading the purpose.

    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?

    Given the tool's simplicity (zero parameters, low complexity), the description is adequate. An output schema exists, so detailed return value documentation is not required.

    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?

    There are no parameters, so the description cannot add value beyond the schema. Baseline 4 applies due to perfect schema coverage.

    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 explicitly states 'List discovered Power BI Desktop instances without forcing a connection,' clearly identifying the tool's function and differentiating it from connection-oriented siblings like pbi_connect.

    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 phrase 'without forcing a connection' implies safe, non-disruptive usage, but does not explicitly state when to choose this over alternatives or mention exclusions.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description carries full burden. It declares 'Read-only' upfront and details the checks performed, including the dependency on a live manager. It doesn't contradict any annotations (none exist) and provides sufficient behavioral insight.

    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?

    The description is well-structured with a clear summary, bullet points for risk types, and separate paragraphs for usage guidance. No extraneous information; every sentence adds value.

    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?

    Given the tool's complexity (4 parameters, 1 required, no enums, has output schema), the description covers purpose, usage, parameter behavior, and conditions for different checks. It is fully adequate for an agent to select and invoke correctly.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 0%, so the description must compensate. It explains the purpose of 'page' and 'visual_id' for narrowing scope, and that omitting them scans the whole report. However, 'include_hidden' is not explained beyond its name, leaving some ambiguity.

    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 clearly states it aggregates render-risk diagnostics for visuals, listing specific conditions checked (constant Y measure, unresolved home table, etc.). This distinguishes it from sibling tools like pbi_detect_* by being an aggregate diagnostic.

    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 explains when to use (diagnose render risks), how to narrow scope (visual_id, page), and the effect of providing a live manager. It doesn't explicitly exclude other tools, but the context is clear.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations provided, the description carries the full burden. It correctly indicates the tool is read-only (returns a catalogue) and describes the case-insensitive matching behavior. However, it does not disclose details like return format or pagination, which could be inferred from the output schema but not stated.

    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?

    The description is extremely concise: two sentences with no redundant information. The main purpose is front-loaded, followed by a brief explanation of the optional parameter. Every word earns its place.

    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 simple list tool with an output schema present, the description is complete. It covers the tool's purpose, the optional filter, and the filtering mechanism. No additional context is needed for an AI agent to use 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 only parameter, filter_substring, is well-described: it is optional, matched case-insensitively against preset names. This adds meaning beyond the schema, which only specifies type and default. The description coverage is 0% in schema, so the description provides valuable semantic context.

    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 clearly states it returns the catalogue of format-string presets, distinguishing it from sibling tools like pbi_apply_format_preset which applies a preset. The verb 'return' and resource 'catalogue' are specific.

    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 explains the optional filter_substring parameter and its use case ('when an LLM only needs a subset'), providing clear guidance on when to use it. It does not explicitly state when not to use it, but the context is sufficient.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations exist, so the description carries the burden. It indicates a read-like operation (reload) and mentions cost efficiency, but does not explicitly state it is non-destructive or describe any side effects.

    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?

    The description is a single, front-loaded sentence that conveys the core purpose and differentiator without any extraneous information.

    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?

    Given the tool has no parameters, an output schema is present, and the operation is straightforward, the description is complete enough for an agent to understand its function.

    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 tool has zero parameters and schema description coverage is 100%, so the description does not need to add parameter details. Baseline score 4 for no parameters.

    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 clearly states the verb 'Reload' and the resource 'cached TOM schema'. It distinguishes from sibling tools by explicitly noting it is 'cheaper than full reconnect', contrasting with pbi_connect and pbi_refresh.

    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 provides guidance on when to use this tool (to reload schema) and highlights its advantage over a full reconnect. It implicitly suggests using this instead of pbi_connect when only schema refresh is needed.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Without annotations, the description adequately discloses the loop behavior: scanning, applying repairs when apply=True, saving, and rescaling until convergence. It also notes the requirement for a live connection for check_empty_visuals. However, it could be clearer about prerequisites (e.g., extract_folder must be an extracted report) and the permanence of modifications made by auto-repair.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is concise and front-loaded with the loop concept, using technical terms efficiently. It could benefit from slightly better structure (e.g., separating phases) but remains free of redundant wording.

    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?

    Given the tool's complexity (6 params, iterative process, output schema exists), the description covers the main loop, repair types, and response contents (repairable_errors with llm_action). It could be more explicit about extract_folder and include_hidden, but overall it provides sufficient context.

    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?

    Despite 0% schema description coverage, the description adds meaning for several parameters: apply (default true), max_rounds (default 3), and check_empty_visuals (requires live connection). For extract_folder, implicit but not explicit; page and include_hidden are not described. This partially compensates for the schema gaps.

    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 clearly states the tool's purpose as a 'Detect → classify → auto-repair → re-verify loop for a report extract,' using specific verbs and resources. It distinguishes itself from sibling tools like pbi_repair_report_fields by emphasizing the iterative loop nature.

    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 provides context on when to use the tool (for automated iterative repair until convergence) and mentions the optional check for empty visuals with a live connection. However, it does not explicitly state when not to use it or mention alternative tools, leaving some ambiguity.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description shoulders the behavioral disclosure burden. It explicitly states the tool does not perform disk writes and does not require an extract folder, and lists the return values (payload size, schema issues, allowed keys). This is sufficient for understanding the tool's safe, read-only nature.

    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?

    The description is concise (three sentences) and front-loaded with the core purpose. Every sentence adds value: validation purpose, return values, and behavioral characteristics. No wasted words.

    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?

    Given the tool's simplicity (one parameter, clear return values), the description is complete. It mentions return components without needing to detail output schema, and provides essential behavioral context. It covers the tool's functionality adequately.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The single parameter 'theme_json_path' is not described in the schema (0% coverage). The description does not add details about the expected format or type of path (e.g., local file vs. URI). While the purpose is clear, more guidance would be helpful.

    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 clearly states it performs 'Dry-run validation of a user-supplied theme JSON file', using a specific verb ('validate') and resource ('theme JSON file'). It distinguishes from siblings like pbi_apply_theme by emphasizing 'Dry-run' and 'no disk write'.

    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 clarifies when to use this tool (before applying a theme, for validation) and what it does not do ('no disk write', 'no extract folder required'). It implicitly contrasts with siblings but could explicitly mention alternatives like pbi_apply_theme.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description carries full responsibility. It explains dry_run behavior and error messages, but doesn't disclose potential side effects like overwriting existing visuals or permission requirements.

    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?

    The description is well-structured: purpose statement, parameter explanations, usage guidance, and alternative mention. Every sentence adds value without redundancy.

    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?

    The description omits key required parameters: x, y, page, extract_folder. While visual_type and config are well covered, five required parameters are not explained, leaving significant gaps for correct invocation.

    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?

    Although schema coverage is 0%, the description adds significant value by detailing visual_type options and config keys per type. It also explains dry_run behavior beyond the schema's boolean type.

    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 clearly states the tool adds any visual to a report page, positions it as the single entry point for visual creation, and distinguishes it from the sibling pbi_add_visual_from_intent.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    Explicitly advises using pbi_add_visual_from_intent for business intents, and describes dry_run for validation without committing changes. Provides clear context on when to use this tool versus alternatives.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior5/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations provided, the description fully bears the transparency burden. It discloses naming conventions, dependency-aware generation (YOY% adds YOY and SPY), format inheritance rules (format_inherit, format_string, pattern-specific formats), and dry_run behavior (no mutation, returns plan).

    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?

    The description is well-structured with concise paragraphs covering purpose, naming, dependencies, formatting, and dry-run. Every sentence adds value without redundancy.

    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?

    Given the tool's complexity (10 parameters, 0% schema coverage), the description covers core functionality, dependencies, formatting options, and dry_run behavior. It explains naming and dependency resolution. Minor gaps: prerequisite that date_table must be marked as date table in model is not mentioned, but overall complete for typical usage.

    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?

    Although schema description coverage is 0%, the description explains key parameters: table, base_measure, date_table, date_column, patterns (with default list), dry_run, overwrite, format_string, display_folder, format_inherit. It adds meaning beyond the schema by detailing behavior, though some parameters like overwrite could be elaborated.

    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 clearly states 'Create a family of time-intelligence measures from a base measure.' It specifies default patterns and naming conventions, distinguishing this tool from sibling measure creation tools like pbi_create_measure or pbi_create_rolling_average_measure.

    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?

    The description explains the tool's behavior (dependency-aware, format inheritance) but does not explicitly state when to use it over alternatives. It implies usage for generating multiple time-intelligence measures, but lacks comparative guidance.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description bears full responsibility. It details the output structure (error code, severity, auto-fixable flag, repair instruction), which is informative for a read-only list operation. No side effects or auth needs are mentioned, but none are expected.

    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?

    The description is three concise sentences. The first states the purpose, the second (line continuation) links to repair loop, and the final bulleted list details the return structure. No fluff, front-loaded.

    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?

    Given zero parameters and an existing output schema, the description provides extra context about the entry fields. It is complete for a simple list tool, though it does not mention any prerequisites or availability conditions.

    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?

    There are no parameters; schema coverage is 100% by default. Per guidelines, zero parameters merits a baseline of 4. The description adds no parameter info since none exist.

    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 clearly states the action ('return') and the resource ('repairable-error vocabulary'). It explicitly ties the tool to 'pbi_repair_loop', distinguishing it from other list tools among the many 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?

    While the description implies use with 'pbi_repair_loop', it does not explicitly state when to use or not use this tool versus alternatives. The context is clear, but lacks explicit when-not guidance.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description must cover behavioral traits. It states it lists all roles with members and table filters, implying a read-only operation. However, it does not disclose potential prerequisites, permissions, or performance considerations.

    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?

    The description is a single sentence that conveys all necessary information without any wasted words. It is front-loaded and efficient.

    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?

    Given the presence of an output schema (which documents return values) and the simplicity of a zero-parameter list tool, the description is complete. It tells exactly what the tool returns: all roles, their members, and table filters.

    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?

    There are zero parameters, so the schema fully defines the input. The description adds no parameter detail beyond the schema, which is acceptable per the baseline rule for zero-parameter tools.

    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 clearly states the verb 'List' and the resource 'model roles', and specifies that members and table filters are included. This distinguishes it from sibling role-related tools like create_role, delete_role, etc.

    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 is clear that this tool is intended for listing roles, but it does not explicitly state when to use it over other list tools or when not to use it. The context of no parameters implies a full listing, but no exclusions or alternatives are mentioned.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior5/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description fully carries the burden. It details the behavior for add/update, duplicate handling, identity_provider refresh, and response action, providing complete transparency.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is well-structured with bullet points and front-loaded. It is clear and informative, though could be slightly more concise without losing detail.

    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?

    Given the presence of an output schema, the description adequately covers all essential aspects: parameters, behavior, error handling, and use cases. It is complete for the tool's complexity.

    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?

    Schema coverage is 0%, but the description compensates by explaining member_type, overwrite, and identity_provider behavior. It does not describe role and member_name, but those are self-explanatory. The description adds significant value beyond schema.

    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 clearly states the tool adds or updates a member on a role, specifying the resource (role) and action (add/update). It distinguishes from sibling tools like pbi_remove_role_member and pbi_create_role.

    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 explains when to use overwrite and different member types, and describes error behavior. While it doesn't explicitly state when not to use the tool, the context is clear enough for selection.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Without annotations, the description carries the burden. It discloses the output format, including conditional fields for errors. It implies read-only behavior ('Return'). However, it does not explicitly state whether the tool has side effects or permissions needed, but the usage example suggests safe introspection.

    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 with no wasted words. First sentence states the core function, second provides structure and use case. Front-loaded and efficient.

    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?

    Despite simplicity, the description covers purpose, usage, output format, and an example. The output schema exists, so detailed return values are not needed. The description is fully adequate for an agent to understand and invoke the tool 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?

    Schema coverage is 0%, so the description must compensate. It mentions 'most-recent N' and the example 'last 5 calls' adds meaningful context to the 'last_n' parameter. However, it does not explicitly name the parameter or explain the default value, leaving some gap.

    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 clearly states the tool returns the most-recent N tool operations, specifying ordering (newest first) and resource (connection manager history). This distinguishes it from sibling pbi_* tools which perform operations like creating measures or pages.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    Explicit guidance: 'Use this to self-diagnose what just happened' with a concrete example of pulling last 5 calls after a failure. This tells the agent when to use it (debugging after errors) and implies when not to (for performing operations).

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations provided, so description handles full burden. Declares read-only nature and graceful skipping of probes. Could add auth requirements or return structure, but current info is solid.

    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, front-loaded with key purpose. Every sentence adds value: what it does, read-only, graceful handling, usage guidance.

    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?

    Simple tool with no parameters and an output schema. Description covers purpose, behavior, and when to use. No gaps given context signals.

    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?

    No parameters exist (0 params, schema coverage 100%). Baseline 4 per rules. Description doesn't need param details.

    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 clearly states it's a 'single-call self-diagnostic for stability and dependency status' and positions it as a preflight check. It distinguishes from sibling tools by noting it avoids juggling connect/list/model_info.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    Explicitly recommends usage as a preflight from any LLM agent. Describes graceful behavior when no connection is active and contrasts with alternative approaches.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior5/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Disclosures Win32 keyboard injection, only Ctrl+S, confirm requirement, env var prerequisite, polling with timeout, and immediate return without pbix_path. No annotations, so description carries full burden and does it thoroughly.

    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?

    Well-structured with sections, front-loaded purpose, efficient sentences, no fluff. Every sentence adds value.

    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?

    Covers purpose, prerequisites, parameter details, error handling, and behavior. Output schema exists, so return values not needed. Complete for complexity.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters5/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage 0%, but description explains each parameter: pbix_path (optional polling), confirm (must be True), timeout_seconds (clamped). Adds essential meaning beyond schema.

    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?

    Clearly states the tool triggers Power BI Desktop save (Ctrl+S). Distinct from sibling tools; unique persistence action.

    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?

    Explicitly describes when to use (after TOM mutations) and provides hard gates (env var, confirm). Does not explicitly mention alternatives, but context implies usage.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

powerbi-mcp-local MCP server

Copy to your README.md:

Score Badge

powerbi-mcp-local MCP server

Copy to your README.md:

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/imnotStealthy/powerbi-mcp-local'

If you have feedback or need assistance with the MCP directory API, please join our Discord server