iAqualink pool equipment: status plus confirm-gated pump, heater, light and set-point control.
Connect Runs on your machine
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]
{
"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>"
}
}
}
}
{
"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>"
}
}
}
}
{
"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
| Name | Description |
|---|---|
IAQUALINK_EMAILOptional | The email address you sign in to the iAqualink app with (needed by every tool; the server starts without it) |
IAQUALINK_PASSWORDOptional, secret | Your iAqualink password (needed by every tool; the server starts without it) |
IAQUALINK_STATUS_CACHE_SECONDSOptional | Seconds a system's status read is reused before re-polling iAqualink (default 5; 0 disables) |
IAQUALINK_WEBTOUCH_STREAM_HOSTSOptional | 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_MSOptional | 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 published | 4 Nov 2026 |
| Last updated | 4 Nov 2026 |
| Registry name | io.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.
