Assistants IA

En un coup d'œil

  • Ce que c'est : pvSpline parle le Model Context Protocol (MCP), le standard ouvert qu'utilisent les assistants IA pour appeler des outils. Connectez une fois Claude Code, Cursor, VS Code ou un autre client MCP installé sur votre ordinateur, puis posez simplement votre question, par exemple « que produirait une toiture de 6 kWc à Lyon ? ». L'assistant crée le projet dans votre compte, lance le moteur horaire de pvSpline et vous en explique les résultats.

  • Ce qu'il vous faut : un compte pvSpline avec une formule active, les assistants IA activés pour votre société, et un ordinateur en France, car pvSpline n'accepte que les connexions depuis la France (Ce qu'il vous faut).

  • Comment il se connecte : la plupart des assistants n'ont besoin que de l'adresse du serveur, https://api.pvspline.fr/mcp : ils ouvrent une page pvSpline où vous vous connectez et les autorisez (Brancher un assistant). Un assistant qui ne sait pas s'identifier utilise à la place un jeton d'assistant (Un assistant qui ne sait pas s'identifier).

  • Ce que cela coûte : l'assistant travaille dans votre compte. Ses projets apparaissent dans la liste de vos projets, ses calculs sont décomptés de votre quota mensuel de simulation et ses requêtes du quota d'API cloud (Bon à savoir).

  • Comment l'arrêter : Révoquer, sous Jetons de service dans la section Sécurité de la page Compte (/account/security), le déconnecte à tout moment.

Ce que peut faire un assistant

Connecté à votre compte, un assistant travaille sur vos projets à votre demande. Il appelle les outils ci-dessous et vous dit ce qu'il a fait ; vous ne tapez jamais vous-même le nom d'un outil. Il ne peut ni modifier votre compte, vos utilisateurs ou votre facturation, ni supprimer de projets.

OutilSignification / effet
create_pv_projectCrée un projet dans votre compte à partir d'un lieu (coordonnées ou adresse) et de ses champs PV (puissance, inclinaison, orientation, fixe ou suiveur), et pose de vrais modules sur une zone du site. Il accepte aussi votre consommation annuelle, votre tarif ou prix du kWh, et le coût de l'installation.
set_project_arraysRemplace les champs PV d'un projet existant (puissance, inclinaison, orientation, suiveur, module), posés sur de nouvelles zones du site, dans une nouvelle version que vous pouvez annuler dans l'application web.
set_project_economicsRenseigne la consommation annuelle, le tarif ou les prix, les heures pleines, le coût de l'installation et la prime, la maintenance, un emprunt et la base de productible (P50 ou P90) d'un projet existant, dans une nouvelle version que vous pouvez annuler dans l'application web. Il refuse un projet de pompage solaire ou de réseau CC, qui n'a pas d'économie réseau. Il refuse aussi le taux, la durée ou le type d'un prêt, sauf si le projet a déjà un prêt (Financement par emprunt coché avec une Part d’emprunt supérieure à 0) ou si la même requête donne une part d'emprunt supérieure à 0, qui coche Financement par emprunt. Une part de 0 le décoche ; envoyée avec toute autre valeur de prêt, elle est refusée.
duplicate_projectCopie un projet, pour que l'assistant essaie une variante sans toucher à l'original.
run_simulationTélécharge la météo PVGIS et Open-Meteo du site, puis met en file la simulation horaire sur le moteur cloud de pvSpline.
get_simulationL'état d'un calcul et, une fois celui-ci réussi, ses résultats : énergie annuelle P50 et P90, productible spécifique, indice de performance, profil mensuel et principales pertes, plus l'autoconsommation, les économies, le temps de retour, la VAN et le TRI quand le projet a une consommation et des prix. Ses liens ouvrent le projet et ses résultats complets dans l'application web, où vous téléchargez le rapport PDF.
list_simulationsListe vos simulations, des plus récentes aux plus anciennes, pour que l'assistant reprenne les résultats d'un calcul déjà fait.
list_projectsListe les projets enregistrés dans votre compte, chacun avec un lien qui l'ouvre dans l'application web, pour que l'assistant calcule aussi ceux que vous y avez dessinés. Les projets qui utilisent un compteur Enedis restent hors de sa portée.
get_projectRelit un projet, avec son emplacement approximatif, ses champs et son module, son volet économique et ses dernières simulations.
search_catalogueCherche dans la bibliothèque de composants les modules PV, onduleurs, batteries et tarifs.
get_usageIndique votre formule et le reste du quota mensuel de simulation.

Ce qu'il vous faut

Un compte pvSpline avec une formule active.

Celui avec lequel vous vous connectez à l'application web. L'assistant travaille dans ce compte, avec ses projets et ses quotas mensuels : le temps moteur de ses simulations et le temps d'API cloud de ses requêtes. Pas encore de compte ? Se connecter explique comment en créer un, et Les formules et ce qu'elles débloquent présente les formules.

Les assistants IA activés pour votre société.

Une nouvelle société démarre avec les assistants désactivés ; un compte Direction les active (Activer les assistants pour votre société).

Un ordinateur en France.

pvSpline n'accepte que les connexions depuis la France : l'assistant doit donc tourner sur votre ordinateur, en France.

Attention

Un client qui tourne sur votre ordinateur (Claude Code, Cursor, Windsurf, VS Code, ou un client qui ne lance que des commandes locales, via mcp-remote avec un jeton d'assistant) appelle pvSpline depuis votre propre connexion internet. Les connecteurs qui appellent depuis les serveurs de leur fournisseur à l'étranger, comme ceux de Claude (claude.ai et les applications Claude) et de ChatGPT, sont refusés, tout comme une identification depuis un navigateur hors de France.

Activer les assistants pour votre société

Les assistants IA doivent d'abord être activés pour votre société. Un compte Direction les active, pour tous les membres à la fois, en cochant Assistants IA dans la carte Jetons de service, sous la case serveur et CI ; la carte indique alors ce qu'un assistant transmet à son fournisseur et quelle offre choisir chez ce dernier. Une nouvelle société démarre avec les assistants désactivés. Tant qu'ils le restent, la page de consentement refuse de connecter un assistant, et un assistant déjà connecté, ou qui utilise un jeton d'assistant, est refusé jusqu'à leur réactivation.

Les autres membres voient dans quel sens l'interrupteur est placé. Le décocher demande d'abord confirmation : tout assistant connecté au compte d'un collègue cesse de fonctionner. Les connexions sont conservées et refonctionnent dès que les assistants sont réactivés.

Brancher un assistant

Tous les clients prennent la même adresse de serveur :

https://api.pvspline.fr/mcp

L'entrée de votre client (L'entrée de votre client) donne cette adresse et rien d'autre : la première fois que l'assistant appelle pvSpline, il vous demande de vous connecter.

Connecter un assistant par identification

  1. Ajoutez l'adresse du serveur à l'assistant, avec l'entrée de votre client : Claude Code (puis /mcp pour vous connecter), Cursor, Windsurf et les autres clients à fichier mcpServers, ou VS Code.

  2. L'assistant ouvre une page pvSpline, /oauth/consent. Connectez-vous si on vous le demande ; vous revenez ensuite sur la page.

  3. Lisez la demande : Connecter {client} à pvSpline ?, le compte demandé, l'endroit où votre navigateur se rend une fois l'autorisation donnée, et ce que l'assistant pourra faire (créer des projets, lancer des simulations décomptées de votre quota mensuel, lire vos projets et leurs résultats, modifier la consommation, les prix et les coûts de projets existants, et chercher dans la bibliothèque de composants). Il ne pourra ni modifier votre compte, vos utilisateurs ou votre facturation, ni supprimer de projets.

  4. N'appuyez sur Autoriser que si vous venez de demander à cet assistant de se connecter ; Annuler refuse.

Chaque connexion apparaît ensuite dans Jetons de service, au nom de l'assistant suivi de (OAuth) ; Révoquer la déconnecte. L'accès dure une heure et se renouvelle de lui-même tant que l'assistant s'en sert, et une connexion inutilisée pendant 90 jours vous redemande de vous connecter. Une connexion compte dans votre limite de jetons actifs ; à la limite, la page répond Votre compte a trop de jetons actifs. Révoquez-en un dans Compte → Jetons de service, puis réessayez.

L'entrée de votre client

Les commandes et les fichiers de configuration sont les mêmes dans toutes les langues.

Claude Code.

Une commande dans un terminal, puis /mcp dans Claude Code pour vous connecter :

claude mcp add --transport http pvspline https://api.pvspline.fr/mcp

Cursor, Windsurf et les autres clients à fichier mcpServers.

Ajoutez l'entrée pvspline au fichier :

{
  "mcpServers": {
    "pvspline": {
      "url": "https://api.pvspline.fr/mcp"
    }
  }
}

VS Code.

Dans le fichier .vscode/mcp.json de l'espace de travail :

{
  "servers": {
    "pvspline": {
      "type": "http",
      "url": "https://api.pvspline.fr/mcp"
    }
  }
}

La page qu'ouvre l'assistant vous pose la question avant toute connexion : quel assistant demande l'accès, pour quel compte, où va ensuite votre navigateur, et ce que l'assistant pourra et ne pourra pas faire. Avant Autoriser, elle indique aussi ce que reçoit le fournisseur de l'assistant et ce que pvSpline ne lui transmet jamais (Les données de vos clients).

Champ / contrôleType et unitéPar défautCe qu'il fait et comment le régler
Autoriserbouton—Connecte l'assistant et envoie votre navigateur là où la page l'a indiqué. La connexion apparaît dans Jetons de service, au nom de l'assistant suivi de « (OAuth) ».
Annulerbouton—Refuse la connexion. Lorsque l'adresse de retour de l'assistant est un site web, la page indique seulement que vous avez refusé et ne vous envoie nulle part.
Aller à mon comptelien—Affiché lorsque la demande de connexion est incomplète, invalide ou expirée. Relancez la connexion depuis l'assistant.

Un assistant qui ne sait pas s'identifier

Pour un assistant qui ne sait pas s'identifier, créez un jeton d'assistant dans Jetons de service : saisissez un nom, choisissez Assistant IA (MCP) dans la liste des portées et appuyez sur Créer un jeton. Un jeton d’assistant n’ouvre que le point d’accès des assistants IA, pas le reste de votre compte. Le jeton s'affiche une seule fois, comme tout jeton de service (Votre compte, votre équipe & vos calculs cloud). Guide de configuration, à la fin de l'indication que ce choix affiche sous le formulaire, ouvre ce chapitre dans un nouvel onglet : le jeton reste à l'écran pendant votre lecture.

Envoyez le jeton dans l'en-tête Authorization: Bearer : collez-le à la place de YOUR_MCP_TOKEN dans l'entrée de votre client.

Un client qui accepte des en-têtes HTTP.

La même entrée, avec le jeton :

{
  "mcpServers": {
    "pvspline": {
      "url": "https://api.pvspline.fr/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_MCP_TOKEN"
      }
    }
  }
}

