OpenQR

officiel

Générez des codes QR et gérez des codes QR dynamiques (modifiables) avec analyses de scan via un serveur MCP hébergé (17 outils) et une API REST gratuite.

Que pouvez-vous faire avec OpenQR MCP ?

  • Générer des codes QR statiques — Demandez un code QR à partir de n'importe quel texte ou URL via generate_qr, renvoyant un PNG ou un SVG.
  • Créer des codes dynamiques modifiables — Utilisez create_dynamic_qr pour créer un QR dont vous pourrez modifier la destination plus tard sans le réimprimer.
  • Mettre à jour et gérer les codes — Modifiez les destinations, les étiquettes, les tags ou les dossiers avec update_dynamic_qr, ou listez et supprimez via list_dynamic_qr et delete_dynamic_qr.
  • Création en masse pour les campagnes d'impression — Générez jusqu'à 200 codes dynamiques à la fois avec bulk_create_dynamic_qr.
  • Organiser avec des dossiers et des thèmes — Créez des dossiers via create_folder et enregistrez des préréglages de style réutilisables avec create_theme pour appliquer une image de marque cohérente.
  • Suivre les analyses de scans — Récupérez les statistiques de scans pour tout code dynamique à l'aide de get_scans, y compris les données au niveau du pays.

Documentation

OpenQR

Générateur de codes QR gratuit, open source et sans filigrane. Fonctionne entièrement dans votre navigateur — pas de suivi, pas d'inscription, pas de limites.

License: AGPL-3.0 Next.js No watermark

La plupart des générateurs de codes QR en ligne vous attirent avec « gratuit », puis ajoutent un filigrane, limitent la taille de téléchargement, cachent l'export vectoriel derrière un paywall, ou acheminent votre code via leurs serveurs pour qu'il cesse de fonctionner dès que vous arrêtez de payer. Un code QR n'est qu'un standard ouvert (ISO/IEC 18004) dont la génération ne coûte rien. OpenQR le préserve.

Ce dépôt est l'outil de génération de base — l'implémentation open source de référence. Il est volontairement petit et facile à forker.

Version hébergée : API gratuite, serveur MCP et codes modifiables

Tout dans ce dépôt est et reste gratuit, sans filigrane et sans expiration. La version hébergée sur openqr.uk ajoute une couche de compte optionnelle pour ceux qui souhaitent des codes modifiables et de l'automatisation :

  • Codes QR dynamiques / modifiables avec analyses de scans. Changez la destination après l'impression. 3 gratuits sur un compte gratuit (7 jours de scans par pays) ; illimités sur Pro à 9 £/mois ou 72 £/an, ce qui débloque également l'historique complet des analyses, le détail par ville et région, la répartition par appareil et référent avec export CSV, un sous-domaine de marque et des codes protégés par mot de passe.
  • API REST gratuite. Générez des codes et gérez des codes dynamiques par programmation. Spécification OpenAPI sur /openapi.json ; documentation interactive sur openqr.uk/api.
  • Serveur MCP hébergé sur https://openqr.uk/mcp (HTTP Streamable, 17 outils). Générez et gérez des codes QR directement depuis Claude, Cursor ou tout client MCP. Répertorié dans le registre MCP officiel. Les clients compatibles à distance se connectent directement à cette URL ; les clients uniquement stdio peuvent y accéder via un pont avec npx -y @open-qr/mcp et OPENQR_API_KEY définis (détails).

Le générateur statique de ce dépôt n'appelle jamais tout cela. Il reste 100 % côté client (voir Confidentialité), et rien de tout cela n'est requis pour utiliser ou auto-héberger le générateur.

Outils

Le serveur MCP hébergé sur https://openqr.uk/mcp expose ces 17 outils. Chaque outil nécessite une clé API gratuite — créez-en une sur openqr.uk/api et transmettez-la comme Authorization: Bearer oqr_... sur la connexion MCP.

