Skip to main content
Glama
krishna-goje

quicksight-mcp

by krishna-goje

add_calculated_field

Destructive

Add a new calculated field to a QuickSight analysis by providing an expression and dataset identifier. A backup is created before changes.

Instructions

Add a new calculated field to a QuickSight analysis.

WARNING: This modifies the analysis definition. A backup is automatically created before making changes.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesName for the new calculated field. Must be unique within the analysis.
expressionYesQuickSight expression using curly-brace field references. Examples: - sum({Revenue}) - {Price} * {Quantity} - ifelse({Status} = 'Active', 1, 0) - dateDiff({Start}, {End}, "DAY")
analysis_idYesThe QuickSight analysis ID.
dataset_identifierYesThe dataset identifier this field belongs to. Find available identifiers using describe_analysis (look at dataset_identifiers).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.0

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, so the bar is lower, yet the description still adds genuinely useful context: it modifies the analysis definition and an automatic backup is created beforehand. It omits whether the change is reversible and any permission requirements, but the backup disclosure is meaningful behavioral information beyond the annotation.

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 short sentences with the purpose front-loaded and the mutation warning immediately after. Zero filler; every sentence earns its place.

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?

An output schema exists, so return values need not be explained, and annotations cover the destructive nature. With full schema coverage on a four-parameter tool, the description is nearly complete, lacking only usage routing and permission 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?

Schema description coverage is 100%, so all four parameters (including expression syntax examples and the dataset_identifier lookup hint) are already documented in the schema. The description adds nothing about parameters, so the baseline 3 applies.

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?

States a specific verb (Add), resource (calculated field), and target (QuickSight analysis), which cleanly separates it from get/update/delete/list_calculated_field siblings. It stops short of explicitly naming update_calculated_field as the alternative for existing fields, so it does not fully differentiate.

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 statement of when to use this versus update_calculated_field, no prerequisites (e.g. required permissions), and no conditions under which it should not be used. The reader must infer that 'Add a new' implies the field does not already exist.

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