opensprinkler-mcp logo

opensprinkler-mcp

Lumeo-sd/opensprinkler-mcp-sdr
0 starsUpdated 2026-03-12Community

Is this your server?

Add your score badge to your README and get your server in front of 45k+ builders a month.

Works with

Claude CodeClaude DesktopCursorVS CodeClineCodex CLIOpenClaw+ any MCP client

Install to Claude Code

This server doesn't publish a one-line install command. Follow the setup in the source repository.

Summary

Enables managing OpenSprinkler irrigation controllers via Claude Desktop, including starting/stopping stations, setting rain delays, and viewing controller status.

README.md

OpenSprinkler MCP Server

MCP server for managing OpenSprinkler controllers via Claude Desktop.

Available Tools

| Tool | Description | |------|-------------| | get_controller_status | Get controller status (device time, enabled state, rain delay) | | get_stations | Get all stations with their current status | | run_station | Start a station for a specified duration | | stop_station | Stop a running station | | stop_all_stations | Stop all running stations immediately | | set_rain_delay | Set rain delay in hours (0 to clear) | | enable_controller | Enable or disable the controller | | reboot_controller | Reboot the OpenSprinkler controller | | get_programs | Get all watering programs | | get_options | Get controller options and settings |

Configuration

Environment Variables

| Variable | Description | Default | |----------|-------------|---------| | OPEN_SPRINKLER_HOST | IP address of OpenSprinkler | localhost | | OPEN_SPRINKLER_PASSWORD | Password (plain text or MD5 hash) | (empty) | | OPEN_SPRINKLER_PORT | HTTP port | 80 |

---

Docker

Build Image

docker build -t opensprinkler-mcp .

Run Manually (Test)

docker run -i --rm ^
  -e OPEN_SPRINKLER_HOST=192.168.1.100 ^
  -e OPEN_SPRINKLER_PASSWORD=your_password ^
  opensprinkler-mcp

Windows (PowerShell): ``powershell docker run -i --rm -e OPEN_SPRINKLER_HOST=192.168.1.100 -e OPEN_SPRINKLER_PASSWORD=your_password opensprinkler-mcp ```

Linux/Mac: ``bash docker run -i --rm \ -e OPEN_SPRINKLER_HOST=192.168.1.100 \ -e OPEN_SPRINKLER_PASSWORD=your_password \ opensprinkler-mcp ``

Auto-Start Options

Option 1: Docker Compose (Recommended)

Create docker-compose.yml:

version: '3.8'

services:
  opensprinkler-mcp:
    image: opensprinkler-mcp
    container_name: opensprinkler-mcp
    restart: unless-stopped
    environment:
      - OPEN_SPRINKLER_HOST=192.168.1.100
      - OPEN_SPRINKLER_PASSWORD=your_password

Start: ``bash docker compose up -d ``

Option 2: Docker Run with Restart

docker run -d --name opensprinkler-mcp ^
  --restart unless-stopped ^
  -e OPEN_SPRINKLER_HOST=192.168.1.100 ^
  -e OPEN_SPRINKLER_PASSWORD=your_password ^
  opensprinkler-mcp

---

Claude Desktop Configuration

Add to your claude_desktop_config.json:

Windows

%APPDATA%\Claude\claude_desktop_config.json

macOS

~/Library/Application Support/Claude/claude_desktop_config.json

Linux

~/.config/Claude/claude_desktop_config.json

Docker (Recommended)

{
  "mcpServers": {
    "opensprinkler": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "OPEN_SPRINKLER_HOST=192.168.1.100",
        "-e",
        "OPEN_SPRINKLER_PASSWORD=your_password",
        "opensprinkler-mcp"
      ]
    }
  }
}

Pre-built Container (with auto-restart)

{
  "mcpServers": {
    "opensprinkler": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-e",
        "OPEN_SPRINKLER_HOST=192.168.1.100",
        "-e",
        "OPEN_SPRINKLER_PASSWORD=your_password",
        "opensprinkler-mcp"
      ]
    }
  }
}

---

Examples

Get all stations status

What stations are currently running?

Start a station

Run station 0 for 10 minutes

Set rain delay

Set 24 hour rain delay

---

Password

The OpenSprinkler API accepts both plain text passwords and MD5 hashes. You can generate an MD5 hash online or use the plain text password directly.

---

Troubleshooting

"Server disconnected" error

This usually means the MCP server is not running or not accessible. Try:

  1. Test Docker manually:
   docker run -i --rm ^
     -e OPEN_SPRINKLER_HOST=YOUR_IP ^
     -e OPEN_SPRINKLER_PASSWORD=YOUR_PASSWORD ^
     opensprinkler-mcp

If it runs without errors, press Ctrl+C to stop.

  1. Check your IP address - make sure OpenSprinkler is reachable from your computer.
  1. Restart Claude Desktop after changing configuration.

See related servers & alternatives →

Related MCP servers

Browse all →

Related guides

Hand-picked reading to help you choose and use Other servers.