Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Added "imap_get_mail" and "imap_list_inbox" (18 tools before, 20 now)
RÉSERVÉ AU STUDIO (token). Récupère le corps + liens (WeTransfer, Drive, SwissTransfer, etc.) + pièces jointes d'un mail INBOX par UID. UID est fourni par imap_list_inbox. Décode automatiquement quoted-printable/base64 + UTF-8.
RÉSERVÉ AU STUDIO (token). Liste les N derniers mails de INBOX (contact@mathieuberthet.com) via IMAP direct sur OVH. Retourne UID (à passer à imap_get_mail), date, expéditeur, objet, flags. Bypass Chrome/Roundcube — beaucoup plus rapide et fiable.
Changed the definition of "prepare_quote_email"
⟨99 unchanged words⟩ threading IMAP/Gmail.","type":"string"},"language":{"description":"Langue du wrapper email : 'fr' (défaut, template français avec « Bonjour » + « Bien cordialement, Mathieu Berthet »), 'en' (template anglais avec « Hi » + « Best regards, Jean-Claude assistant to Mathieu Berthet »), ou 'raw' (aucun wrapper — le body_message est envoyé tel quel, pour un contrôle total). Utiliser 'en' pour clients anglophones (SlapFunk, Scott Anderson, etc.) — ne JAMAIS envoyer un body EN avec language 'fr'.","enum":["fr","en","raw"],"type":"string"},"mode":{"description":"draft (défaut) : ⟨134 unchanged words⟩
Added "list_quote_requests", "qonto_delete", "qonto_get" and 1 more; changed the definition of "prepare_quote_email", "qonto_create_invoice" and "qonto_create_quote" (14 tools before, 18 now)
⟨53 unchanged words⟩ envoyé immédiatement puis archivé dans Envoyés. Le PDF(généréest récupéré parIndyle serveur directement dans Qonto (qonto_type + qonto_number)est—fourniouencodéfourni enbase64.base64 pour un document externe.
Added "qonto_append_invoice_line", "qonto_create_quote" and "qonto_finalize_invoice" (11 tools before, 14 now)
RÉSERVÉ AU STUDIO (token d'administration requis). Ajoute une ligne à un brouillon (proforma) Qonto existant pour un client, ou crée le brouillon si absent. Idéal pour clients récurrents (Antinote, DKO, etc.) : accumuler les prestations puis facturer d'un coup avec qonto_finalize_invoice.
RÉSERVÉ AU STUDIO (token d'administration requis). Crée un devis client dans Qonto (section « Devis », API v2 /client_quotes). Génère un PDF officiel D-2026-XXX. Retourne l'URL du devis, l'URL du PDF, et le PDF encodé en base64 (à joindre à un email). TVA en franchise 293B par défaut.
RÉSERVÉ AU STUDIO (token d'administration requis). Passe un brouillon (proforma) en statut 'unpaid' = facture officielle numérotée. Qonto génère le PDF + lien de paiement Mollie. Trouve le brouillon par invoice_id OU par client (id/email/name).
Added "qonto_create_invoice" and "qonto_update_client" (9 tools before, 11 now)
RÉSERVÉ AU STUDIO (token d'administration requis). Crée une facture client dans Qonto (via son API v2) et renvoie l'URL de paiement (Mollie CB/Apple Pay/PayPal). Cherche le client par email, le crée en type 'individual' si absent. TVA en franchise 293B par défaut. Idéal pour remplacer le workflow Indy + prepare_quote_email + Roundcube.
RÉSERVÉ AU STUDIO (token d'administration requis). Met à jour l'adresse de facturation d'un client Qonto existant. Identifier par client_id (préféré) OU client_email/client_name.
Certificate recorded, valid to 2026-11-25
Authorization not required
First tool surface recorded: 9 tools (server version 1.4.0)
Showing the latest 8 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
⟨119 unchanged words⟩ :"string"},"pdf_base64":{"description":"ContenuPDFduexterneduen base64 — seulement si le document,encodén'estenpasbase64.dans Qonto.","type":"string"},"pdf_filename":{ ⟨7 unchanged words⟩ / Facture-<n>.pdf.","type":"string"},"qonto_id":{"description":"Id Qonto du document (alternative à qonto_number).","type":"string"},"qonto_number":{"description":"Numéro Qonto du document (D-2026-003, F-2026-001). Défaut : document_number.","type":"string"},"qonto_type":{"description":"RECOMMANDÉ : le serveur va chercher le PDF dans Qonto lui-même (aucun base64 à transporter). quote = devis, invoice = facture.","enum":["quote","invoice"],"type":"string"},"references":{"description":"Chaîne References (Message-IDs ⟨27 unchanged words⟩ ,"required":["document_type","document_number","client_email","pdf_base64"],"type":"object"}
RÉSERVÉ AU STUDIO (tokend'administration requis). Crée une facture clientdansQonto (viabrouillon/proformasonparAPIdéfaut,v2ou 'unpaid' = officielle) et renvoiel'URL denuméro,paiementtotal,(MollielienCB/AppledePay/PayPal).paiementChercheMollie.leClientclientcherché parleemailcréepuisennomtype;'individual'créationsipossibleabsent.avecTVAcreate_client_if_missing=trueen+franchiseadresse.293BAnti-doublonpar:défaut.refuseIdéalunpourdocumentremplaceridentique leworkflowmêmeIndyjour+(sauf force=true) ; request_id rend l'appel rejouable sans doublon. Aucun PDF dans la réponse : utiliser prepare_quote_email+(qonto_type/qonto_number)Roundcube.pour l'envoyer, qonto_get pour l'URL PDF.
{"additionalProperties":false,"properties":{"address_unknown":{"description":"Le client n'a PAS communiqué son adresse : rue/code postal remplacés par « — » (ville + pays requis). JAMAIS inventer une adresse — la demander au client.","type":"boolean"},"auth_token":{"description":"Token d'administration (si ⟨8 unchanged words⟩ Authorization).","type":"string"},"city":{"description":"Ville — obligatoire pour créer un client.","type":"string"},"client_country":{"description":"Code pays ISO2 du client créé (défaut FR).","type":"string"},"client_email":{"description":"Email du client (recherche pardéfautemail d'abord).","type":"string"},"client_id":{"description":"IdExQonto:du'US',client'DE',(prioritaire'NL'.sur email/nom).","type":"string"},"client_emailclient_kind":{"description":"
RÉSERVÉ AU STUDIO (tokend'administration requis). Crée un devis clientdansQonto (sectionD-2026-XXX)«etDevisrenvoie»numéro,APItotal,v2lien/client_quotesclient, id. Client cherché par id, email puis nom ; création possible avec create_client_if_missing=true + adresse (jamais inventée : address_unknown=true pose des tirets).GénèreAnti-doublon : refuse unofficielidentiqueD-2026-XXX.leRetournemêmel'URLjourdu(saufdevis,force=true)l'URL;durequest_idPDF,rendetl'appellerejouable sans doublon. Aucun PDFencodédansenlabase64réponse : prepare_quote_email (àqonto_type=quote,joindreqonto_number=D-…)àl'envoie,unqonto_getemail).donneTVAl'URLenPDF.franchiseEn293Bcaspardedéfaut.doute sur l'état : qonto_list avant de relancer.
{"additionalProperties":false,"properties":{"address_unknown":{"description":"Le client n'a PAS communiqué son adresse : rue/code postal remplacés par « — » (ville + pays requis). JAMAIS inventer une adresse — la demander au client.","type":"boolean"},"auth_token":{"type":"string"},"city":{"description":"Ville — obligatoire pour créer un client.","type":"string"},"client_country":{"description":"Code pays ISO2 du client créé (défaut FR).","type":"string"},"client_email":{"description":"Email du client (recherche par email d'abord).","type":"string"},"client_id":{"description":"Id Qonto du client (prioritaire sur email/nom).","type":"string"},"client_kind":{"description":"Type du client créé. Défaut individual (le nom du label/artiste est conservé tel quel comme nom affiché) ; company UNIQUEMENT avec tin_number (SIREN/SIRET) — sinon Qonto refuse le devis.","enum":["company","individual"],"type":"string"},"client_name":{"description":"Nom du client (label, studio, artiste ou 'Prénom Nom'). Recherche exacte insensible à la casse.","type":"string"},"contact_name":{"description":"Prénom Nom de la personne de contact (ex. 'Rafa Santos') quand client_name est un label — sert de prénom/nom Qonto. Optionnel.","type":"string"},"create_client_if_missing":{"description":"Si le client n'existe pas : le créer (sinon erreur explicite). Exige alors l'adresse ci-dessous.","type":"boolean"},"force":{"description":"Créer même si un document identique (même client, même total, même jour) existe déjà. Défaut false.","type":"boolean"},"items":{"description":"Lignes (au moins 1).","items":{"properties":{"quantity":{"description":"Quantité (défaut 1).","type":["string","number"]},"title":{"description":"Intitulé de la prestation, ex. 'Mastering stéréo — Track X'.","type":"string"},"unit_price":{"description":"Prix unitaire HT en €.","
RÉSERVÉ AU STUDIO (token). Journal des demandes de devis reçues via le tool public send_quote_request : envoyées par mail ET filtrées comme robots/spam (avec la raison). Permet de vérifier qu'aucune vraie demande n'a été filtrée.
RÉSERVÉ AU STUDIO (token). Supprime un devis en attente (pending_approval) ou une facture brouillon (draft) — ex. doublon créé par erreur. Refuse tout document envoyé/approuvé/finalisé. Exige confirm=true (le premier appel sans confirm renvoie un récapitulatif).
RÉSERVÉ AU STUDIO (token). Détail d'un devis ou d'une facture Qonto par numéro (D-2026-003, F-2026-001) ou id : lignes, client + adresse, statut, lien client/paiement, URL PDF signée (temporaire). Jamais de base64.
RÉSERVÉ AU STUDIO (token). Liste compacte des devis, factures ou clients Qonto (numéro, statut, total, date, client, id). À appeler AVANT de relancer une création si un appel précédent a semblé échouer.