Skip to main content
Glama
aliyun

Alibaba Cloud MCP Server

Official
by aliyun

ReplaceSystemDisk

Replace the system disk of Alibaba Cloud ECS instances to update or change the operating system, using specified image files across multiple instances.

Instructions

批量替换ECS实例的系统盘,更换操作系统

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
ImageIdYes镜像ID
InstanceIdsYesAlibabaCloud ECS instance ID List
RegionIdNoAlibabaCloud region IDcn-hangzhou

Implementation Reference

  • Handler function OOS_ReplaceSystemDisk that batches replaces the system disk of multiple ECS instances using Alibaba Cloud OOS template 'ACS-ECS-BulkyReplaceSystemDisk'.
    @tools.append def OOS_ReplaceSystemDisk( InstanceIds: List[str] = Field(description='AlibabaCloud ECS instance ID List'), ImageId: str = Field(description='Image ID'), RegionId: str = Field(description='AlibabaCloud region ID', default='cn-hangzhou') ): """批量替换ECS实例的系统盘,更换操作系统""" parameters = { 'regionId': RegionId, 'resourceType': 'ALIYUN::ECS::Instance', 'targets': { 'ResourceIds': InstanceIds, 'RegionId': RegionId, 'Type': 'ResourceIds' }, 'imageId': ImageId } return _start_execution_sync(region_id=RegionId, template_name='ACS-ECS-BulkyReplaceSystemDisk', parameters=parameters)
  • Registration of all OOS tools (including OOS_ReplaceSystemDisk) to the FastMCP server instance.
    for tool in oos_tools.tools: mcp.tool(tool)
  • Shared helper function used by OOS tools to start an OOS execution and wait synchronously for its completion.
    def _start_execution_sync(region_id: str, template_name: str, parameters: dict): client = create_client(region_id=region_id) start_execution_request = oos_20190601_models.StartExecutionRequest( region_id=region_id, template_name=template_name, parameters=json.dumps(parameters) ) start_execution_resp = client.start_execution(start_execution_request) execution_id = start_execution_resp.body.execution.execution_id while True: list_executions_request = oos_20190601_models.ListExecutionsRequest( region_id=region_id, execution_id=execution_id ) list_executions_resp = client.list_executions(list_executions_request) status = list_executions_resp.body.executions[0].status if status == FAILED: status_message = list_executions_resp.body.executions[0].status_message raise exception.OOSExecutionFailed(reason=status_message) elif status in END_STATUSES: return list_executions_resp.body time.sleep(1)

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-ecs-mcp-server'

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