Un client qui ne lance que des commandes locales.

La même entrée, via mcp-remote :

{
  "mcpServers": {
    "pvspline": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://api.pvspline.fr/mcp",
        "--header",
        "Authorization:${PVSPLINE_AUTH}"
      ],
      "env": {
        "PVSPLINE_AUTH": "Bearer YOUR_MCP_TOKEN"
      }
    }
  }
}

Votre première demande

Une fois l'assistant connecté, demandez-lui par exemple :

« Estime la production annuelle d'une toiture de 6 kWc orientée sud, inclinée à 30°, à Lyon, plus 3 kWc orientés est. Montre le profil mensuel et les principales pertes. »

Et ensuite

  1. L'assistant crée le projet dans votre compte. Il apparaît dans la liste de vos projets de l'application web, comme un projet que vous auriez dessiné vous-même.

  2. Il télécharge la météo du site et lance la simulation sur le moteur cloud de pvSpline. Le temps moteur de ce calcul est décompté de votre quota mensuel de simulation.

  3. Une fois les résultats prêts, il vous les explique : production annuelle (P50 et P90), productible spécifique, indice de performance, profil mois par mois et principales pertes.

  4. Il vous donne les liens pour ouvrir le projet dans l'application web et voir les résultats complets, où vous pouvez télécharger le rapport PDF.

  5. Continuez dans la même conversation : « essaie avec 9 kWc », « liste mes projets », « combien de temps de simulation me reste-t-il ? »

