Skip to main content
Glama
krishna-goje

quicksight-mcp

by krishna-goje

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
LOG_LEVELNoLogging levelINFO
AWS_REGIONNoAWS regionus-east-1
AWS_PROFILENoAWS named profile (optional, uses default if not set)
AWS_ACCOUNT_IDNoQuickSight account ID (auto-detected if not set)
QUICKSIGHT_BACKUP_DIRNoBackup directory~/.quicksight-mcp/backups
QUICKSIGHT_MCP_LEARNINGNoEnable self-learningtrue
QUICKSIGHT_MCP_LEARNING_DIRNoLearning data directory~/.quicksight-mcp/

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_datasetsA

List all QuickSight datasets with their names, IDs, and import mode.

Returns every dataset in the account with:

  • name: Human-readable dataset name

  • id: Dataset ID (use this for other dataset operations)

  • import_mode: SPICE (cached) or DIRECT_QUERY (live)

Results are cached for 5 minutes. Use this to discover datasets before calling get_dataset_sql or update_dataset_sql.

search_datasetsA

Search QuickSight datasets by name (case-insensitive partial match).

get_datasetB

Get full metadata for a QuickSight dataset.

get_dataset_sqlB

Get the SQL query powering a QuickSight dataset.

update_dataset_sqlA

Update the SQL query for a QuickSight dataset.

WARNING: This modifies the dataset in place. A backup is created by default.

refresh_datasetA

Trigger a SPICE refresh (data reload) for a dataset.

Use this after updating dataset SQL to reload data into SPICE cache. Has no effect on DIRECT_QUERY datasets.

get_refresh_statusC

Check the status of a SPICE dataset refresh.

list_recent_refreshesB

List recent SPICE refresh history for a dataset.

create_datasetB

Create a new QuickSight dataset from a SQL query.

update_dataset_definitionA

Update full dataset definition from JSON.

WARNING: This replaces the entire dataset definition. A backup is created automatically before the update.

cancel_refreshA

Cancel a running SPICE dataset refresh.

Use this to stop a SPICE ingestion that is stuck in QUEUED or RUNNING state. Useful when old ingestions block new ones.

modify_dataset_sqlA

Find and replace text in a dataset's SQL query.

Convenience tool that reads the current SQL, applies a string replacement, and updates the dataset. A backup is created automatically.

list_analysesA

List all QuickSight analyses with their names, IDs, and status.

Returns every analysis in the account. Results are cached for 5 minutes. Use this to discover analyses before inspecting them.

Each entry includes:

  • name: Human-readable analysis name

  • id: Analysis ID (use this for other analysis operations)

  • status: CREATION_SUCCESSFUL, UPDATE_SUCCESSFUL, etc.

search_analysesA

Search QuickSight analyses by name (case-insensitive partial match).

describe_analysisA

Get a structured summary of a QuickSight analysis.

Returns an overview of the analysis structure without the full raw definition -- ideal for understanding what an analysis contains before making changes.

list_visualsB

List all visuals in a QuickSight analysis with type and location info.

list_calculated_fieldsB

List all calculated fields in a QuickSight analysis.

get_columns_usedB

Get a frequency map of columns used across an analysis.

get_parametersA

List all parameters defined in a QuickSight analysis.

get_analysis_rawA

Get the complete raw analysis definition for inspection.

Returns the full Definition dict exactly as stored by AWS. This is useful for debugging, manual inspection, or extracting complex structures (visual definitions, filter groups, etc.) that can be passed to other tools.

WARNING: The output can be very large for complex analyses.

get_filtersB

List all filter groups defined in a QuickSight analysis.

verify_analysis_healthA

Run a comprehensive health check on a QuickSight analysis.

Use this AFTER any write operation to verify the analysis is healthy. This is the "reviewer" that ensures changes actually took effect and nothing was silently broken.

Checks performed:

  • Analysis status is SUCCESSFUL (not FAILED or IN_PROGRESS)

  • Sheet count is within QuickSight limits (<=20)

  • All visuals have corresponding layout elements

  • All calculated fields reference valid dataset identifiers

snapshot_analysisA

Take a snapshot of the current analysis state for QA comparison.

Use this BEFORE making changes. After changes, use diff_analysis to compare and verify exactly what changed.

