eglise.shop — Christian bookstore (FR/EN)
Christian bookstore (French/English): search books, prices in 12 currencies, cart, checkout link.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (4)
- HIGH
- MEDIUMen submit_book
- LOWen create_cart
- LOWen get_cart
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"librairie": {
"url": "https://eglise-shop-mcp.padbor.workers.dev/mcp"
}
}
}Puntos de conexión remotos
https://eglise-shop-mcp.padbor.workers.dev/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (11)
🟢search_books(site, query, category, min_price, max_price, ...)
Recherche dans le catalogue d'eglise.shop par mots-clés (titre, résumé, auteur), catégorie et fourchette de prix. Renvoie titre, auteurs, ISBN si connu, catégories, prix (XOF + devise demandée), disponibilité et lien.
Esquema de entrada
{
"type": "object",
"properties": {
"site": {
"default": "fr",
"description": "Boutique : \"fr\" = eglise.shop (≈5 600 livres en français, défaut), \"en\" = en.eglise.shop (≈2 800 livres en anglais).",
"type": "string",
"enum": [
"fr",
"en"
]
},
"query": {
"description": "Mots-clés, ex. « prière », « mariage chrétien », un nom d'auteur.",
"type": "string",
"maxLength": 120
},
"category": {
"description": "Catégorie : slug, identifiant ou nom (ex. « priere », 183, « Étude biblique »).",
"type": "string",
"maxLength": 80
},
"min_price": {
"description": "Prix minimum, exprimé dans la devise demandée (XOF par défaut).",
"type": "number",
"minimum": 0
},
"max_price": {
"description": "Prix maximum, exprimé dans la devise demandée (XOF par défaut).",
"type": "number",
"exclusiveMinimum": 0
},
"currency": {
"description": "Devise d'affichage (code ISO). FR : XOF, EUR, CAD, USD, CHF, TRY, XAF, GBP, AUD, ZAR, MAD. EN : idem avec NGN à la place de MAD. Le prix en XOF (devise de base) est toujours renvoyé en plus. Le lien transmet la devise au site (?wmc-currency=).",
"type": "string",
"enum": [
"XOF",
"EUR",
"CAD",
"USD",
"CHF",
"TRY",
"XAF",
"GBP",
"AUD",
"ZAR",
"MAD",
"NGN"
]
},
"orderby": {
"description": "Tri (par défaut : plus récents).",
"type": "string",
"enum": [
"date",
"price",
"popularity",
"rating",
"title"
]
},
"order": {
"type": "string",
"enum": [
"asc",
"desc"
]
},
"page": {
"default": 1,
"type": "integer",
"minimum": 1,
"maximum": 100
},
"per_page": {
"default": 10,
"type": "integer",
"minimum": 1,
"maximum": 20
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_book(site, id, slug, url, currency)
Fiche complète d'un livre d'eglise.shop : résumé, description, auteurs, ISBN (si renseigné), éditeur (si indiqué), prix (XOF + devise demandée), lien. Donner id (renvoyé par search_books), ou slug, ou url de la page produit.
Esquema de entrada
{
"type": "object",
"properties": {
"site": {
"default": "fr",
"description": "Boutique : \"fr\" = eglise.shop (≈5 600 livres en français, défaut), \"en\" = en.eglise.shop (≈2 800 livres en anglais).",
"type": "string",
"enum": [
"fr",
"en"
]
},
"id": {
"description": "Identifiant produit (champ id de search_books).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"slug": {
"description": "Slug de la page produit.",
"type": "string",
"maxLength": 200
},
"url": {
"description": "URL https://eglise.shop/produit/…/ ou https://en.eglise.shop/produit/…/ (le site est alors déduit de l'URL).",
"type": "string",
"maxLength": 400
},
"currency": {
"description": "Devise d'affichage (code ISO). FR : XOF, EUR, CAD, USD, CHF, TRY, XAF, GBP, AUD, ZAR, MAD. EN : idem avec NGN à la place de MAD. Le prix en XOF (devise de base) est toujours renvoyé en plus. Le lien transmet la devise au site (?wmc-currency=).",
"type": "string",
"enum": [
"XOF",
"EUR",
"CAD",
"USD",
"CHF",
"TRY",
"XAF",
"GBP",
"AUD",
"ZAR",
"MAD",
"NGN"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢list_categories(site, parent, include_empty, books_only)
Liste des catégories (rayons) d'eglise.shop avec leur nombre d'articles, leur slug (utilisable dans search_books) et leur catégorie parente.
Esquema de entrada
{
"type": "object",
"properties": {
"site": {
"default": "fr",
"description": "Boutique : \"fr\" = eglise.shop (≈5 600 livres en français, défaut), \"en\" = en.eglise.shop (≈2 800 livres en anglais).",
"type": "string",
"enum": [
"fr",
"en"
]
},
"parent": {
"description": "Limiter aux sous-catégories de ce parent (slug, id ou nom).",
"type": "string",
"maxLength": 80
},
"include_empty": {
"default": false,
"description": "Inclure les catégories sans article.",
"type": "boolean"
},
"books_only": {
"default": true,
"description": "Exclure les rayons hors livres (FR : « Boutique hors livres » ; EN : Gifts/dons, Posters, DVD).",
"type": "boolean"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟡create_cart(site)
Crée un panier anonyme sur eglise.shop (site fr) ou en.eglise.shop (site en). Renvoie cart_id, à réutiliser dans les autres outils du panier. Limite : 10 paniers par heure. Plafonds : 20 livres différents et 10 exemplaires par livre.
Esquema de entrada
{
"type": "object",
"properties": {
"site": {
"default": "fr",
"description": "Boutique : \"fr\" = eglise.shop (≈5 600 livres en français, défaut), \"en\" = en.eglise.shop (≈2 800 livres en anglais).",
"type": "string",
"enum": [
"fr",
"en"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟡add_to_cart(cart_id, items, currency)
Ajoute un ou plusieurs livres (id de search_books ou de get_book) au panier. Plafonds : 20 livres différents et 10 exemplaires par livre.
Esquema de entrada
{
"type": "object",
"properties": {
"cart_id": {
"type": "string",
"minLength": 20,
"maxLength": 600,
"description": "Identifiant du panier renvoyé par create_cart (commence par fr. ou en.)."
},
"items": {
"minItems": 1,
"maxItems": 10,
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"quantity": {
"default": 1,
"type": "integer",
"minimum": 1,
"maximum": 10
}
},
"required": [
"id"
]
}
},
"currency": {
"description": "Devise d'affichage (code ISO). FR : XOF, EUR, CAD, USD, CHF, TRY, XAF, GBP, AUD, ZAR, MAD. EN : idem avec NGN à la place de MAD. Le prix en XOF (devise de base) est toujours renvoyé en plus. Le lien transmet la devise au site (?wmc-currency=).",
"type": "string",
"enum": [
"XOF",
"EUR",
"CAD",
"USD",
"CHF",
"TRY",
"XAF",
"GBP",
"AUD",
"ZAR",
"MAD",
"NGN"
]
}
},
"required": [
"cart_id",
"items"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_cart(cart_id, currency)
Contenu du panier, sous-total et total, dans la devise demandée, avec le total en XOF toujours fourni. Les frais de livraison sont calculés au paiement.
Esquema de entrada
{
"type": "object",
"properties": {
"cart_id": {
"type": "string",
"minLength": 20,
"maxLength": 600,
"description": "Identifiant du panier renvoyé par create_cart (commence par fr. ou en.)."
},
"currency": {
"description": "Devise d'affichage (code ISO). FR : XOF, EUR, CAD, USD, CHF, TRY, XAF, GBP, AUD, ZAR, MAD. EN : idem avec NGN à la place de MAD. Le prix en XOF (devise de base) est toujours renvoyé en plus. Le lien transmet la devise au site (?wmc-currency=).",
"type": "string",
"enum": [
"XOF",
"EUR",
"CAD",
"USD",
"CHF",
"TRY",
"XAF",
"GBP",
"AUD",
"ZAR",
"MAD",
"NGN"
]
}
},
"required": [
"cart_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴remove_from_cart(cart_id, key, all)
Retire un livre du panier (par sa key, renvoyée par get_cart), ou vide tout le panier avec all=true.
Esquema de entrada
{
"type": "object",
"properties": {
"cart_id": {
"type": "string",
"minLength": 20,
"maxLength": 600,
"description": "Identifiant du panier renvoyé par create_cart (commence par fr. ou en.)."
},
"key": {
"type": "string",
"pattern": "^[a-f0-9]{32}$"
},
"all": {
"default": false,
"type": "boolean"
}
},
"required": [
"cart_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢start_checkout(cart_id, currency)
Renvoie un lien de paiement, valable 30 minutes, à donner au client. Il ouvre la page de paiement du site, avec ce panier et la devise choisie. C'est le client qui paie lui-même (mobile money, carte…). Le connecteur ne crée aucune commande et ne voit aucune donnée de paiement. Limite : 5 liens par heure.
Esquema de entrada
{
"type": "object",
"properties": {
"cart_id": {
"type": "string",
"minLength": 20,
"maxLength": 600,
"description": "Identifiant du panier renvoyé par create_cart (commence par fr. ou en.)."
},
"currency": {
"description": "Devise d'affichage (code ISO). FR : XOF, EUR, CAD, USD, CHF, TRY, XAF, GBP, AUD, ZAR, MAD. EN : idem avec NGN à la place de MAD. Le prix en XOF (devise de base) est toujours renvoyé en plus. Le lien transmet la devise au site (?wmc-currency=).",
"type": "string",
"enum": [
"XOF",
"EUR",
"CAD",
"USD",
"CHF",
"TRY",
"XAF",
"GBP",
"AUD",
"ZAR",
"MAD",
"NGN"
]
}
},
"required": [
"cart_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢order_status(site, order_id, order_key, billing_email)
Statut d'une commande. Il faut le numéro de commande, la clé de commande (wc_order_…, présente dans l'e-mail ou l'URL de confirmation) et l'e-mail de facturation.
Esquema de entrada
{
"type": "object",
"properties": {
"site": {
"default": "fr",
"description": "Boutique : \"fr\" = eglise.shop (≈5 600 livres en français, défaut), \"en\" = en.eglise.shop (≈2 800 livres en anglais).",
"type": "string",
"enum": [
"fr",
"en"
]
},
"order_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"order_key": {
"type": "string",
"pattern": "^wc_order_[A-Za-z0-9]+$"
},
"billing_email": {
"type": "string",
"format": "email",
"pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
}
},
"required": [
"order_id",
"order_key",
"billing_email"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟡submit_book(site, title, subtitle, author_name, author_email, ...)
Submit a book on behalf of its author to eglise.shop (French store) or en.eglise.shop (English store). eglise.shop publishes Christian books from independent authors worldwide: 25% commission per sale, no subscription; paper, PDF and audio formats. NOTHING IS PUBLISHED AUTOMATICALLY: the author must confirm by e-mail (rights + 25% commission) within 48 h, then the eglise.shop team reviews the book and publishes it manually. Only submit with the author's explicit consent, using their real e-mail. Requirements: summary ≥ 200 characters, plain text only (no HTML), public https links to the manuscript (pdf/epub/docx/audio) and cover (jpg/png/webp), rights_confirmed=true. Limits: 3 submissions/day per author e-mail, 5/day per IP; duplicates within 30 days are refused. Unconfirmed submissions expire after 7 days. Authors page and terms: https://eglise.shop/comment-vendre-mes-livres-chretiens-dans-le-monde-entier/ — Track with submission_status. FR : proposez le livre d'un auteur chrétien sur eglise.shop (commission de 25 % par vente, sans abonnement ; papier, PDF, audio). Rien n'est publié automatiquement : l'auteur confirme par e-mail, puis l'équipe examine et publie à la main.
Esquema de entrada
{
"type": "object",
"properties": {
"site": {
"default": "fr",
"description": "Boutique : \"fr\" = eglise.shop (≈5 600 livres en français, défaut), \"en\" = en.eglise.shop (≈2 800 livres en anglais).",
"type": "string",
"enum": [
"fr",
"en"
]
},
"title": {
"type": "string",
"minLength": 2,
"maxLength": 200
},
"subtitle": {
"type": "string",
"minLength": 0,
"maxLength": 200
},
"author_name": {
"type": "string",
"minLength": 2,
"maxLength": 120
},
"author_email": {
"type": "string",
"maxLength": 254,
"format": "email",
"pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
},
"language": {
"type": "string",
"enum": [
"fr",
"en"
],
"description": "Language of the book."
},
"summary": {
"type": "string",
"minLength": 200,
"maxLength": 4000,
"description": "Plain-text summary, 200–4000 characters, at most 2 URLs (only the manuscript/cover links)."
},
"category": {
"type": "string",
"minLength": 2,
"maxLength": 100,
"description": "Suggested category, e.g. 'Prière', 'Vie chrétienne', 'Theology'."
},
"price": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 10000000
},
"currency": {
"type": "string",
"enum": [
"XOF",
"EUR",
"USD",
"CAD",
"CHF",
"GBP",
"XAF",
"NGN",
"AUD",
"ZAR",
"MAD",
"TRY"
]
},
"formats": {
"minItems": 1,
"maxItems": 3,
"type": "array",
"items": {
"type": "string",
"enum": [
"paper",
"pdf",
"audio"
]
}
},
"isbn": {
"type": "string",
"pattern": "^(97[89])?[\\d\\- ]{9,17}[\\dXx]$"
},
"manuscript_url": {
"type": "string",
"maxLength": 500
},
"cover_url": {
"type": "string",
"maxLength": 500
},
"agent_name": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"rights_confirmed": {
"type": "boolean",
"const": true,
"description": "Must be true: the author states they hold the rights."
},
"notes": {
"description": "Leave empty.",
"type": "string",
"maxLength": 500
}
},
"required": [
"title",
"author_name",
"author_email",
"language",
"summary",
"category",
"price",
"currency",
"formats",
"manuscript_url",
"cover_url",
"rights_confirmed"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢submission_status(submission_id, author_email)
Status of a book submitted with submit_book: pending_author_confirmation, confirmed, published, rejected (or expired after 7 days without confirmation). Requires the submission_id and the author's e-mail.
Esquema de entrada
{
"type": "object",
"properties": {
"submission_id": {
"type": "string",
"pattern": "^sub_[A-Za-z0-9_-]{8,20}$"
},
"author_email": {
"type": "string",
"maxLength": 254,
"format": "email",
"pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
}
},
"required": [
"submission_id",
"author_email"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Comunidad
Evidencia