Certains assistants vous demandent d'approuver une action la première fois qu'ils l'utilisent.

Bon à savoir

  • Quotas. Chaque calcul lancé par un assistant nécessite une formule active et décompte le temps moteur qu'il utilise de votre quota mensuel de simulation, exactement comme un calcul lancé dans l'application web ; l'assistant peut vérifier ce qu'il reste. Chaque requête qu'il fait est décomptée de votre quota d'API cloud (le vôtre avec un abonnement, celui de la société avec l'offre gratuite), en secondes de temps serveur. Au-delà de ce quota, ses appels sont refusés avec le code API_ALLOWANCE_EXCEEDED jusqu'au 1er du mois (Quotas mensuels par formule).

  • Le module. Les projets sont équipés d'un module courant de 425 W, sauf si vous en nommez un autre. Ouvrez le projet dans l'application web pour dessiner la vraie toiture, choisir les composants ou utiliser les données de votre compteur.

  • Économies et temps de retour. Donnez à l'assistant votre consommation annuelle, votre tarif ou prix du kWh, et le coût de l'installation. Il répartit la consommation selon un profil type (logement, bureau, commerce…) et prend 22 h–6 h comme heures creuses pour un tarif heures pleines/heures creuses.

  • Les chiffres. Les résultats sont des estimations P50/P90 du système modélisé, avec le même moteur et la même météo que l'application web. Économies et temps de retour utilisent le productible prudent P90, sauf réglage contraire du projet.

  • Le rapport. Son rapport, ses graphiques et son classeur sont rédigés en anglais, quelle que soit la langue de l'interface. Son rapport PDF ne porte aucun QR code de vérification (Vérification du rapport), contrairement à ceux des calculs que vous lancez dans l'application web.

  • Compteurs Enedis. Un projet dont la consommation provient d'un compteur Enedis ne se calcule que depuis l'application web, qui sait télécharger les données du compteur : l'assistant ne peut ni le lire, ni le modifier, ni le copier, ni le calculer.

  • Votre projet ouvert. Une modification faite par l'assistant est une nouvelle version du projet. Si ce projet est ouvert dans l'application, l'enregistrement de votre version est refusé plutôt que d'écraser celle de l'assistant (Travailler avec les projets).

Les données de vos clients

Ce que l'assistant lit est transmis à son fournisseur (Anthropic, OpenAI ou un autre), qui le traite selon ses propres conditions, éventuellement hors de l'Union européenne : le nom des projets, leur emplacement approximatif (à un kilomètre près), leurs champs PV, consommations estimées, prix, coûts et résultats. pvSpline ne lui transmet jamais le nom ni l'adresse de vos clients, ni les données de leurs compteurs Enedis, ni vos rapports.

Astuce

Préférez une offre professionnelle ou d'API auprès de ce fournisseur : il traite alors ce qu'il reçoit pour votre compte et ne s'en sert pas pour l'entraînement. Avec une offre personnelle, désactivez l'entraînement dans ses réglages.

C'est votre société qui décide : une nouvelle société démarre avec les assistants désactivés, et un compte Direction les active ou les désactive pour toute la société (Activer les assistants pour votre société).

Pour les développeurs

Point d'accès

https://api.pvspline.fr/mcp, en Streamable HTTP. Il parle la version 2026-07-28 du protocole et les versions antérieures, négociées à l'initialisation.

Identification

OAuth 2.1 avec enregistrement dynamique des clients et PKCE. Un jeton d'accès dure une heure et le client le renouvelle ; une connexion inutilisée pendant 90 jours doit se réidentifier.

Jeton de secours

Un jeton de portée Assistant IA (MCP), envoyé en Authorization: Bearer <token>, ouvre ce point d'accès et rien d'autre (Un assistant qui ne sait pas s'identifier).

Découverte

Les métadonnées de la ressource protégée, https://api.pvspline.fr/.well-known/oauth-protected-resource/mcp ; la carte serveur, https://app.pvspline.fr/.well-known/mcp/server-card.json ; https://app.pvspline.fr/llms.txt ; et le nom du serveur dans le registre MCP, fr.pvspline/pvspline.

Le point d'accès et ses métadonnées ne répondent qu'aux requêtes venant de France.