{"openapi":"3.1.0","info":{"title":"Govee (BYOK) API","version":"0.1.0","description":"Govee (BYOK) lets an AI assistant read your own Govee devices and, with your approval of each change, change their state through the Govee API with a key you supply (Govee API key). Read tools plus 5 device-changing tools (set_power, set_brightness, set_color_rgb, set_color_temperature, set_light_toggle); each change runs only when confirm is yes, after you approved it in chat. 8 tools in all...\n\nMost operations are read-only. These change the state of a device and run only with confirm = \"yes\" after the user approved that change: set_power, set_brightness, set_color_rgb, set_color_temperature, set_light_toggle. The same tools are available over MCP (streamable HTTP) at https://byok-govee-control.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-govee-control/docs"},"termsOfService":"https://connectorbay.com/byok-govee-control/terms"},"servers":[{"url":"https://byok-govee-control.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-govee-control/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/list_devices":{"post":{"operationId":"list_devices","summary":"List your Govee devices with model (sku), device id, name, type and the capabilities each one supports. Call it first: t","description":"List your Govee devices with model (sku), device id, name, type and the capabilities each one supports. Call it first: the other tools need sku and device. Limited to 30 calls per minute. Use for \"Which Govee devices do I have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_devicesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_device_state":{"post":{"operationId":"get_device_state","summary":"Get the current state of one device: online flag, power, brightness, color, color temperature and other capability value","description":"Get the current state of one device: online flag, power, brightness, color, color temperature and other capability values. Limited to 30 calls per minute per device. Use for \"Is my Govee light H6601 on, and what color is it\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"sku":{"description":"Product model (sku) of the device, as returned by list_devices, for example H6601.","maxLength":40,"title":"Sku","type":"string"},"device":{"description":"Device id as returned by list_devices (a MAC-style string such as 9D:FA:85:EB:D3:00:8B:FF).","maxLength":64,"title":"Device","type":"string"}},"required":["sku","device"],"title":"get_device_stateArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_light_scenes":{"post":{"operationId":"get_light_scenes","summary":"List the dynamic light scenes (names with scene ids) a light supports. Read only; limited to 30 calls per minute per dev","description":"List the dynamic light scenes (names with scene ids) a light supports. Read only; limited to 30 calls per minute per device. Use for \"Which dynamic scenes does my Govee light H6057 have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"sku":{"description":"Product model (sku) of the device, as returned by list_devices, for example H6601.","maxLength":40,"title":"Sku","type":"string"},"device":{"description":"Device id as returned by list_devices (a MAC-style string such as 9D:FA:85:EB:D3:00:8B:FF).","maxLength":64,"title":"Device","type":"string"}},"required":["sku","device"],"title":"get_light_scenesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/set_power":{"post":{"operationId":"set_power","summary":"Turn a Govee light or smart plug on or off (the powerSwitch capability). Use only on lights and smart plugs; do not send","description":"Turn a Govee light or smart plug on or off (the powerSwitch capability). Use only on lights and smart plugs; do not send it to a door, lock or alarm device. This changes the physical device. Use for \"Turn off my Govee desk strip\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"sku":{"description":"Product model (sku) of the device, as returned by list_devices, for example H6601.","maxLength":40,"title":"Sku","type":"string"},"device":{"description":"Device id as returned by list_devices (a MAC-style string such as 9D:FA:85:EB:D3:00:8B:FF).","maxLength":64,"title":"Device","type":"string"},"on":{"description":"1 to turn the device on, 0 to turn it off.","maximum":1,"minimum":0,"title":"On","type":"integer"},"confirm":{"const":"yes","description":"Must be exactly yes, only after the user approved this change in chat.","title":"Confirm","type":"string"}},"required":["sku","device","on","confirm"],"title":"set_powerArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":false,"x-changes-device-state":true,"x-requires-confirmation":"confirm"}},"/v1/tools/set_brightness":{"post":{"operationId":"set_brightness","summary":"Set the brightness of a Govee light from 1 to 100 percent (the brightness range capability). Use only on lights and smar","description":"Set the brightness of a Govee light from 1 to 100 percent (the brightness range capability). Use only on lights and smart plugs; do not send it to a door, lock or alarm device. This changes the physical device. Use for \"Dim my Govee desk strip to 30 percent\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"sku":{"description":"Product model (sku) of the device, as returned by list_devices, for example H6601.","maxLength":40,"title":"Sku","type":"string"},"device":{"description":"Device id as returned by list_devices (a MAC-style string such as 9D:FA:85:EB:D3:00:8B:FF).","maxLength":64,"title":"Device","type":"string"},"brightness":{"description":"Brightness in percent, 1 to 100 (the device may report a narrower range in list_devices).","maximum":100,"minimum":1,"title":"Brightness","type":"integer"},"confirm":{"const":"yes","description":"Must be exactly yes, only after the user approved this change in chat.","title":"Confirm","type":"string"}},"required":["sku","device","brightness","confirm"],"title":"set_brightnessArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":false,"x-changes-device-state":true,"x-requires-confirmation":"confirm"}},"/v1/tools/set_color_rgb":{"post":{"operationId":"set_color_rgb","summary":"Set the color of a Govee light as one RGB number (colorRgb capability). Use only on lights and smart plugs; do not send ","description":"Set the color of a Govee light as one RGB number (colorRgb capability). Use only on lights and smart plugs; do not send it to a door, lock or alarm device. This changes the physical device. Use for \"Make my Govee desk strip red\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"sku":{"description":"Product model (sku) of the device, as returned by list_devices, for example H6601.","maxLength":40,"title":"Sku","type":"string"},"device":{"description":"Device id as returned by list_devices (a MAC-style string such as 9D:FA:85:EB:D3:00:8B:FF).","maxLength":64,"title":"Device","type":"string"},"rgb":{"description":"Color as one integer from 0 to 16777215, computed as red*65536 + green*256 + blue (pure red is 16711680).","maximum":16777215,"minimum":0,"title":"Rgb","type":"integer"},"confirm":{"const":"yes","description":"Must be exactly yes, only after the user approved this change in chat.","title":"Confirm","type":"string"}},"required":["sku","device","rgb","confirm"],"title":"set_color_rgbArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":false,"x-changes-device-state":true,"x-requires-confirmation":"confirm"}},"/v1/tools/set_color_temperature":{"post":{"operationId":"set_color_temperature","summary":"Set the white color temperature of a Govee light in kelvin (colorTemperatureK capability). Use only on lights and smart ","description":"Set the white color temperature of a Govee light in kelvin (colorTemperatureK capability). Use only on lights and smart plugs; do not send it to a door, lock or alarm device. This changes the physical device. Use for \"Set my Govee desk strip to warm white 2700 K\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"sku":{"description":"Product model (sku) of the device, as returned by list_devices, for example H6601.","maxLength":40,"title":"Sku","type":"string"},"device":{"description":"Device id as returned by list_devices (a MAC-style string such as 9D:FA:85:EB:D3:00:8B:FF).","maxLength":64,"title":"Device","type":"string"},"kelvin":{"description":"Color temperature in kelvin; the supported range is in list_devices (commonly 2000 to 9000).","maximum":9000,"minimum":2000,"title":"Kelvin","type":"integer"},"confirm":{"const":"yes","description":"Must be exactly yes, only after the user approved this change in chat.","title":"Confirm","type":"string"}},"required":["sku","device","kelvin","confirm"],"title":"set_color_temperatureArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":false,"x-changes-device-state":true,"x-requires-confirmation":"confirm"}},"/v1/tools/set_light_toggle":{"post":{"operationId":"set_light_toggle","summary":"Switch one secondary toggle of a Govee device on or off, such as a night light, gradient effect or one socket of a multi","description":"Switch one secondary toggle of a Govee device on or off, such as a night light, gradient effect or one socket of a multi-socket plug. Use only on lights and smart plugs; do not send it to a door, lock or alarm device. This changes the physical device. Use for \"Turn on the night light of my Govee humidifier\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"sku":{"description":"Product model (sku) of the device, as returned by list_devices, for example H6601.","maxLength":40,"title":"Sku","type":"string"},"device":{"description":"Device id as returned by list_devices (a MAC-style string such as 9D:FA:85:EB:D3:00:8B:FF).","maxLength":64,"title":"Device","type":"string"},"instance":{"description":"Which toggle: nightlightToggle, gradientToggle, dreamViewToggle, mainLightToggle, backgroundLightToggle, oscillationToggle, socketToggle1 or socketToggle2.","enum":["nightlightToggle","gradientToggle","dreamViewToggle","mainLightToggle","backgroundLightToggle","oscillationToggle","socketToggle1","socketToggle2"],"title":"Instance","type":"string"},"on":{"description":"1 to switch the toggle on, 0 to switch it off.","maximum":1,"minimum":0,"title":"On","type":"integer"},"confirm":{"const":"yes","description":"Must be exactly yes, only after the user approved this change in chat.","title":"Confirm","type":"string"}},"required":["sku","device","instance","on","confirm"],"title":"set_light_toggleArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":false,"x-changes-device-state":true,"x-requires-confirmation":"confirm"}}}}