Skip to main content
Glama
CrisDeCrisis

MCP Domotica Backend

by CrisDeCrisis

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
NameRequiredDescriptionDefault
room_nameYes

Implementation Reference

  • 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)
  • 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"}
  • 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)
  • 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)

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/CrisDeCrisis/mcp-domotica-backend'

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