OutilCe qu'il fait
generate_qrGénère un code QR statique à partir de n'importe quel texte ou URL. Renvoie une image PNG ou du balisage SVG.
create_dynamic_qrCrée un code QR modifiable dont vous pouvez changer la destination plus tard sans réimpression.
update_dynamic_qrModifie la destination, l'étiquette, le lien court personnalisé, les balises ou le dossier d'un code dynamique.
get_dynamic_qrObtient les détails complets d'un code : destination, lien court, étiquette, type, balises, dossier, statut, date de création.
get_scansStatistiques de scans pour un code dynamique.
list_dynamic_qrListe vos codes dynamiques avec identifiant, URL courte, destination, étiquette et statut.
delete_dynamic_qrSupprime définitivement un code dynamique. Son lien court cesse de fonctionner.
bulk_create_dynamic_qrCrée jusqu'à 200 codes dynamiques à la fois.
list_foldersListe vos dossiers.
create_folderCrée un dossier pour organiser les codes.
delete_folderSupprime un dossier. Ses codes sont désarchivés, non supprimés.
list_themesListe les thèmes de style enregistrés. Appliquez-en un en passant son identifiant ou son nom comme theme.
create_themeEnregistre un thème de style réutilisable (couleurs, styles de points et de coins).
delete_themeSupprime un thème enregistré. Les codes déjà stylés avec conservent leur apparence.
get_subdomainAffiche le sous-domaine de marque sur le compte, et s'il est suspendu.
set_subdomainRevendique ou modifie le sous-domaine de marque afin que les codes se résolvent également sur {name}.oqr.to. Pro uniquement.
clear_subdomainLibère le sous-domaine de marque. Les codes restent actifs sur le lien court simple.

Il expose également 5 ressources et 4 invites :

  • Ressources : préréglages de style QR intégrés sur openqr://preset/classic, /teal, /high-contrast, /dots et /classy. Lisez-en une et transmettez son style à create_theme.
  • Invites : create_tracked_qr, bulk_qr_for_print, brand_a_qr et qr_scan_report.

Fonctionnalités

  • Pas de filigrane, pas de limite de taille, pas d'inscription — chaque fonctionnalité est gratuite
  • Privé par conception — les codes sont générés entièrement dans votre navigateur ; le contenu ne touche jamais un serveur
  • Export partout — PNG / WebP jusqu'à 4096 px, plus SVG et PDF véritablement vectoriels
  • Style complet — couleurs, dégradés, styles de points et de coins, intégration de logo, cadres « Scannez-moi »
  • Saisie intelligente — collez un lien ou du texte et le type est détecté automatiquement
  • Contenus riches — URL, texte, e-mail, téléphone, SMS, WhatsApp, Wi-Fi et un sélecteur de localisation basé sur une carte
  • Copie en un clic, liens de conception partageables, clair/sombre, réactif, accessible au clavier

Démarrage rapide

pnpm install
pnpm dev        # http://localhost:3011

Construction et auto-hébergement

pnpm build
pnpm start      # serves on :3011 (standalone output)

C'est une application Next.js standard — hébergez-la n'importe où (un VPS, un Raspberry Pi, Cloudflare, derrière n'importe quel proxy inverse). Elle ne nécessite aucune variable d'environnement, aucune base de données, aucun secret pour fonctionner.

Intégration

Le composant <Generator/> est autonome et configurable :

import { Generator } from "@/components/generator/generator";

// Full page (default OpenQR logo header):
<Generator />

// Embedded widget, your own branding, no default header:
<Generator embedded header={<MyLogo />} />

// Inject your own post-download call-to-action:
<Generator renderSuccess={(variant) => <MySupportCluster variant={variant} />} />

L'outil embarque zéro analytique. Si vous souhaitez des événements d'interface anonymes (par exemple, quel format d'export a été utilisé — jamais le contenu du QR), injectez un gestionnaire :

import { setTrackHandler } from "@/lib/analytics";
setTrackHandler((action, name, category) => myAnalytics.track(category, action, name));

Confidentialité

La génération de QR se fait à 100 % dans votre navigateur. Les seuls appels sortants optionnels se trouvent dans l'outil Localisation : tuiles cartographiques de CARTO et recherche d'adresses via Nominatim d'OpenStreetMap. Rien d'autre ne quitte l'appareil.

Pile technique

Next.js 16 (App Router) · React 19 · TypeScript (strict) · Tailwind v4 · qr-code-styling · Leaflet · pnpm.

Contribution

Voir CONTRIBUTING.md. Gardez-le simple, accessible, côté client et gratuit — aucune fonctionnalité ne devrait jamais exiger de paiement pour supprimer un filigrane ou débloquer un format.

Licence

AGPL-3.0 © 2026 Sam Moreton.

Vous êtes libre d'utiliser, d'étudier, de modifier, d'auto-héberger et de redistribuer OpenQR sous AGPL-3.0. Si vous exécutez une version modifiée comme service réseau, l'AGPL exige que vous rendiez votre source disponible sous la même licence. Si cela ne convient pas à votre cas d'utilisation, une licence commerciale est disponible — voir NOTICE.