En fait, le souci vient des appareils qui n’ont pas de pièce assignée !
J’ai fait une PR qui corrige le souci :
master ← fix-mcp-server-for-devices-with-no-room
ouvert 04:01PM - 03 Nov 25 UTC
### Pull Request check-list
To ensure your Pull Request can be accepted as fa… st as possible, make sure to review and check all of these items:
- [ ] If your changes affects code, did your write the tests?
- [ ] Are tests passing? (`npm test` on both front/server)
- [ ] Is the linter passing? (`npm run eslint` on both front/server)
- [ ] Did you run prettier? (`npm run prettier` on both front/server)
- [ ] If you are adding a new features/services, did you run integration comparator? (`npm run compare-translations` on front)
- [ ] Did you test this pull request in real life? With real devices? If this development is a big feature or a new service, we recommend that you provide a Docker image to the community ([french forum](https://community.gladysassistant.com/)/[english forum](https://en-community.gladysassistant.com/)) for testing before merging.
- [ ] If your changes modify the API (REST or Node.js), did you modify the API documentation? (Documentation is based on comments in code)
- [ ] If you are adding a new features/services which needs explanation, did you modify the user documentation? See [the GitHub repo](https://github.com/GladysAssistant/v4-website) and the [website](https://gladysassistant.com).
- [ ] Did you add fake requests data for the demo mode (`front/src/config/demo.js`) so that the demo website is working without a backend? (if needed) See [https://demo.gladysassistant.com](https://demo.gladysassistant.com).
NOTE: these things are not required to open a PR and can be done afterwards / while the PR is open.
### Description of change
Fix error:
```
2025-11-03T15:04:03+0100 <warn> service.start.js:44 (Service.start) Unable to start service mcp TypeError: Cannot read properties of null (reading 'selector')
at /src/server/services/mcp/lib/buildSchemas.js:41:28
at Array.forEach (<anonymous>)
at MCPHandler.getAllResources (/src/server/services/mcp/lib/buildSchemas.js:28:17)
at MCPHandler.createServer (/src/server/services/mcp/lib/createServer.js:26:4)
at Object.start (/src/server/services/mcp/index.js:29:5)
at Service.start (/src/server/lib/service/service.start.js:33:7)
```
Gladys v4.65.1 en cours de build avec le correctif…
Ah, je ne savais pas qu’on pouvais avoir des appareils sans pièce associée.
Merci pour ton fix rapide, je n’ai pas eu le temps de voir le message. De ce que j’ai vu tu as retiré ces appareils sans pièce du schéma MCP. On peut possiblement prendre en compte ces appareils en leur assignant une pièce par défaut “cross-room” ou quelque chose du genre (uniquement dans le schema MCP), qu’en penses tu ? J’imagine que pour ceux qui l’utilise, ça serait intéressant d’avoir par exemple le linky dans les données renvoyées au client MCP
Par défaut les appareils n’ont pas de pièces donc c’est assez courant
J’ai fais un fix rapide mais carrément pour faire une pièce par défaut !
Je suis entrain d’ajouter un nouvel outil au service MCP. L’objectif est de récupérer un historique de valeurs et non pas uniquement l’état actuel. Une fois la liste de données obtenues, on peut utiliser la puissance des LLMs pour étudier l’évolution, comparer…
Comme pour les graphiques, on peut récupérer la dernière heure, les 12 dernières heures, le dernier jour, la dernière semaine, le dernier mois, les 3 derniers mois ou la dernière année.
Petite démo
VIDEO
La PR
master ← bertrandda:feat/mcp-history
opened 09:05PM - 17 Nov 25 UTC
### Pull Request check-list
To ensure your Pull Request can be accepted as fa… st as possible, make sure to review and check all of these items:
- [ ] If your changes affects code, did your write the tests?
- [ ] Are tests passing? (`npm test` on both front/server)
- [ ] Is the linter passing? (`npm run eslint` on both front/server)
- [ ] Did you run prettier? (`npm run prettier` on both front/server)
- [ ] If you are adding a new features/services, did you run integration comparator? (`npm run compare-translations` on front)
- [ ] Did you test this pull request in real life? With real devices? If this development is a big feature or a new service, we recommend that you provide a Docker image to the community ([forum](https://community.gladysassistant.com/)) for testing before merging.
- [ ] If your changes modify the API (REST or Node.js), did you modify the API documentation? (Documentation is based on comments in code)
- [ ] If you are adding a new features/services which needs explanation, did you modify the user documentation? See [the GitHub repo](https://github.com/GladysAssistant/v4-website) and the [website](https://gladysassistant.com).
- [ ] Did you add fake requests data for the demo mode (`front/src/config/demo.js`) so that the demo website is working without a backend? (if needed) See [https://demo.gladysassistant.com](https://demo.gladysassistant.com).
NOTE: these things are not required to open a PR and can be done afterwards / while the PR is open.
### Description of change
I added new tool to retrieve feature value history
I also try [toon](https://github.com/toon-format/toon) as response encoding to reduce token used by llm
Comme la première fois, une image est disponible bertrandda/gladys:mcp-server
2 « J'aime »
Stylé ça avance bien !!
Dis moi dès que tu as besoin d’une review sur la PR
Une nouvelle image est disponible avec quelques fix.
@pierre-gilles je pense qu’on est bon pour commencer la review
1 « J'aime »
Top génial, je vais regarder
C’est bon pour moi, c’est mergé et ça partira dans la prochaine version de Gladys
2 « J'aime »