describe_db_instance_accounts
Retrieve account details for multiple Alibaba Cloud RDS instances in a specific region using instance identifiers. Enables batch querying of database account information for efficient management.
Instructions
Batch retrieves account information for multiple RDS instances.
Args:
region_id: The region ID of the RDS instance.
db_instance_ids: List of DB instance identifiers (e.g., ["rm-uf6wjk5****", "db-instance-01"])
Returns:
list[dict]: A list of dictionaries containing account information for each instance.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| db_instance_ids | Yes | ||
| region_id | Yes |
Input Schema (JSON Schema)
{
"properties": {
"db_instance_ids": {
"items": {
"type": "string"
},
"title": "Db Instance Ids",
"type": "array"
},
"region_id": {
"title": "Region Id",
"type": "string"
}
},
"required": [
"region_id",
"db_instance_ids"
],
"title": "describe_db_instance_accountsArguments",
"type": "object"
}
Implementation Reference
- Handler function implementing the 'describe_db_instance_accounts' MCP tool. It batches API calls to DescribeAccounts for multiple RDS DB instances to retrieve account information using the Alibaba Cloud RDS OpenAPI client.@mcp.tool(annotations=READ_ONLY_TOOL) async def describe_db_instance_accounts( region_id: str, db_instance_ids: list[str] ) -> list[dict]: """ Batch retrieves account information for multiple RDS instances. Args: region_id: The region ID of the RDS instance. db_instance_ids: List of DB instance identifiers (e.g., ["rm-uf6wjk5****", "db-instance-01"]) Returns: list[dict]: A list of dictionaries containing account information for each instance. """ try: client = get_rds_client(region_id) db_instance_accounts = [] for db_instance_id in db_instance_ids: request = rds_20140815_models.DescribeAccountsRequest( dbinstance_id=db_instance_id ) response = await client.describe_accounts_async(request) db_instance_accounts.append(response.body.to_map()) return db_instance_accounts except Exception as e: raise e