Skip to main content
Glama

Home Assistant MCP Server

integration-sensor.json11.7 kB
{ "anyOf": [ { "$ref": "#/definitions/SensorPlatformSchema" }, { "$ref": "#/definitions/SensorPlatformSchema_1" }, { "$ref": "#/definitions/OtherPlatform" }, { "type": "array", "items": { "$ref": "#/definitions/Item" } } ], "definitions": { "SensorPlatformSchema": { "type": "object", "properties": { "platform": { "description": "The template platform supports sensors which get their values from other entities.\nhttps://www.home-assistant.io/integrations/template", "type": "string", "const": "template" }, "sensors": { "description": "List of sensors.\nhttps://www.home-assistant.io/integrations/template#sensors", "type": "object", "additionalProperties": { "anyOf": [ { "type": "string", "pattern": "^!include_dir_named .*$" }, { "type": "string", "pattern": "^!include_dir_named\r.*$" }, { "type": "string", "pattern": "^!include_dir_named\n.*$" }, { "type": "string", "pattern": "^!include_dir_named\t.*$" }, { "type": "string", "pattern": "^!include_dir_named\f.*$" }, { "type": "string", "pattern": "^!include_dir_named\u000b.*$" }, { "type": "string", "pattern": "^!include_dir_merge_named .*$" }, { "type": "string", "pattern": "^!include_dir_merge_named\r.*$" }, { "type": "string", "pattern": "^!include_dir_merge_named\n.*$" }, { "type": "string", "pattern": "^!include_dir_merge_named\t.*$" }, { "type": "string", "pattern": "^!include_dir_merge_named\f.*$" }, { "type": "string", "pattern": "^!include_dir_merge_named\u000b.*$" }, { "$ref": "#/definitions/SensorPlatformItem" } ] } }, "entity_namespace": { "description": "By setting an entity namespace, all entities will be prefixed with that namespace.\nhttps://www.home-assistant.io/docs/configuration/platform_options/#entity-namespace", "type": "string" }, "scan_interval": { "description": "Allow to change the polling interval if the platform uses a polling mechanism.\nhttps://www.home-assistant.io/docs/configuration/platform_options/#scan-interval", "anyOf": [ { "$ref": "#/definitions/TimePeriodMap" }, { "type": ["string", "number"] } ] } }, "additionalProperties": false, "required": ["platform", "sensors"] }, "SensorPlatformItem": { "type": "object", "properties": { "attribute_templates": { "description": "Defines templates for attributes of the sensor.\nhttps://www.home-assistant.io/integrations/template#attribute_templates", "type": "object", "additionalProperties": { "type": "string" } }, "availability_template": { "description": "Defines a template to get the available state of the sensor. Return true if the device is available, false otherwise.\nhttps://www.home-assistant.io/integrations/template#availability_template", "type": "string" }, "device_class": { "description": "Sets the class of the device, changing the device state and icon that is displayed on the frontend.\nhttps://www.home-assistant.io/integrations/template#device_class", "enum": [ "apparent_power", "aqi", "area", "atmospheric_pressure", "battery", "blood_glucose_concentration", "carbon_dioxide", "carbon_monoxide", "conductivity", "current", "data_rate", "data_size", "date", "distance", "duration", "energy", "energy_distance", "energy_storage", "enum", "frequency", "gas", "humidity", "illuminance", "irradiance", "moisture", "monetary", "nitrogen_dioxide", "nitrogen_monoxide", "nitrous_oxide", "ozone", "ph", "pm1", "pm10", "pm25", "power", "power_factor", "precipitation", "precipitation_intensity", "pressure", "reactive_power", "signal_strength", "sound_pressure", "speed", "sulphur_dioxide", "temperature", "timestamp", "volatile_organic_compounds", "volatile_organic_compounds_parts", "voltage", "volume", "volume_flow_rate", "volume_storage", "water", "weight", "wind_speed" ], "type": "string" }, "entity_picture_template": { "description": "Defines a template for the entity picture of the sensor.\nhttps://www.home-assistant.io/integrations/binary_sensor.template#entity_picture_template", "type": "string" }, "friendly_name": { "description": "Name to use in the frontend.\nhttps://www.home-assistant.io/integrations/binary_sensor.template#friendly_name", "type": "string" }, "friendly_name_template": { "description": "Defines a template for the name to be used in the frontend (this overrides friendly_name).\nhttps://www.home-assistant.io/integrations/binary_sensor.template#friendly_name", "type": "string" }, "icon_template": { "description": "Defines a template for the icon of the sensor.\nhttps://www.home-assistant.io/integrations/binary_sensor.template#icon_template", "type": "string" }, "state_class": { "description": "The State Class of the sensor.\nhttps://www.home-assistant.io/integrations/binary_sensor.template#state_class", "enum": ["measurement", "total", "total_increasing"], "type": "string" }, "unit_of_measurement": { "description": "Defines the units of measurement of the sensor, if any. This will also influence the graphical presentation in the history visualization as a continuous value.\nhttps://www.home-assistant.io/integrations/binary_sensor.template#unique_id", "type": "string" }, "unique_id": { "description": "An ID that uniquely identifies this binary sensor. Set this to an unique value to allow customization through the UI.\nhttps://www.home-assistant.io/integrations/template#unique_id", "type": "string" }, "value_template": { "description": "Defines a template to get the state of the sensor.\nhttps://www.home-assistant.io/integrations/template#value_template", "type": "string" } }, "additionalProperties": false, "required": ["value_template"] }, "TimePeriodMap": { "type": "object", "properties": { "days": { "description": "Number of days. This must be a number.", "type": ["string", "number"] }, "hours": { "description": "Number of hours. This must be a number.", "type": ["string", "number"] }, "milliseconds": { "description": "Number of milliseconds. This must be a number.", "type": ["string", "number"] }, "minutes": { "description": "Number of minutes. This must be a number.", "type": ["string", "number"] }, "seconds": { "description": "Number of seconds. This must be a number.", "type": ["string", "number"] } }, "additionalProperties": false }, "SensorPlatformSchema_1": { "type": "object", "properties": { "platform": { "description": "The mqtt_room sensor platform allows you to detect the indoor location of devices using MQTT clients.\nhttps://www.home-assistant.io/integrations/sensor.mqtt", "type": "string", "const": "mqtt_room" }, "device_id": { "description": "The device id to track for this sensor.\nhttps://www.home-assistant.io/integrations/mqtt_room/#device_id", "type": "string" }, "name": { "description": "The name of the MQTT sensor.\nhttps://www.home-assistant.io/integrations/sensor.mqtt#name", "type": "string" }, "state_topic": { "description": "The MQTT topic subscribed to receive sensor values.\nhttps://www.home-assistant.io/integrations/sensor.mqtt#state_topic", "type": "string" }, "timeout": { "type": "integer", "minimum": 0, "description": "The time in seconds after which a room presence state is considered old.\nhttps://www.home-assistant.io/integrations/mqtt_room/#timeout" }, "away_timeout": { "type": "integer", "minimum": 0, "description": "The time in seconds after which the state should be set to not_home if there were no updates. 0 disables the check.\nhttps://www.home-assistant.io/integrations/mqtt_room/#away_timeout" }, "unique_id": { "description": "An ID that uniquely identifies this room sensor. If two sensors have the same unique ID, Home Assistant will raise an exception.\nhttps://www.home-assistant.io/integrations/mqtt_room/#unique_id", "type": "string" }, "entity_namespace": { "description": "By setting an entity namespace, all entities will be prefixed with that namespace.\nhttps://www.home-assistant.io/docs/configuration/platform_options/#entity-namespace", "type": "string" }, "scan_interval": { "description": "Allow to change the polling interval if the platform uses a polling mechanism.\nhttps://www.home-assistant.io/docs/configuration/platform_options/#scan-interval", "anyOf": [ { "$ref": "#/definitions/TimePeriodMap" }, { "type": ["string", "number"] } ] } }, "additionalProperties": false, "required": ["device_id", "platform", "state_topic"] }, "OtherPlatform": { "additionalProperties": true, "type": "object", "properties": { "platform": { "description": "Platform domain", "pattern": "^(?!(mqtt_room|template|mqtt)$)\\w+$", "type": "string" }, "entity_namespace": { "description": "By setting an entity namespace, all entities will be prefixed with that namespace.\nhttps://www.home-assistant.io/docs/configuration/platform_options/#entity-namespace", "type": "string" }, "scan_interval": { "description": "Allow to change the polling interval if the platform uses a polling mechanism.\nhttps://www.home-assistant.io/docs/configuration/platform_options/#scan-interval", "anyOf": [ { "$ref": "#/definitions/TimePeriodMap" }, { "type": ["string", "number"] } ] } }, "required": ["platform"] }, "Item": { "anyOf": [ { "$ref": "#/definitions/SensorPlatformSchema" }, { "$ref": "#/definitions/SensorPlatformSchema_1" }, { "$ref": "#/definitions/OtherPlatform" } ] } }, "$schema": "http://json-schema.org/draft-07/schema#" }

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/oleander/home-assistant-mcp-server'

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