Skip to main content
Glama

Alibaba Cloud RDS OpenAPI MCP Server

Official
by aliyun

create_db_instance

Set up a relational database instance on Alibaba Cloud RDS with customizable options like engine type, storage, network configuration, and security settings for efficient database management.

Instructions

Create an RDS instance.

Args: region_id: Region ID. engine: Database type (MySQL, SQLServer, PostgreSQL, MariaDB). engine_version: Database version. dbinstance_class: Instance specification. Query available class_codes by `describe_available_classes`. dbinstance_storage: Storage space in GB. security_ip_list: IP whitelist, separated by commas. Default: "127.0.0.1". instance_network_type: Network type (Classic, VPC). Default: VPC. zone_id: Zone ID. Query available zones by `describe_available_zones`. zone_id_slave1: Slave Node1 Zone ID. Query available zones by `describe_available_zones`. zone_id_slave2: Slave Node2 Zone ID. Query available zones by `describe_available_zones`. pay_type: Payment type (Postpaid, Prepaid). Default: Postpaid. instance_charge_type: Instance charge type. system_db_charset: Character set. dbinstance_net_type: Network connection type (Internet, Intranet). Default: Internet. category: Instance category. Default: Basic. dbinstance_storage_type: Storage type. (e.g. local_ssd,general_essd,cloud_essd,cloud_essd2,cloud_essd3) vpc_id: VPC ID. vswitch_id: VSwitch ID. private_ip_address: Private IP address. client_token: Idempotence token. resource_group_id: Resource group ID. tde_status: TDE status (Enable, Disable). encryption_key: Custom encryption key. serverless_config: Serverless instance configuration. table_names_case_sensitive: Are table names case-sensitive. db_time_zone: the db instance time zone. connection_string: the connection string for db instance. db_param_group_id: the db param group id for db instance. Returns: Dict[str, Any]: Response containing the created instance details.

Input Schema

NameRequiredDescriptionDefault
categoryNoBasic
client_tokenNo
connection_stringNo
db_param_group_idNo
db_time_zoneNo
dbinstance_classYes
dbinstance_net_typeNoInternet
dbinstance_storageYes
dbinstance_storage_typeNo
encryption_keyNo
engineYes
engine_versionYes
instance_network_typeNoVPC
pay_typeNoPostpaid
private_ip_addressNo
region_idYes
resource_group_idNo
security_ip_listNo127.0.0.1
serverless_configNo
system_db_charsetNo
table_names_case_sensitiveNo
tde_statusNo
vpc_idYes
vswitch_idYes
zone_idYes
zone_id_slave1No
zone_id_slave2No

Input Schema (JSON Schema)

{ "properties": { "category": { "default": "Basic", "title": "Category", "type": "string" }, "client_token": { "default": null, "title": "Client Token", "type": "string" }, "connection_string": { "default": null, "title": "Connection String", "type": "string" }, "db_param_group_id": { "default": null, "title": "Db Param Group Id", "type": "string" }, "db_time_zone": { "default": null, "title": "Db Time Zone", "type": "string" }, "dbinstance_class": { "title": "Dbinstance Class", "type": "string" }, "dbinstance_net_type": { "default": "Internet", "title": "Dbinstance Net Type", "type": "string" }, "dbinstance_storage": { "title": "Dbinstance Storage", "type": "integer" }, "dbinstance_storage_type": { "default": null, "title": "Dbinstance Storage Type", "type": "string" }, "encryption_key": { "default": null, "title": "Encryption Key", "type": "string" }, "engine": { "title": "Engine", "type": "string" }, "engine_version": { "title": "Engine Version", "type": "string" }, "instance_network_type": { "default": "VPC", "title": "Instance Network Type", "type": "string" }, "pay_type": { "default": "Postpaid", "title": "Pay Type", "type": "string" }, "private_ip_address": { "default": null, "title": "Private Ip Address", "type": "string" }, "region_id": { "title": "Region Id", "type": "string" }, "resource_group_id": { "default": null, "title": "Resource Group Id", "type": "string" }, "security_ip_list": { "default": "127.0.0.1", "title": "Security Ip List", "type": "string" }, "serverless_config": { "additionalProperties": true, "default": null, "title": "Serverless Config", "type": "object" }, "system_db_charset": { "default": null, "title": "System Db Charset", "type": "string" }, "table_names_case_sensitive": { "default": false, "title": "Table Names Case Sensitive", "type": "boolean" }, "tde_status": { "default": null, "title": "Tde Status", "type": "string" }, "vpc_id": { "title": "Vpc Id", "type": "string" }, "vswitch_id": { "title": "Vswitch Id", "type": "string" }, "zone_id": { "title": "Zone Id", "type": "string" }, "zone_id_slave1": { "default": null, "title": "Zone Id Slave1", "type": "string" }, "zone_id_slave2": { "default": null, "title": "Zone Id Slave2", "type": "string" } }, "required": [ "region_id", "engine", "engine_version", "dbinstance_class", "dbinstance_storage", "vpc_id", "vswitch_id", "zone_id" ], "title": "create_db_instanceArguments", "type": "object" }

