accueil / serveurs / Recherche & Web / io.github.LayUp-Sport/sports-booking
io.github.LayUp-Sport/sports-booking
serveur MCP (Model Context Protocol) · layup-sports-booking 0.1.0
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.LayUp-Sport/sports-booking est sûr ?
Au dernier audit MCP Hub, le serveur MCP « io.github.LayUp-Sport/sports-booking » 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
- create_alert≈ 672 tokens
Set up an email alert for the user: LayUp watches for NEW matching slots (e.g. a cancellation freeing up a peak court) and emails them when one appears. Use when the user can't find a slot now and wants to be notified, or asks to 'monitor'/'watch'/'let me know when'. Requires their email. A confirmation email is sent first — the user must click confirm before any alerts fire (so always tell them to check their inbox). LayUp does the watching; the notification arrives by email, not in this chat.
Paramètres, retour & exemple (9)
Paramètresarea· string · optionnel
Where to watch, resolved geographically: a borough ('Hackney'), a neighbourhood ('Maida Vale'), a region ('North London'), or a postcode ('W9 2RF', 'SE1'). A postcode is the most precise option when the user gives one. NOT a venue name — to watch a specific venue use venue_names. Omit for all London.email· string · requis
The user's REAL email address, as given by them (required — alerts are emailed here). Never invent, guess or substitute a placeholder like user@example.com; if you don't have it, ask the user first.sport· string · optionnel · Football | Tennis | Squash | Padel | Swimming
One of Football, Tennis, Squash, Padel, Swimming. Omit for any.time_to· string · optionnel
Latest London time-of-day, 'HH:MM'.max_price· number · optionnel
Only alert on slots at or under this GBP price.time_from· string · optionnel
Earliest London time-of-day, 'HH:MM' (e.g. '18:00').venue_names· array · optionnel
Pin the alert to specific venues BY NAME, exactly as shown in search results (e.g. ["Hay's Galleria", "Padel Box"]). Use this whenever the user names venues — the server resolves names to the right venue(s). Prefer this over venue_slugs.venue_slugs· array · optionnel
Pin the alert to specific venues by their exact venue_slug (only if you already have slug values from search_slots). For most cases use venue_names instead. Omit for any venue.days_of_week· array · optionnel
Only alert on these days (e.g. ['Sat','Sun'] for weekends). The alert is standing — it keeps watching these days every week until the user unsubscribes. Omit for any day.
Exemple d'appel{"name": "create_alert", "arguments": {"email": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_venue≈ 144 tokens
List upcoming bookable slots at a single venue, identified by its venue_slug (as returned by search_slots). Use to drill into one venue after a search.
Paramètres, retour & exemple (2)
Paramètreslimit· integer · optionnel
Max slots to return (1-30, default 15).venue_slug· string · requis
The venue_slug from a search_slots result.
Exemple d'appel{"name": "get_venue", "arguments": {"venue_slug": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - list_sports≈ 88 tokens
List the sports LayUp covers with a count of slots available in the next 7 days. Useful as a quick overview before a more specific search.
Paramètres, retour & exemple (0)
Exemple d'appel{"name": "list_sports", "arguments": {}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - refine_search≈ 468 tokens
Find out WHERE and WHEN there is availability, before asking the user a clarifying question. Takes the same filters as search_slots and returns counts by area, day, time band and price — not slots. Use it when the request is under-specified ('find me a tennis court', 'somewhere for a group') so the question you ask back is grounded in real supply: ask 'Wandsworth (8 venues) or Richmond (7)?' rather than an open 'which area?'. Also use it when a search returned nothing, to say which nearby area or time DOES have slots instead of reporting a dead end.
Paramètres, retour & exemple (9)
Paramètresarea· string · optionnel
Optional. Same geographic resolution as search_slots — borough, neighbourhood, region, postcode or venue name. Omit to see every area.sport· string · optionnel · Football | Tennis | Squash | Padel | Swimming
One of Football, Tennis, Squash, Padel, Swimming.date_to· string · optionnel
ISO date or datetime — latest start. Defaults to 7 days out.time_to· string · optionnel
London-local latest start time of day, 'HH:MM'.date_from· string · optionnel
ISO date or datetime — earliest start. Defaults to now.max_price· number · optionnel
Maximum price in GBP.time_from· string · optionnel
London-local earliest start time of day, 'HH:MM'.min_courts· integer · optionnel
Only count venue-hours with at least this many free at the same time. Same meaning as in search_slots.booking_type· string · optionnel · spot | court | pitch
'spot', 'court' or 'pitch'.
Exemple d'appel{"name": "refine_search", "arguments": {"area": "texte", "sport": "Football", "date_to": "texte", "time_to": "texte", "date_from": "texte", "max_price": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - search_slots≈ 636 tokens
Search bookable sports slots in London across every provider LayUp aggregates. Use when a user wants to find a court, pitch, lane, class or pickup game for football, tennis, squash, padel or swimming. Filter by sport, area/borough, date range, time of day and max price. Returns upcoming slots with venue, London-local time, price, provider and a booking link. Times default to the next 7 days.
Paramètres, retour & exemple (10)
Paramètresarea· string · optionnel
Where to look. Resolved geographically, so any of these work: a borough ('Hackney'), a neighbourhood ('Shoreditch', 'Maida Vale'), a region ('North London', 'Central London'), a postcode or outward code ('W9 2RF', 'SE1'), or a venue name ('Clissold'). Returns venues near the resolved point, not just ones with the word in their name.limit· integer · optionnel
Max results to return (1-30, default 15).sport· string · optionnel · Football | Tennis | Squash | Padel | Swimming
One of Football, Tennis, Squash, Padel, Swimming.date_to· string · optionnel
ISO date or datetime — latest start. Defaults to 7 days out.time_to· string · optionnel
London-local latest start time of day, 'HH:MM'.date_from· string · optionnel
ISO date or datetime — earliest start. Defaults to now.max_price· number · optionnel
Maximum price in GBP. Published prices above this are removed; unpublished-price slots ('Check App', common for padel/tennis) are kept and flagged.time_from· string · optionnel
London-local earliest start time of day, 'HH:MM' (e.g. '18:00'). Samples the soonest upcoming slots; combine with date_from to target a specific day.min_courts· integer · optionnel
Only return venues with at least this many courts/pitches free AT THE SAME TIME. Use for groups: padel and tennis are 4 per court, so 16 people need 4. Nobody else can answer this — venues cannot see each other and the booking platforms only see their own sites. Results are one slot per venue; that venue had at least this many free at that hour.booking_type· string · optionnel · spot | court | pitch
'spot' = book one place (pickup game / swim seat), 'court' = whole court, 'pitch' = whole pitch.
Exemple d'appel{"name": "search_slots", "arguments": {"area": "texte", "limit": 1, "sport": "Football", "date_to": "texte", "time_to": "texte", "date_from": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]}
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é ».