diff_analysisA

Compare current analysis state against a previous snapshot.

Use AFTER making changes to see what was added, removed, or modified. This is the QA reviewer -- ensures changes had the intended effect and nothing unexpected broke.

get_calculated_fieldB

Get details of a specific calculated field in an analysis.

add_calculated_fieldA

Add a new calculated field to a QuickSight analysis.

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

update_calculated_fieldA

Update the expression of an existing calculated field.

WARNING: This modifies the analysis definition. A backup is automatically created before making changes. Visuals using this field will reflect the new expression immediately.

delete_calculated_fieldA

Delete a calculated field from a QuickSight analysis.

WARNING: This is destructive. If the field is used by any visuals or other calculated fields, those references will break. Check get_columns_used first to understand the impact.

A backup is automatically created before deletion.

list_dashboardsA

List all QuickSight dashboards with their names, IDs, and publish status.

Returns every dashboard in the account. Results are cached for 5 minutes. Dashboards are the published, viewer-facing version of analyses.

Each entry includes:

  • name: Dashboard display name

  • id: Dashboard ID (use this for other dashboard operations)

  • published_version: Current published version number

search_dashboardsA

Search QuickSight dashboards by name (case-insensitive partial match).

get_dashboard_versionsB

List the version history of a QuickSight dashboard.

publish_dashboardA

Publish a QuickSight analysis to an existing dashboard.

WARNING: This is a DESTRUCTIVE operation that replaces the current dashboard content with the analysis content. All viewers will immediately see the new version. Make sure you have tested the analysis thoroughly before publishing.

Best practice:

  1. Clone the analysis first (clone_analysis) and test

  2. Back up the dashboard (backup_analysis on the source)

  3. Publish with a descriptive version_description

  4. If something goes wrong, use rollback_dashboard

rollback_dashboardA

Rollback a QuickSight dashboard to a previous version.

WARNING: This is a DESTRUCTIVE operation. The current dashboard content will be replaced with the specified previous version. All viewers will immediately see the rolled-back version.

Use get_dashboard_versions first to find the version number you want to restore.

backup_analysisA

Save a full backup of a QuickSight analysis definition to disk.

Creates a timestamped JSON file containing the complete analysis definition (sheets, visuals, calculated fields, parameters, filters, etc.). Use restore_analysis to restore from a backup.

Backups are saved to ~/.quicksight-mcp/backups/.

backup_datasetA

Save a full backup of a QuickSight dataset configuration to disk.

Creates a timestamped JSON file containing the dataset definition (SQL, columns, physical/logical table maps, etc.).

Backups are saved to ~/.quicksight-mcp/backups/.

restore_analysisA

Restore a QuickSight analysis from a JSON backup file.

WARNING: This overwrites the analysis definition with the backup contents. The current state of the analysis will be replaced.

clone_analysisA

Clone a QuickSight analysis for safe experimentation.

Creates a full copy of the analysis with a new name and ID. The clone includes all sheets, visuals, calculated fields, parameters, and filters. Use this to test changes without affecting the original.

Best practice workflow:

  1. clone_analysis to create a test copy

  2. Make and test changes on the clone

  3. When satisfied, publish_dashboard from the clone

  4. Delete the clone when done

get_learning_insightsA

Show what the server has learned from your QuickSight usage patterns.

This server tracks every tool call -- what you use most, what fails, what takes longest -- and surfaces actionable insights.

Returns:

  • most_used_tools: Tools you call most frequently

  • slowest_tools: Tools with highest average latency

  • error_rate: Per-tool failure percentages

  • recommendations: Suggestions based on your usage patterns (e.g., "You search datasets often -- consider using list_datasets with caching instead")

The more you use the server, the better the insights become.

get_error_patternsA

Show common QuickSight errors and their known fixes.

Analyzes your error history to identify recurring failure patterns and provides specific remediation steps. This is especially useful for diagnosing SPICE refresh failures, permission issues, and API throttling.

Returns:

  • patterns: Grouped error types with frequency and last occurrence

  • known_fixes: Documented fixes for each error pattern

  • recent_errors: The most recent errors with context

Call this when something goes wrong to see if it is a known issue with a known fix.

add_sheetB

