What Netatmo Energy MCP server does
The Netatmo Energy MCP server gives an AI assistant structured access to Netatmo smart thermostats and smart radiator valves. It works with homes, rooms, thermostats, valves, relays, and gateways through the official Netatmo Energy API. The project is intended for the Home Automation category and focuses on heating systems rather than Netatmo weather stations.
Read operations cover device discovery, live heating state, historical measurements, schedules, and derived metrics. An assistant can identify homes and rooms, inspect room temperatures and setpoints, check whether the boiler is operating, review device health, and examine heating demand over time.
The server also calculates room statistics, time spent below or above target, cool-down rates, room comparisons, and rule-based anomalies. These analytics are deterministic calculations based on returned Netatmo data. Missing history is reported as gaps rather than filled with estimated values.
How it works
The server runs locally and communicates with Netatmo through the official API. Authentication uses an OAuth2 browser flow. After login, access tokens are stored in the user configuration area and refreshed automatically. The doctor command checks the local setup.
MCP clients call focused tools such as netatmo_get_room_status, netatmo_get_temperature_history, netatmo_get_boiler_history, and netatmo_detect_anomalies. Longer history ranges are fetched in chunks and summarized so responses remain manageable. The project also provides resources and prompts for tasks such as daily reports, anomaly review, room comparison, and heating pattern review.
The Netatmo Energy MCP server is read-only by default. When write access is enabled during login, control requests still require explicit confirmation before they are applied.
Setup and configuration
A Netatmo account with Energy devices and Node.js 22.19 or newer are required. Before logging in, create a free Netatmo developer application and set its redirect URI to http://localhost:8977/callback. The application client ID and client secret are used by the login command.
Run npx -y netatmo-energy-mcp login for read-only access, or use login --write to enable heating controls. Then run npx -y netatmo-energy-mcp doctor to validate the setup. From source, the documented alternative is to install dependencies with pnpm, build the project, and run its generated Node.js entry point.
The local server is normally added to an MCP client with a stdio configuration that invokes npx -y netatmo-energy-mcp. Credentials should not be placed in client configuration files; the login process stores them separately.
Tools and capabilities
Available read-focused capabilities include:
- Listing homes, rooms, and heating devices with identifiers and relationships.
- Reading home, room, heating, boiler, and device status.
- Retrieving room temperature, setpoint, boiler, and heating-demand history.
- Viewing schedules, zones, room targets, and timetables.
- Producing heating summaries, room comparisons, and anomaly reports.
With write mode enabled, the server can temporarily set a room temperature, return a room to its schedule, change the home to schedule, away, or frost-guard mode, and switch, create, update, or rename weekly schedules. Temporary setpoints end automatically, defaulting to three hours and allowing no more than 24 hours. Temperatures are limited to 7–28 °C by default.
Limitations and notes
The Netatmo Energy MCP server requires a local MCP client for its standard setup. ChatGPT and Claude on the web or mobile require the optional remote deployment described by the project instead of the local configuration.
Write operations are opt-in and should be treated as changes to a live heating system. Schedule renaming is marked experimental because it uses an undocumented endpoint. Boiler history depends on installations that include a Netatmo thermostat. The project is identified as an early release, version 0.3.1, so device-specific behavior may require verification against the installation.