Provides comprehensive control of Wyze smart home devices including lights, switches, plugs, scales, locks, cameras, and thermostats. Supports device discovery, status monitoring, brightness control, color temperature adjustment, group management, and health data retrieval from Wyze scales.
MCP Wyze Server
An MCP (Model Context Protocol) server for controlling Wyze smart home devices using the wyze-sdk library.
Overview
This MCP server provides a comprehensive interface for interacting with Wyze devices through AI assistants like Claude. It supports authentication, device discovery, device control, and group management for various Wyze smart home products.
Features
- Authentication: Secure login using Wyze API credentials
- Device Discovery: List and get information about all Wyze devices
- Device Control: Turn devices on/off, adjust brightness, and more
- Group Management: Control entire rooms or groups of devices at once
- Live Resources: Real-time device and group status monitoring
- Automatic Login: Uses environment variables for seamless authentication
Prerequisites
- Python 3.13+
- Wyze developer account with API credentials
uv
package manager
Installation
Option 1: Install from PyPI (Recommended)
Or with pip:
Option 2: Install from Source
- Clone the repository:
- Install with uv:
Or build and install:
Configure Environment Variables
After installation, configure environment variables:
Edit .env
and add your Wyze credentials:
Getting Wyze API Credentials
To obtain your Wyze API credentials:
- Visit the Wyze Developer Portal
- Create a developer account if you don't have one
- Create a new API key
- Note down your
KEY_ID
andAPI_KEY
Usage
Running the Server Standalone
If installed from PyPI:
If running from source:
Integrating with Claude Desktop
Add this configuration to your Claude Desktop MCP settings:
If installed globally via pip/uv:
Note: Replace /Users/yourusername/.local/bin/uv
with the actual path to your uv
installation. You can find this by running which uv
in your terminal.
If running from source (recommended for development):
Note: Replace /Users/yourusername/.local/bin/uv
with your actual uv
path.
Configuration with Other MCP Clients
This server uses stdio transport and can be integrated with any MCP client that supports the protocol.
If installed via PyPI:
If running from source:
Available MCP Tools
Authentication
wyze_login()
- Login to Wyze account (uses env vars)
Device Management
wyze_get_devices()
- List all deviceswyze_device_info(device_mac)
- Get device detailswyze_get_device_status(device_mac)
- Get accurate current status (power state, brightness, etc.)
Basic Device Control
wyze_turn_on_device(device_mac)
- Turn on a devicewyze_turn_off_device(device_mac)
- Turn off a devicewyze_set_brightness(device_mac, brightness)
- Set brightness (0-100)
Enhanced Light Control
wyze_set_color_temp(device_mac, color_temp)
- Set color temperature (2700K-6500K)wyze_set_color(device_mac, color)
- Set RGB color (hex format)wyze_set_light_effect(device_mac, effect)
- Set visual effectswyze_set_light_sun_match(device_mac, enabled)
- Enable/disable sun matchingwyze_clear_light_timer(device_mac)
- Clear scheduled timers
Scale Management
wyze_get_scales()
- List all Wyze scaleswyze_get_scale_info(device_mac)
- Get detailed scale informationwyze_get_scale_records(device_mac, user_id, days_back)
- Get weight/body composition records
Resources
wyze://devices
- Live device list with statuswyze://scales
- Live scale list with family members
Prompts
wyze_device_control_prompt(device_name, action)
- Generate control promptswyze_scale_health_prompt(family_member_name, timeframe)
- Generate health analysis prompts
Supported Devices
This server supports various Wyze device types including:
- Lights (Bulbs, Light Strips)
- Switches
- Plugs
- Scales
- Locks
- Cameras (basic control)
- Thermostats
- And more...
Development
This project uses:
- FastMCP: A high-performance MCP server framework
- wyze-sdk: Comprehensive Python interface for Wyze devices
- uv: Fast Python package manager
Project Structure
Troubleshooting
Common Issues
- Authentication Failed: Ensure your Wyze credentials are correct and API keys are valid
- Device Not Found: Device MAC addresses are case-sensitive
- Connection Timeout: Check your network connection and Wyze service status
Debug Mode
Enable debug logging by setting the environment variable:
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- Wyze SDK for the excellent Python library
- MCP for the Model Context Protocol specification
- FastMCP for the MCP server framework
Disclaimer
This project is not affiliated with, endorsed by, or sponsored by Wyze Labs, Inc. All product names, logos, and brands are property of their respective owners.
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
Enables control and monitoring of Wyze smart home devices through AI assistants. Supports device discovery, control (on/off, brightness, color), group management, and health tracking for scales with real-time status monitoring.
Related MCP Servers
- -securityAlicense-qualityAccess Home Assistant data and control devices (lights, switches, thermostats, etc).Last updated -6395TypeScriptApache 2.0
- -securityAlicense-qualitySmart Device Control 🎮 💡 Lights: Brightness, color, RGB 🌡️ Climate: Temperature, HVAC, humidity 🚪 Covers: Position and tilt 🔌 Switches: On/off 🚨 Sensors: State monitoring Intelligent Organization 🏠 Grouping with context awareness. Robust Architecture 🛠️ Error handling, state validation ...Last updated -624TypeScriptApache 2.0
- -securityFlicense-qualityEnables users to control Google Home smart plugs using the Smart Home API with OAuth2 authentication, offering real-time device state management and control operations.Last updated -1TypeScript
- AsecurityAlicenseAqualityEnables AI assistants to control SwitchBot devices, providing functionalities like device management, scene execution, and sensor information monitoring through the SwitchBot API.Last updated -33JavaScriptISC License