Skip to main content
Glama
biplatform-demo

BI Portal Report Builder MCP Server

create_draft_report

Create a new draft report in your personal workspace, visible only to you until submitted. Use report builder or custom query configurations.

Instructions

Create a new draft report in the caller's personal workspace — visible only to the caller until submitted. dashboard_kind is typically "report_builder" (multiple independently-queried sections, each its own dataset/dimensions/ measures/filters/visualization) or "custom_query" (one query, one chart). target_domain_key should match the domain of the report's primary dataset — this is what the report gets submitted into for review. config_json holds that dashboard_kind's own configuration; build it up by test-running each section with run_explore_query first so the dimensions/measures/filters are known to work and to have a sensible recommended visualization.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
titleYes
config_jsonYes
dashboard_kindYes
target_domain_keyYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/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 visibility scope ('visible only to the caller until submitted') and the intended lifecycle, which goes beyond a simple creation action. It doesn't mention errors or side effects, but it does convey the non-destructive nature and the submission path.

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, well-structured paragraph that front-loads the core purpose, then flows into parameter semantics and workflow. Every sentence adds value—no fluff, and it's concise yet detailed.

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 tool with no annotations or output schema, the description covers purpose, parameters, and usage workflow. It doesn't mention return values or error conditions, but it provides enough for an agent to correctly invoke the tool, especially with the guidance to validate config via run_explore_query.

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 explain parameters. It does so for dashboard_kind (with the two values), target_domain_key (matching the dataset domain), and config_json (configuration for the kind, built via run_explore_query). Title is self-explanatory, so the description effectively compensates for the schema's lack of 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 opens with a clear verb+resource: 'Create a new draft report in the caller's personal workspace.' It distinguishes itself from siblings by stating the visibility scope and by explaining the two dashboard_kind variants, making it unambiguous which tool to use.

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

Usage Guidelines4/5

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

It provides explicit context for when to use the tool (creating a draft) and a recommended workflow: build config_json by test-running with run_explore_query. It doesn't explicitly state when not to use it (e.g., for updates), but the sibling list and the word 'create' imply that distinction. This is strong guidance for parameter preparation.

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