Skip to content

Redshift MCP: list_clusters fails with KeyError: 'DBName' when DBName field is missing from cluster metadata #2331

@emily-thistle

Description

@emily-thistle

Describe the bug

Description:
The list_clusters tool fails with a KeyError: 'DBName' when attempting to list Redshift clusters that don't have a DBName field in their metadata returned by the AWS describe-clusters API.

Environment:

  • MCP Server: awslabs.redshift-mcp-server@latest (version 0.0.16 as of 2026-01-27)
  • Client: Claude Desktop (macOS)
  • AWS Region: us-west-2
  • Authentication: AWS SSO profile
  • Cluster Type: Provisioned cluster (ra3.xlplus, 3 nodes)

Expected Behavior

The tool should successfully list all available Redshift clusters and serverless workgroups, handling cases where the DBName field may be absent from the cluster metadata.

Current Behavior

The tool fails with the error:

Failed to list clusters: 'DBName'
Error executing tool list_clusters: 'DBName'

Reproduction Steps

  1. Configure the Redshift MCP server in claude_desktop_config.json:
{
  "mcpServers": {
    "awslabs.redshift": {
      "command": "uvx",
      "args": ["awslabs.redshift-mcp-server@latest"],
      "env": {
        "AWS_PROFILE": "your-profile",
        "AWS_REGION": "us-west-2",
        "FASTMCP_LOG_LEVEL": "INFO"
      }
    }
  }
}
  1. Authenticate with AWS (SSO or credentials)
  2. Restart Claude Desktop
  3. Call the list_clusters tool

Possible Solution

The AWS describe-clusters API does not always return a DBName field in the cluster metadata. Looking at the actual cluster response from AWS CLI:

{
  "Clusters": [
    {
      "ClusterIdentifier": "thistle-data",
      "NodeType": "ra3.xlplus",
      "ClusterStatus": "available",
      "MasterUsername": "data_admin",
      "Endpoint": { ... },
      // Note: No "DBName" field present
      ...
    }
  ]
}

Additional Information/Context

No response

OS

MacOS 12.6

Server

other

Server Version

awslabs.redshift-mcp-server 0.0.16

Region experiencing the issue

us-west-2

Other information

No response

Service quota

  • I have reviewed the service quotas for this construct

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingneeds-triageThis needs to be handled, it is the first automatically assigned label to issues.

    Type

    No type

    Projects

    Status

    To triage

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions