NestDaddy

Iaqualink Mcp

io.github.chrischall/iaqualink-mcp · v0.3.1

iAqualink pool equipment: status plus confirm-gated pump, heater, light and set-point control.

Connect Runs on your machine

Terminal
claude mcp add iaqualink-mcp -e IAQUALINK_EMAIL=<IAQUALINK_EMAIL> -e IAQUALINK_PASSWORD=<IAQUALINK_PASSWORD> -e IAQUALINK_STATUS_CACHE_SECONDS=<IAQUALINK_STATUS_CACHE_SECONDS> -e IAQUALINK_WEBTOUCH_STREAM_HOSTS=<IAQUALINK_WEBTOUCH_STREAM_HOSTS> -e IAQUALINK_VERIFY_TIMEOUT_MS=<IAQUALINK_VERIFY_TIMEOUT_MS> -- npx -y @chrischall/[email protected]
claude_desktop_config.json
{
  "mcpServers": {
    "iaqualink-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@chrischall/[email protected]"
      ],
      "env": {
        "IAQUALINK_EMAIL": "<IAQUALINK_EMAIL>",
        "IAQUALINK_PASSWORD": "<IAQUALINK_PASSWORD>",
        "IAQUALINK_STATUS_CACHE_SECONDS": "<IAQUALINK_STATUS_CACHE_SECONDS>",
        "IAQUALINK_WEBTOUCH_STREAM_HOSTS": "<IAQUALINK_WEBTOUCH_STREAM_HOSTS>",
        "IAQUALINK_VERIFY_TIMEOUT_MS": "<IAQUALINK_VERIFY_TIMEOUT_MS>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "iaqualink-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@chrischall/[email protected]"
      ],
      "env": {
        "IAQUALINK_EMAIL": "<IAQUALINK_EMAIL>",
        "IAQUALINK_PASSWORD": "<IAQUALINK_PASSWORD>",
        "IAQUALINK_STATUS_CACHE_SECONDS": "<IAQUALINK_STATUS_CACHE_SECONDS>",
        "IAQUALINK_WEBTOUCH_STREAM_HOSTS": "<IAQUALINK_WEBTOUCH_STREAM_HOSTS>",
        "IAQUALINK_VERIFY_TIMEOUT_MS": "<IAQUALINK_VERIFY_TIMEOUT_MS>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "iaqualink-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@chrischall/[email protected]"
      ],
      "env": {
        "IAQUALINK_EMAIL": "<IAQUALINK_EMAIL>",
        "IAQUALINK_PASSWORD": "<IAQUALINK_PASSWORD>",
        "IAQUALINK_STATUS_CACHE_SECONDS": "<IAQUALINK_STATUS_CACHE_SECONDS>",
        "IAQUALINK_WEBTOUCH_STREAM_HOSTS": "<IAQUALINK_WEBTOUCH_STREAM_HOSTS>",
        "IAQUALINK_VERIFY_TIMEOUT_MS": "<IAQUALINK_VERIFY_TIMEOUT_MS>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
IAQUALINK_EMAIL
Optional
The email address you sign in to the iAqualink app with (needed by every tool; the server starts without it)
IAQUALINK_PASSWORD
Optional, secret
Your iAqualink password (needed by every tool; the server starts without it)
IAQUALINK_STATUS_CACHE_SECONDS
Optional
Seconds a system's status read is reused before re-polling iAqualink (default 5; 0 disables)
IAQUALINK_WEBTOUCH_STREAM_HOSTS
Optional
Extra hosts (comma-separated) the WebTouch display stream may be served from, beyond webtouch.iaqualink.net and prm.iaqualink.net. Leave unset unless a WebTouch error names a new host
IAQUALINK_VERIFY_TIMEOUT_MS
Optional
Milliseconds a write keeps re-reading to confirm the change landed before it reports sent-unconfirmed, for both iAqua and eXO systems (a positive integer; default 15000 for iAqua, 30000 for eXO)

Details

Package@chrischall/[email protected] (NPM, stdio)
First published4 Nov 2026
Last updated4 Nov 2026
Registry nameio.github.chrischall/iaqualink-mcp

More other servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.