Hydrawise

Hosted MCP endpoint

Paste this into your AI client as a custom connector. Using it more than once? Here’s how.

Local connector: download and install

Download the extension (.mcpb)

Runs on your own computer in Claude Desktop, so there is no address to paste. Steps are on the Install tab.

Permissions

Your Hydrawise email and password, kept in your computer’s keychain and sent only to Hydrawise
Nothing is stored by Let’s MCP

Disconnect

Hunter’s Hydrawise app shows your sprinkler controller one screen at a time. This connector lets your AI read the whole thing at once and answer in a sentence: which zones ran last night and for how long, what is scheduled next, and, if you have a flow meter, how many gallons went through it each day and how much of that was not your sprinklers.

Local and read-only. It runs on your own computer, signs in to Hydrawise as you, and cannot start, stop or change anything on your controller.

Unofficial. Hunter Industries did not make this and is not affiliated with it. Hunter’s public API has no programs, no history and no flow data, so this connector reads the same private API the Hydrawise app uses, the way Home Assistant and the open-source pydrawise library do. Hunter’s API terms prohibit reverse engineering their API, and Hunter could block this kind of access at any time. We intend to ask Hunter for permission to do this properly.

What It Can Do

Nine tools, all read-only. Your AI decides which to call. The full reference is on the Tools tab.

  • See your setup. Your account and every controller: model, serial number, firmware, online state and last check-in.
  • See what is happening. Every zone: what is running now, what runs next, when it last ran, suspensions, watering adjustment and cycle and soak.
  • Read your programs. Days, start times, which zones each program runs and for how long.
  • Look back. Every zone run that actually happened, with its duration, status and, with a flow meter, the water it used. Up to 31 days at a time.
  • Log your water use. Gallons per day from your flow meter, split into water used by zone runs and water that moved while nothing was scheduled, which is how hose use and leaks show up. Up to 92 days at a time, with a per-zone breakdown.
  • Watch the flow now. The flow meter’s current reading.
  • Look ahead. The forecast Hydrawise waters by, and the controller’s recent alerts.

Things Worth Knowing Before You Start

  • It needs Claude Desktop (Mac or Windows) or another AI app that runs local MCP servers. It does not work from a browser or a phone, because there is nothing hosted to connect to.
  • You type your Hydrawise email and password once, when you install it. Claude Desktop keeps the password in your Mac Keychain or Windows Credential Manager. The connector sends it only to Hydrawise.
  • Water-use numbers need a flow meter wired to the controller and set up as a Flow sensor in the Hydrawise app. Without one, you get run times only.
  • Finished days of water use are saved to a small log file in a .letsmcp-hydrawise folder in your home folder, so the history builds up and asking again is free. It holds dates, gallons and zone names, never your password.
  • Hydrawise blocks accounts that call this API too often. The connector makes at most 10 Hydrawise calls per 30 minutes and remembers answers for 5 to 60 minutes. If Hydrawise ever says slow down, it pauses for 15 minutes.
  • This is version 0.1.0 and new. If something comes back wrong, tell us on the contact form.

Download the extension (letsmcp-hydrawise-local-0.1.0.mcpb, 16 KB), then follow the Install tab.

Claude Desktop

  1. Download letsmcp-hydrawise-local-0.1.0.mcpb.
  2. Open Claude Desktop and go to Settings, then Extensions, then Advanced settings, then Extension Developer, and choose Install Extension. Pick the file you downloaded. Double-clicking the file may also open the installer.
  3. When it asks, enter the email and password you use in the Hydrawise app. Leave Time zone blank unless days come out wrong; the connector uses your controller’s own time zone.
  4. Start a new chat. The connector’s tools are available from then on; you never have to name them.

Try: “Using Hydrawise, how much water did we use each day this week, and how much of it was outside the watering schedule?”

Other AI apps that run on your computer and support local MCP servers can run the same connector. The bundle is a standard .mcpb file, a zip containing one Node.js script, so a developer can unzip it and point their client at server/index.mjs.

Quick Start (Claude Desktop)

  1. Download letsmcp-hydrawise-local-0.1.0.mcpb.
  2. In Claude Desktop: Settings, Extensions, Advanced settings, Extension Developer, Install Extension. Pick the file.
  3. Enter your Hydrawise email and password.
  4. Ask about your sprinklers in a new chat.

How It Works

The connector is one small Node.js script with no other dependencies. Claude Desktop runs it with its built-in Node.js and talks to it over standard input and output, the standard way local MCP servers work. When your AI asks something, the script signs in to Hydrawise with the email and password Claude Desktop hands it, sends one read-only query to the Hydrawise app API, and returns the answer. The sign-in token is kept in memory only and is gone when Claude Desktop quits.

It contains no commands that change anything. The code that talks to Hydrawise holds query documents only, and refuses to send anything that is not a query.

Water Use, And How It Is Counted

Water use follows the method in pydrawise, the library Home Assistant uses for Hydrawise:

  • Active use is the water Hydrawise reports for each zone run, added up.
  • Total use is what the flow meter measured over the day.
  • Inactive use is the difference: water that moved while no zone was running. A hose bib downstream of the meter, or a leak.
  • If the meter’s total lags behind the run reports, total is set to active and inactive to zero rather than showing a negative number.

Days are counted midnight to midnight in your controller’s time zone. Up to 31 days come back from Hydrawise in a single call. A day is written to the local log three hours after it ends, once the controller has checked in since then.