Implementation Reference

  • Handler function for the 'create_db_instance' tool. It constructs a CreateDBInstanceRequest using the provided parameters and calls the Alibaba Cloud RDS client to create a new DB instance.
    async def create_db_instance( region_id: str, engine: str, engine_version: str, dbinstance_class: str, dbinstance_storage: int, vpc_id: str, vswitch_id: str, zone_id: str, zone_id_slave1: str = None, zone_id_slave2: str = None, security_ip_list: str = "127.0.0.1", instance_network_type: str = "VPC", pay_type: str = "Postpaid", system_db_charset: str = None, dbinstance_net_type: str = "Internet", category: str = "Basic", dbinstance_storage_type: str = None, private_ip_address: str = None, client_token: str = None, resource_group_id: str = None, tde_status: str = None, encryption_key: str = None, serverless_config: Dict[str, Any] = None, table_names_case_sensitive: bool = False, db_time_zone: str = None, connection_string: str = None, db_param_group_id: str = None, ) -> Dict[str, Any]: """Create an RDS instance. Args: region_id: Region ID. engine: Database type (MySQL, SQLServer, PostgreSQL, MariaDB). engine_version: Database version. dbinstance_class: Instance specification. Query available class_codes by `describe_available_classes`. dbinstance_storage: Storage space in GB. security_ip_list: IP whitelist, separated by commas. Default: "127.0.0.1". instance_network_type: Network type (Classic, VPC). Default: VPC. zone_id: Zone ID. Query available zones by `describe_available_zones`. zone_id_slave1: Slave Node1 Zone ID. Query available zones by `describe_available_zones`. zone_id_slave2: Slave Node2 Zone ID. Query available zones by `describe_available_zones`. pay_type: Payment type (Postpaid, Prepaid). Default: Postpaid. instance_charge_type: Instance charge type. system_db_charset: Character set. dbinstance_net_type: Network connection type (Internet, Intranet). Default: Internet. category: Instance category. Default: Basic. dbinstance_storage_type: Storage type. (e.g. local_ssd,general_essd,cloud_essd,cloud_essd2,cloud_essd3) vpc_id: VPC ID. vswitch_id: VSwitch ID. private_ip_address: Private IP address. client_token: Idempotence token. resource_group_id: Resource group ID. tde_status: TDE status (Enable, Disable). encryption_key: Custom encryption key. serverless_config: Serverless instance configuration. table_names_case_sensitive: Are table names case-sensitive. db_time_zone: the db instance time zone. connection_string: the connection string for db instance. db_param_group_id: the db param group id for db instance. Returns: Dict[str, Any]: Response containing the created instance details. """ try: client = get_rds_client(region_id) request = rds_20140815_models.CreateDBInstanceRequest( region_id=region_id, engine=engine, engine_version=engine_version, dbinstance_class=dbinstance_class, dbinstance_storage=dbinstance_storage, security_iplist=security_ip_list, instance_network_type=instance_network_type, dbis_ignore_case=str(not table_names_case_sensitive).lower(), dbtime_zone=db_time_zone, connection_string=connection_string, dbparam_group_id=db_param_group_id ) # Add optional parameters if zone_id: request.zone_id = zone_id if zone_id_slave1: request.zone_id_slave_1 = zone_id_slave1 if zone_id_slave2: request.zone_id_slave_2 = zone_id_slave2 if pay_type: request.pay_type = pay_type if system_db_charset: request.system_dbcharset = system_db_charset if dbinstance_net_type: request.dbinstance_net_type = dbinstance_net_type if category: request.category = category if dbinstance_storage_type: request.dbinstance_storage_type = dbinstance_storage_type if vpc_id: request.vpcid = vpc_id if vswitch_id: request.v_switch_id = vswitch_id if private_ip_address: request.private_ip_address = private_ip_address if client_token: request.client_token = client_token if resource_group_id: request.resource_group_id = resource_group_id if tde_status: request.tde_status = tde_status if encryption_key: request.encryption_key = encryption_key if serverless_config: request.serverless_config = json.dumps(serverless_config) response = client.create_dbinstance(request) return response.body.to_map() except Exception as e: logger.error(f"Error occurred while creating RDS instance: {str(e)}") raise 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