eliminar_habitacion
Remove a room from the smart home system. The room must be empty with all devices deleted first to complete the operation.
Instructions
Elimina una habitación del sistema.
Args: room_name: nombre de la habitación a eliminar
Returns: Confirmación de eliminación.
Restricciones: - La habitación debe estar vacía (sin dispositivos) - Primero deben eliminarse todos los dispositivos de la habitación
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| room_name | Yes |
Implementation Reference
- servers/mcp_rooms.py:202-217 (handler)The handler function for the 'eliminar_habitacion' MCP tool. It is decorated with @mcp.tool() for registration and schema inference from signature/docstring. Executes by calling storage.delete_room(room_name).@mcp.tool() def eliminar_habitacion(room_name: str) -> dict: """ Elimina una habitación del sistema. Args: room_name: nombre de la habitación a eliminar Returns: Confirmación de eliminación. Restricciones: - La habitación debe estar vacía (sin dispositivos) - Primero deben eliminarse todos los dispositivos de la habitación """ return storage.delete_room(room_name)
- storage.py:111-126 (helper)The core helper method in the storage class that performs the room deletion logic: validates emptiness, removes from storage, persists to JSON file.def delete_room(self, name: str) -> dict: """Elimina una habitación (debe estar vacía).""" self.reload() # Sincronizar con archivo if name not in self.rooms: raise ValueError(f"Habitación '{name}' no existe") room = self.rooms[name] if room.devices: raise ValueError( f"No se puede eliminar habitación con dispositivos. " f"Eliminar primero: {room.devices}" ) del self.rooms[name] self._save_to_file() return {"room": name, "status": "deleted"}
- servers/mcp_rooms.py:202-217 (schema)The function signature (room_name: str -> dict) and docstring define the input schema and output for the MCP tool.@mcp.tool() def eliminar_habitacion(room_name: str) -> dict: """ Elimina una habitación del sistema. Args: room_name: nombre de la habitación a eliminar Returns: Confirmación de eliminación. Restricciones: - La habitación debe estar vacía (sin dispositivos) - Primero deben eliminarse todos los dispositivos de la habitación """ return storage.delete_room(room_name)
- servers/mcp_rooms.py:202-217 (registration)The @mcp.tool() decorator registers this function as an MCP tool named 'eliminar_habitacion'.@mcp.tool() def eliminar_habitacion(room_name: str) -> dict: """ Elimina una habitación del sistema. Args: room_name: nombre de la habitación a eliminar Returns: Confirmación de eliminación. Restricciones: - La habitación debe estar vacía (sin dispositivos) - Primero deben eliminarse todos los dispositivos de la habitación """ return storage.delete_room(room_name)