Skip to main content
Glama

Alibaba Cloud RDS OpenAPI MCP Server

Official
by aliyun

describe_available_zones

Query available zones for RDS instances based on region, database type, version, and instance category. Retrieve zone details to deploy primary or read-only instances efficiently.

Instructions

Query available zones for RDS instances.

Args: region_id: Region ID. engine: Database type (MySQL, SQLServer, PostgreSQL, MariaDB). engine_version: Database version. MySQL: 5.5, 5.6, 5.7, 8.0 SQL Server: 2008r2, 2012, 2014, 2016, 2017, 2019 PostgreSQL: 10.0, 11.0, 12.0, 13.0, 14.0, 15.0 MariaDB: 10.3 commodity_code: Commodity code. bards: Pay-as-you-go primary instance (China site) rds: Subscription primary instance (China site) rords: Pay-as-you-go read-only instance (China site) rds_rordspre_public_cn: Subscription read-only instance (China site) bards_intl: Pay-as-you-go primary instance (International site) rds_intl: Subscription primary instance (International site) rords_intl: Pay-as-you-go read-only instance (International site) rds_rordspre_public_intl: Subscription read-only instance (International site) rds_serverless_public_cn: Serverless instance (China site) rds_serverless_public_intl: Serverless instance (International site) zone_id: Zone ID. dispense_mode: Whether to return zones that support single-zone deployment. 1: Return (default) 0: Do not return dbinstance_name: Primary instance ID. Required when querying read-only instance resources. category: Instance category. Basic: Basic Edition HighAvailability: High-availability Edition cluster: MySQL Cluster Edition AlwaysOn: SQL Server Cluster Edition Finance: Enterprise Edition serverless_basic: Serverless Basic Edition serverless_standard: MySQL Serverless High-availability Edition serverless_ha: SQL Server Serverless High-availability Edition Returns: Dict[str, Any]: Response containing available zones information.

Input Schema

NameRequiredDescriptionDefault
categoryNo
commodity_codeNo
dbinstance_nameNo
dispense_modeNo
engineYes
engine_versionNo
region_idYes
zone_idNo

Input Schema (JSON Schema)

{ "properties": { "category": { "default": null, "title": "Category", "type": "string" }, "commodity_code": { "default": null, "title": "Commodity Code", "type": "string" }, "dbinstance_name": { "default": null, "title": "Dbinstance Name", "type": "string" }, "dispense_mode": { "default": null, "title": "Dispense Mode", "type": "string" }, "engine": { "title": "Engine", "type": "string" }, "engine_version": { "default": null, "title": "Engine Version", "type": "string" }, "region_id": { "title": "Region Id", "type": "string" }, "zone_id": { "default": null, "title": "Zone Id", "type": "string" } }, "required": [ "region_id", "engine" ], "title": "describe_available_zonesArguments", "type": "object" }

Implementation Reference

  • Handler function for the 'describe_available_zones' tool. Registers the tool using @mcp.tool decorator and implements the logic by calling Alibaba Cloud RDS DescribeAvailableZones API via get_rds_client, handling parameters like region_id, engine, etc., and returning the mapped response.
    @mcp.tool(annotations=READ_ONLY_TOOL) async def describe_available_zones( region_id: str, engine: str, engine_version: str = None, commodity_code: str = None, zone_id: str = None, dispense_mode: str = None, dbinstance_name: str = None, category: str = None ) -> Dict[str, Any]: """Query available zones for RDS instances. Args: region_id: Region ID. engine: Database type (MySQL, SQLServer, PostgreSQL, MariaDB). engine_version: Database version. MySQL: 5.5, 5.6, 5.7, 8.0 SQL Server: 2008r2, 2012, 2014, 2016, 2017, 2019 PostgreSQL: 10.0, 11.0, 12.0, 13.0, 14.0, 15.0 MariaDB: 10.3 commodity_code: Commodity code. bards: Pay-as-you-go primary instance (China site) rds: Subscription primary instance (China site) rords: Pay-as-you-go read-only instance (China site) rds_rordspre_public_cn: Subscription read-only instance (China site) bards_intl: Pay-as-you-go primary instance (International site) rds_intl: Subscription primary instance (International site) rords_intl: Pay-as-you-go read-only instance (International site) rds_rordspre_public_intl: Subscription read-only instance (International site) rds_serverless_public_cn: Serverless instance (China site) rds_serverless_public_intl: Serverless instance (International site) zone_id: Zone ID. dispense_mode: Whether to return zones that support single-zone deployment. 1: Return (default) 0: Do not return dbinstance_name: Primary instance ID. Required when querying read-only instance resources. category: Instance category. Basic: Basic Edition HighAvailability: High-availability Edition cluster: MySQL Cluster Edition AlwaysOn: SQL Server Cluster Edition Finance: Enterprise Edition serverless_basic: Serverless Basic Edition serverless_standard: MySQL Serverless High-availability Edition serverless_ha: SQL Server Serverless High-availability Edition Returns: Dict[str, Any]: Response containing available zones information. """ try: # Initialize the client client = get_rds_client(region_id) # Create request request = rds_20140815_models.DescribeAvailableZonesRequest( region_id=region_id, engine=engine ) # Add optional parameters if provided if engine_version: request.engine_version = engine_version if commodity_code: request.commodity_code = commodity_code if zone_id: request.zone_id = zone_id if dispense_mode: request.dispense_mode = dispense_mode if dbinstance_name: request.dbinstance_name = dbinstance_name if category: request.category = category # Make the API request response = client.describe_available_zones(request) return response.body.to_map() except Exception as e: logger.error(f"Error occurred while querying available zones: {str(e)}") raise OpenAPIError(f"Failed to query available zones: {str(e)}")

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/aliyun/alibabacloud-rds-openapi-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server