Limits

  • 10 Hydrawise calls per rolling 30 minutes. Answers are remembered for 5 to 60 minutes, and logged days cost nothing.
  • A 15-minute pause after any rate-limit reply from Hydrawise.
  • Watering history: up to 31 days per request. Water use: up to 92 days per request.
  • Every call is labelled letsmcp-hydrawise-local/0.1.0 so Hunter can see what is calling.

Privacy

Let’s MCP is not involved once you have downloaded the file. Your password stays in your operating system’s keychain and goes only to Hydrawise. Sprinkler data reaches the AI model only as answers inside your own AI app, under that app’s privacy terms. The connector itself makes no other network calls.

Source And License

MIT licensed, written by John Pozadzides for Let’s MCP. The sign-in method, the Hydrawise schema and the water-use method come from pydrawise by David Knowles (Apache License 2.0). The downloaded file contains the complete, readable source of the server.

No. It is an unofficial connector from Let’s MCP. Hunter Industries did not make it and does not support it.

Hunter’s API terms prohibit reverse engineering their API, and this connector uses the private API the Hydrawise app uses. Many Home Assistant owners use the same access every day. The realistic risk is that Hunter blocks this access or your API use. We plan to ask Hunter for permission to build it properly.

Hosting it would mean Let’s MCP holding everyone’s Hydrawise password, which gives full control of the account. We don’t hold keys broader than a connector needs, so this one runs only on your own computer.

No. It is read-only. There is no tool that starts, stops, suspends or edits anything, and the code refuses to send any change to Hydrawise.

Claude Desktop stores it in your Mac Keychain or Windows Credential Manager, because the extension marks it as sensitive. The connector sends it only to Hydrawise, to sign in.

Hydrawise only reports gallons when a flow meter is connected to the controller and set up as a Flow sensor in the Hydrawise app. Check that sensor in the app. Run times still work without it.

Water the meter measured while no zone was running. If you have a hose bib or other tap downstream of the meter, that is where it went. If you don’t, it can be a leak worth looking at.

Wait the few minutes it names. The limit is deliberately low so Hydrawise does not block your account. Answers it already has, and every logged day, still work.

Any AI app that runs on your computer and supports local MCP servers can run it. Claude Desktop is what we test with. Browser-only and phone apps cannot reach software on your computer.

In Claude Desktop, open Settings, then Extensions, and remove Hydrawise. Delete the .letsmcp-hydrawise folder in your home folder if you also want the water log gone.

Connector Status

hydrawise_connector_status

The connector’s own state: version, Hydrawise calls left in the current 30 minutes, any rate-limit pause, and where the water log is kept. Makes no Hydrawise call.

Account And Controllers

hydrawise_account

Your Hydrawise account and every controller: id, name, model, serial number, firmware, online state and last contact. Remembered for 30 minutes.

  • refresh (boolean, optional): Skip the remembered answer. Costs one Hydrawise call.

Controller Detail And Live Flow

hydrawise_controller

One controller: status, time zone, master valve, today’s weather observations, and every sensor, including the flow meter’s current reading. Remembered for 5 minutes.

  • controller_id (integer, optional): Controller id. Not needed when the account has one controller.
  • refresh (boolean, optional): Skip the remembered answer. Costs one Hydrawise call.

Zones

hydrawise_zones

Every zone: number, name, what is running now, next and last run, suspensions, watering adjustment, cycle and soak, and the programs that water it. Remembered for 5 minutes.

  • controller_id (integer, optional): Controller id. Not needed when the account has one controller.
  • refresh (boolean, optional): Skip the remembered answer. Costs one Hydrawise call.

Programs

hydrawise_programs

Every watering program: days, start times, which zones it runs and for how long, monthly adjustments and the rain-sensor setting. Read-only. Remembered for 30 minutes.

  • controller_id (integer, optional): Controller id. Not needed when the account has one controller.
  • refresh (boolean, optional): Skip the remembered answer. Costs one Hydrawise call.

Watering History

hydrawise_watering_history

Every zone run that actually happened between two dates: zone, program, start and end, duration in seconds, status, stop reason, and the water used when a flow meter is installed. Up to 31 days; defaults to the last 7. Remembered for 10 minutes.

  • controller_id (integer, optional): Controller id. Not needed when the account has one controller.
  • start_date (string, optional): First day, YYYY-MM-DD, in the controller’s time zone.
  • end_date (string, optional): Last day, YYYY-MM-DD. Default: today.

Water Use By Day

hydrawise_water_use

Daily water use from the flow meter: total through the meter, used by zone runs, used while nothing was running, run time and a per-zone breakdown, plus totals for the whole range. Up to 92 days; defaults to the last 7 including today. Finished days are saved locally and cost nothing to ask for again; each 31 days not yet saved costs one Hydrawise call.

  • controller_id (integer, optional): Controller id. Not needed when the account has one controller.
  • start_date (string, optional): First day, YYYY-MM-DD, in the controller’s time zone.
  • end_date (string, optional): Last day, YYYY-MM-DD. Default: today.

Weather Forecast

hydrawise_forecast

The forecast Hydrawise uses for your controller’s location: conditions, chance and amount of rain, temperatures, wind and evapotranspiration. Remembered for 60 minutes.

  • controller_id (integer, optional): Controller id. Not needed when the account has one controller.
  • days (integer, optional): Days ahead, 1 to 7. Default 3.

Events And Alerts

hydrawise_events

The controller’s recent events and alerts, such as sensor trips, faults and offline periods, newest first. Remembered for 10 minutes.

  • controller_id (integer, optional): Controller id. Not needed when the account has one controller.
  • count (integer, optional): How many events, 1 to 100. Default 25.