Add a new sheet to a QuickSight analysis.

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

delete_sheetA

Delete a sheet from a QuickSight analysis.

WARNING: This is destructive. All visuals on the sheet will be removed. A backup is automatically created before deletion.

rename_sheetA

Rename an existing sheet in a QuickSight analysis.

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

list_sheet_visualsA

List all visuals in a specific sheet of a QuickSight analysis.

replicate_sheetA

Copy all visuals from one sheet to a new sheet in the same analysis.

This is the recommended way to duplicate a sheet. It copies all visuals with their layouts in a single API call, which is much more reliable than adding visuals one at a time.

Visual IDs are automatically prefixed with 'rc_' to avoid conflicts.

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

delete_empty_sheetsA

Delete all empty sheets (0 visuals) from an analysis.

Use this to clean up orphan sheets left by failed operations. Automatically removes filter groups scoped to deleted sheets.

WARNING: This is destructive. A backup is automatically created.

get_visual_definitionA

Get the full raw definition of a specific visual.

Use this to inspect a visual's complete configuration including field mappings, aggregations, formatting, and chart configuration. The returned definition can be modified and passed to add_visual to create a copy.

add_visualB

Add a visual to a sheet in a QuickSight analysis.

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

delete_visualA

Delete a visual from a QuickSight analysis.

WARNING: This is destructive. The visual and its layout element will be removed. A backup is automatically created before deletion.

set_visual_titleA

Set or update the title of a visual.

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

set_visual_layoutA

Set the position and size of a visual in the grid layout.

QuickSight uses a 36-column grid. Common patterns:

  • Full width: column_index=0, column_span=36

  • Half width: column_span=18

  • Third width: column_span=12

  • Row height: typically 8-16 rows per visual

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

create_kpiC

Create a KPI visual from simple parameters.

create_bar_chartC

Create a bar chart from simple parameters.

create_line_chartC

Create a line chart from simple parameters.

create_pivot_tableC

Create a pivot table from simple parameters.

create_tableC

Create a flat table visual from simple parameters.

create_combo_chartB

Create a combo chart (bars + line on same chart) from simple parameters.

A combo chart overlays bar values and line values sharing a category axis. For example, count bars with a percentage line overlay.

create_pie_chartC

Create a pie chart from simple parameters.

add_parameterB

Add a parameter to a QuickSight analysis.

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

delete_parameterA

Delete a parameter from a QuickSight analysis.

WARNING: This is destructive. If the parameter is used by filters, calculated fields, or controls, those references will break. Check get_parameters first to understand dependencies.

A backup is automatically created before deletion.

add_filter_groupB

Add a filter group to a QuickSight analysis.

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

delete_filter_groupA

Delete a filter group from a QuickSight analysis.

WARNING: This is destructive. Removing a filter group may change what data is displayed in affected visuals. A backup is automatically created before deletion.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.4/5.0

Scored across 61 tools

Disambiguation4/5

Most tools target a distinct resource+action, and descriptions clarify boundaries well. However, there is real overlap among update_dataset_sql, modify_dataset_sql, and update_dataset_definition, and between add_visual and the create_*_chart helpers; list_visuals vs list_sheet_visuals also blur slightly.

Naming Consistency4/5

The set overwhelmingly follows a snake_case verb_noun convention (get_/list_/add_/delete_/update_). The main deviation is the mix of add_ (add_sheet, add_visual, add_parameter) versus create_ (create_kpi, create_bar_chart, create_dataset) for essentially the same insert semantics, but overall it is readable and predictable.

Tool Count3/5

61 tools is heavy and pushes past the comfortable range, with some granularity that could be consolidated (set_visual_title/set_visual_layout, the seven create_*_chart helpers). The breadth of QuickSight (analyses, datasets, dashboards, sheets, visuals, parameters, filters) justifies much of it, but it is still borderline bloated.

Completeness4/5

Calculated fields, visuals, sheets, parameters, and filters have solid lifecycle coverage, and analyses have backup/restore/clone/publish. Notable gaps remain at the top level: no delete_dataset, delete_analysis, create_analysis, or create/delete_dashboard, and no generic update_visual, which agents must work around.

Maintenance

ActivityInactive
ResponsivenessUnresponsive