iopool-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@iopool-mcpquelle est la température de l'eau de ma piscine ?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
iopool-mcp
Serveur MCP (Model Context Protocol) distant pour consulter les données de votre piscine iopool (température, pH, ORP, mode, recommandation de filtration) directement depuis un assistant compatible MCP (Claude, etc.).
Pourquoi
L'API publique iopool (documentation) n'a pas de connecteur MCP officiel. Ce projet en propose un, hébergé, sans avoir besoin de faire tourner quoi que ce soit en local.
Related MCP server: WHOOP MCP Server
Outils exposés
Outil | Description |
| Liste les piscines du compte et leurs identifiants |
| Données actuelles d'une piscine (température, pH, ORP, mode, filtration) — nécessite |
Récupérer sa clé API iopool
Dans l'application mobile iopool : Plus > Réglages > Clé API.
Configuration du connecteur MCP
Deux méthodes d'authentification. Choisissez selon votre client.
Méthode A — OAuth (claude.ai, web et mobile)
Le formulaire « Ajouter un connecteur personnalisé » de claude.ai ne propose ni champ d'en-tête ni jeton statique : OAuth est la seule option. Ce serveur embarque donc son propre serveur d'autorisation.
Dans Réglages > Connecteurs > Ajouter un connecteur personnalisé :
Champ | Valeur |
Nom |
|
URL du serveur MCP |
|
Connexion requise | activé |
ID / Secret client OAuth | laisser vide |
Laissez les champs client vides : le serveur accepte l'enregistrement dynamique (RFC 7591). À la connexion, une page s'ouvre et vous demande votre clé API iopool ; elle est vérifiée auprès d'iopool, puis chiffrée à l'intérieur du jeton remis à Claude. Vous ne la ressaisissez plus ensuite.
Méthode B — clé directe (Claude Code, Claude Desktop, curl)
URL :
https://iopool-mcp.vercel.app/api/mcpEn-tête :
Authorization: Bearer <votre_cle_api_iopool>Repli accepté :
x-iopool-api-key: <votre_cle_api_iopool>
Claude Code :
claude mcp add --transport http iopool https://iopool-mcp.vercel.app/api/mcp \
--header "Authorization: Bearer VOTRE_CLE_API_IOPOOL"Claude Desktop (claude_desktop_config.json) :
{
"mcpServers": {
"iopool": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://iopool-mcp.vercel.app/api/mcp",
"--header", "Authorization:Bearer VOTRE_CLE_API_IOPOOL"
]
}
}
}Vérifier en ligne de commande
curl -s https://iopool-mcp.vercel.app/api/mcp \
-H 'Content-Type: application/json' \
-H "Authorization: Bearer $IOPOOL_API_KEY" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_pools","arguments":{}}}'Une requête sans en-tête Authorization reçoit un 401 accompagné de
WWW-Authenticate, ce qui déclenche le parcours OAuth côté client.
Déployer votre propre instance
Ce dépôt est réutilisable tel quel. Connectez-le à un projet Vercel, puis :
Ajoutez une variable d'environnement
TOKEN_SECRET(32 caractères minimum, aléatoire). Elle sert à chiffrer les jetons OAuth. Générez-la avecopenssl rand -base64 32.Désactivez Vercel Authentication dans Settings > Deployment Protection, sinon les clients MCP se heurtent à un écran de connexion.
Sans TOKEN_SECRET, les endpoints OAuth renvoient une erreur explicite et
seule l'authentification par en-tête fonctionne.
Pour vérifier que la variable est bien prise en compte, appelez la racine :
GET / renvoie "oauth": "configured" une fois qu'elle est en place. Une
variable ajoutée après le dernier déploiement n'est pas visible tant que le
projet n'a pas été redéployé.
Endpoints OAuth exposés
Route | Rôle |
| Métadonnées de ressource protégée (RFC 9728) |
| Métadonnées du serveur d'autorisation (RFC 8414) |
| Enregistrement dynamique de client (RFC 7591) |
| Page de saisie de la clé iopool |
| Échange du code et rafraîchissement |
PKCE S256 est obligatoire, et les redirect_uri sont restreints aux
domaines claude.ai et aux boucles locales.
Confidentialité
Aucune clé n'est stockée côté serveur : il n'y a ni base de données, ni session, ni journalisation de clé.
En authentification directe, la clé est lue dans l'en-tête et transmise à
l'API iopool le temps de l'appel. En OAuth, elle est chiffrée en AES-256-GCM
à l'intérieur du jeton remis au client : le serveur la déchiffre à chaque
requête, s'en sert, et l'oublie. Un jeton volé est inutilisable sans
TOKEN_SECRET, et changer cette variable révoque tous les jetons émis.
Chaque utilisateur utilise donc sa propre clé : un déploiement partagé ne donne accès à aucune piscine tant que l'appelant ne fournit pas la sienne.
Déploiement
Fonctions serverless Node.js sur Vercel, zéro dépendance (fetch et
crypto natifs, Node >= 18). Chaque push sur la branche de production
redéploie automatiquement.
Route | Rôle |
| Endpoint de santé |
| Endpoint MCP (JSON-RPC) |
Les routes OAuth sont listées plus haut.
Licence
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Query, browse, and automate OmegaAI workspaces from any MCP client. Streamable HTTP with OAuth 2.0.
PerfectPost is a LinkedIn content management platform. This MCP server gives AI assistants read and write access to a user's PerfectPost account: published posts with their engagement analytics, drafts lifecycle (create / edit / schedule), and LinkedIn profile data.
The official Model Context Protocol server for Ambee. It gives any MCP-compatible AI assistant — Claude, ChatGPT, Cursor, VS Code, Ollama, and more direct access to live air quality, pollen, and weather data. To get started, including information on signing up and obtaining your Ambee key, check out the Ambee documentation on https://docs.ambeedata.com
Query InterviewFlowAI candidate and interview data from MCP-compatible AI assistants.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceEnables AI assistants to query Oura Ring health data (sleep, readiness, activity, heart rate, SpO2, stress) via a remote MCP server.6 npmMIT
- AlicenseAqualityDmaintenanceExposes WHOOP recovery, sleep, strain, and workout metrics to MCP-compatible AI assistants using OAuth 2.0 authentication, enabling daily wellbeing snapshots, trend analysis, and workload recommendations.6458 npmMIT
- AlicenseBqualityDmaintenanceExposes personal Garmin Connect data to MCP-capable clients like Claude and Gemini. Enables querying daily stats, heart rate, sleep, activities, and managing workouts.16MIT
- AlicenseNot gradedqualityAmaintenanceA multi-user MCP server that exposes WHOOP fitness data (recovery, sleep, workouts, cycles, profile, body measurements) to AI clients. Each user connects their own WHOOP account via OAuth and only sees their own data, which is fetched live on every tool call.14 npmMIT