Control SmartRent smart home devices (locks, thermostat, switches, sensors) via Claude
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
Inspect callable tools, capabilities, and parameters exposed to AI agents by Smartrent Mcp.
pingTest that the server is alive
get_device_statusRead the status of all devices β locks, thermostat, switches, sensors
switch_controlTurn a light switch on or off
lock_doorLock or unlock the front door
set_temperatureSet thermostat temperature, mode, and unit
An MCP (Model Context Protocol) server that lets Claude control your SmartRent smart home devices β locks, thermostat, light switches, and sensors β through natural conversation.
uv or pip β you likely already have one of theseOption A β using uv (recommended, no separate install step)
If you don't have uv yet, install it once:
That's it β uvx will download and run the package automatically the first time Claude needs it. No manual install command required.
Option B β using plain pip
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.jsonIf you installed via uv (Option A):
If you installed via pip (Option B):
If you already have other servers under "mcpServers", just add "smartrent-mcp" as another entry β don't replace the existing ones.
Fully quit the app (Cmd+Q on Mac, or right-click the tray icon and Quit on Windows) and reopen it. Closing the window alone is not enough.
Ask Claude:
Claude Web only connects to remote MCP servers over a URL β it cannot run local commands like uvx. To use this server with Claude Web, you need to self-host a remote instance. See Self-Hosting below, then add your deployed URL in Claude Web β Settings β MCP Servers.
| Tool | Description | Parameters |
|---|---|---|
ping | Test that the server is alive | none |
get_device_status | Read the status of all devices β locks, thermostat, switches, sensors | none |
switch_control | Turn a light switch on or off | name (e.g. "kitchen"), action ("on" / "off") |
lock_door | Lock or unlock the front door | action ("lock" / "unlock") |
set_temperature | Set thermostat temperature, mode, and unit | temperature (int), mode ("cool" / "heat" / "auto" / "off", default "cool"), unit ("F" / "C", default "F") |
Device matching is partial and case-insensitive β "dining" will match a switch named "Dining Room".
By default this package runs in stdio mode for local use with Claude Desktop. To run it as a remote, always-on server (for Claude Web or shared use), set the TRANSPORT environment variable:
This starts an HTTP/SSE server (default port 8000, override with PORT). Deploy it anywhere that runs Python β Railway, Render, Fly.io, etc. β with these environment variables set:
| Variable | Required | Description |
|---|---|---|
SMARTRENT_EMAIL | Yes | Your SmartRent account email |
SMARTRENT_PASSWORD | Yes | Your SmartRent account password |
TRANSPORT | No | stdio (default) or sse |
PORT | No | Port to listen on in sse mode (default 8000) |
Once deployed, connect to it at https://your-deployment-url/sse.
"Invalid Host header" or connection refused on a remote deployment
The server disables DNS rebinding protection by default to support remote access. If you've changed this, make sure TransportSecuritySettings(enable_dns_rebinding_protection=False) is set in server.py.
Claude Desktop doesn't show any tools Make sure you fully quit and restarted the app (not just closed the window). Check the MCP logs:
~/Library/Logs/Claude/mcp-server-smartrent-mcp.log%APPDATA%\Claude\logs\mcp-server-smartrent-mcp.log"Username or password was wrong" Verify your SmartRent credentials work by logging into the SmartRent mobile app with the same email/password.
"No switch/lock/thermostat found on this account" Your SmartRent account needs the corresponding device type already set up in the SmartRent app.
Your SmartRent credentials are passed as environment variables directly to the server process and are never sent anywhere except SmartRent's own login API. They are not logged or stored by this package.
If you're self-hosting in sse mode, anyone with your server's URL can control your home β there is currently no authentication layer on remote mode. Keep your deployment URL private, or restrict network access to it.
MIT
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/smartrent-mcp)<a href="https://allmcps.com/mcp/smartrent-mcp"><img src="https://allmcps.com/api/badge/smartrent-mcp?style=directory" alt="Smartrent Mcp on AllMCPs" /></a>