accueil / serveurs / Recherche & Web / io.github.jennipro-engineering/ghost-market-web
io.github.jennipro-engineering/ghost-market-web
serveur MCP (Model Context Protocol) · jenni-shopping 2026-08-25
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que io.github.jennipro-engineering/ghost-market-web est sûr ?
Au dernier audit MCP Hub, le serveur MCP « io.github.jennipro-engineering/ghost-market-web » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 5 outils
- find_stores≈ 529 tokens
Read-only shop directory by name. A listing proves no stock, price, delivery or checkout eligibility. Use search_catalog for product facts without store filters; it does not verify stock, price or delivery. Then call get_buying_options with the exact product_id, zip, quantity and fulfillment_mode. After the buyer chooses a returned offer with is_eligible_checkout true, use its store_id with start_checkout for direct checkout. An offer explicitly marked fulfillment concierge may also use start_checkout for a hosted request handoff even when that flag is false. Retain the exact buying context. A handoff does not reserve stock, create a durable quote or complete a purchase.
Paramètres, retour & exemple (4)
Paramètreszip· string · optionnel
5-digit US ZIP code: matching shops nearest it come first.name· string · requis
Shop name or part of it, e.g. "Cheeky Monkey".limit· integer · optionnel
Shops to return (default 10).market· string · optionnel
Market key, e.g. san-antonio-tx. Used when no zip is given.
Exemple d'appel{"name": "find_stores", "arguments": {"name": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"name": "texte", "stores": [], "partial": true, "location": "texte", "next_step": "texte"}} - get_buying_options≈ 1515 tokens
Read verified buying options for the exact product, destination, quantity and fulfillment mode. Empty offers mean no options verified for this request, not that the product does not exist. Choose an eligible store, then start_checkout with the same context; the buyer approves and pays in hosted checkout.
Paramètres, retour & exemple (4)
Paramètreszip· string · requisquantity· integer · requisproduct_id· string · requisfulfillment_mode· string · requis · local_delivery | ship_to_home
Exemple d'appel{"name": "get_buying_options", "arguments": {"zip": "texte", "quantity": 1, "product_id": "texte", "fulfillment_mode": "local_delivery"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"product": {}, "requested_context": {}}} - get_product≈ 920 tokens
Complete canonical product facts, read-only. Nullable titles, empty images/offers and unknown stock remain visible. Discovery never authorizes checkout; completion is unavailable. Store filters are rejected; postal context never filters facts. Use search_catalog for product facts without store filters; it does not verify stock, price or delivery. Then call get_buying_options with the exact product_id, zip, quantity and fulfillment_mode. After the buyer chooses a returned offer with is_eligible_checkout true, use its store_id with start_checkout for direct checkout. An offer explicitly marked fulfillment concierge may also use start_checkout for a hosted request handoff even when that flag is false. Retain the exact buying context. A handoff does not reserve stock, create a durable quote or complete a purchase.
Paramètres, retour & exemple (3)
Paramètreszip· string · optionnel
Optional echoed caller context only; never filters facts.product_id· string · requispostal_code· string · optionnel
Optional echoed caller context only; never filters facts.
Exemple d'appel{"name": "get_product", "arguments": {"product_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"mode": "texte", "items": [], "exhausted": true, "next_cursor": "texte", "offer_policy": {}, "contract_version": "texte", "catalog_authority": {}, "requested_context": {}, "snapshot_semantics": "texte", "source_observed_at": "texte"}} - search_catalog≈ 1111 tokens
Complete canonical product facts, read-only. Nullable titles, empty images/offers and unknown stock remain visible. Discovery never authorizes checkout; completion is unavailable. Store filters are rejected; postal context never filters facts. Use search_catalog for product facts without store filters; it does not verify stock, price or delivery. Then call get_buying_options with the exact product_id, zip, quantity and fulfillment_mode. After the buyer chooses a returned offer with is_eligible_checkout true, use its store_id with start_checkout for direct checkout. An offer explicitly marked fulfillment concierge may also use start_checkout for a hosted request handoff even when that flag is false. Retain the exact buying context. A handoff does not reserve stock, create a durable quote or complete a purchase.
Paramètres, retour & exemple (10)
Paramètreszip· string · optionnel
Optional echoed caller context only; never filters facts.gtin· string · optionnelbrand· string · optionnellimit· integer · optionnelquery· string · optionnel
Optional title, brand, UPC or GTIN keyword. Omit to enumerate approved root catalog facts.cursor· string · optionnel
Confidential opaque upstream continuation; forward unchanged with the same selectors and limit.store_id· string · optionnel
Unsupported for catalog facts; nonempty store filters are rejected.store_ids· array · optionnel
Empty normalizes to absent; store filtering is unsupported.product_id· string · optionnelpostal_code· string · optionnel
Optional echoed caller context only; never filters facts.
Exemple d'appel{"name": "search_catalog", "arguments": {"zip": "texte", "gtin": "texte", "brand": "texte", "limit": 1, "query": "texte", "cursor": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"mode": "texte", "items": [], "exhausted": true, "next_cursor": "texte", "offer_policy": {}, "contract_version": "texte", "catalog_authority": {}, "requested_context": {}, "snapshot_semantics": "texte", "source_observed_at": "texte"}} - start_checkout≈ 542 tokens
Call when the shopper has chosen to buy: the exact product_id (a variant's when it has sizes or colours), the store_id of an offer with is_eligible_checkout true or fulfillment concierge, a quantity and their ZIP. Re-checks the offer at that quantity and returns checkout_url: JENNi checkout with that item added to the shopper's basket, where they enter email, name, address and card and see delivery, tax and the total; nothing is charged until they place the order. For a concierge offer it returns a product page handoff, where the shopper sets quantity and the page checks request availability. This handoff does not create a durable quote, reserve stock or purchase anything. After get_buying_options retain its exact quantity, ZIP and fulfillment_mode.
Paramètres, retour & exemple (5)
Paramètreszip· string · requis
5-digit US ZIP code the order is delivered to, e.g. 78205.quantity· integer · requis
How many (default 1).store_id· string · requis
store_id of an offer with is_eligible_checkout true, or a concierge offer.product_id· string · requis
The exact item: a variant's product_id when it has variants.fulfillment_mode· string · requis · local_delivery | ship_to_home
Retain the mode chosen from get_buying_options.
Exemple d'appel{"name": "start_checkout", "arguments": {"zip": "texte", "quantity": 1, "store_id": "texte", "product_id": "texte", "fulfillment_mode": "local_delivery"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"item": "texte", "kind": "basket", "quantity": 1, "next_step": "texte", "store_name": "texte", "unit_price": "texte", "checkout_url": "texte"}}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».