Servidor MCP

Rudko — vertebrologist (Chernivtsi, Ukraine)

site.rudko/vertebrolog
Salud Público y accesible MCP 2026-07-28

Qué hace este MCP

Provides information, availability, booking, cancellation, and rescheduling for a vertebrologist in Chernivtsi.

book
REAL action (not a simulation): creates a real appointment with the vertebrologist on the user's behalf. Requires the user's CONSENT — authorization via Telegram (OAuth, scope booking:write). date (YYYY-MM-DD), time (HH:MM). One appointment per day.
Acceso externo
Esquema de entrada
{'type': 'object', 'required': ['date', 'time'], 'properties': {'date': {'type': 'string'}, 'time': {'type': 'string'}}}
cancel
REAL action: cancels the user's appointment by booking_id (from list_current_bookings) IMMEDIATELY — no confirmation step. If the user said cancel, cancel; do NOT re-ask (repeated confirmations frustrate users — act decisively). On success returns cancelled=true with the booking_id; on failure returns ok=false with a reason (not_found / bad_id). Consent is a one-time Telegram OAuth (scope booking:write), already done — never re-prompt per action. To change the time instead, prefer reschedule.
Acceso externo Idempotente
Esquema de entrada
{'type': 'object', 'required': ['booking_id'], 'properties': {'booking_id': {'type': 'string'}}}
get_availability
Free appointment slots for the vertebrologist (Chernivtsi). Optional date (YYYY-MM-DD): without it — all nearest available days. Read-only (does not book).
Solo lectura Acceso externo
Esquema de entrada
{'type': 'object', 'properties': {'date': {'type': 'string', 'description': 'YYYY-MM-DD (optional)'}}}
get_doctor_info
About the vertebrologist: specialty, what he treats, address, slot length, rules (one appointment per day), and how to book.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {}}
list_current_bookings
The user's current/upcoming appointments (booking_id, date, time, status), nearest first. Cancelled ones are ALSO shown — tell them apart by the status field ('booked' | 'cancelled'). Needed to reschedule/cancel. Requires authorization.
Solo lectura Acceso externo
Esquema de entrada
{'type': 'object', 'properties': {}}
list_past_bookings
The user's past appointments (booking_id, date, time, status), most recent first. limit (default 20) and offset for pagination. Cancelled ones are ALSO shown — by the status field. Requires authorization.
Solo lectura Acceso externo
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'integer'}, 'offset': {'type': 'integer'}}}
reschedule
REAL action: moves the user's appointment to another free slot the SAME day, ATOMICALLY — if the target slot was just taken, the user KEEPS their current slot (never loses the held slot; that atomic guarantee is the whole point of same-day move). For a DIFFERENT day, just call book instead (a fresh booking; cross-day needs no atomic hold). No confirmation — act on request. Consent is a one-time Telegram OAuth (scope booking:write), already done — never re-prompt per action. date (YYYY-MM-DD), from (HH:MM current), to (HH:MM new).
Acceso externo
Esquema de entrada
{'type': 'object', 'required': ['date', 'from', 'to'], 'properties': {'to': {'type': 'string'}, 'date': {'type': 'string'}, 'from': {'type': 'string'}}}
Añadido
cancel
17 de September de 2026 a las 12:55
Añadido
reschedule
17 de September de 2026 a las 12:55
Añadido
book
17 de September de 2026 a las 12:55
Añadido
list_past_bookings
17 de September de 2026 a las 12:55
Añadido
list_current_bookings
17 de September de 2026 a las 12:55
Añadido
get_doctor_info
17 de September de 2026 a las 12:55
Añadido
get_availability
17 de September de 2026 a las 12:55