Server definition
- Hash
- sha256:85a98777199adf4f414a30de3cc6ecf490500d7649f640922012aaf4fab5f668
- What it is
- What a remote MCP server returned when asked what it offers: 7 tools
The blob, as servednamed by its sha256
{
"instructions": "Booking with a Ukrainian-speaking vertebrologist in Chernivtsi, Ukraine. You can BOTH search AND BOOK on the user's behalf. Reading (get_availability / get_doctor_info) needs no authorization. To book/reschedule/cancel, call the matching tool; the client runs a ONE-TIME Telegram consent by the user (OAuth), after which you act on your own. Do NOT give the user a link to self-book — book it yourself via the book tool.",
"tools": [
{
"description": "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.",
"inputSchema": {
"properties": {
"date": {
"type": "string"
},
"time": {
"type": "string"
}
},
"required": [
"date",
"time"
],
"type": "object"
},
"name": "book",
"outputSchema": null
},
{
"description": "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.",
"inputSchema": {
"properties": {
"booking_id": {
"type": "string"
}
},
"required": [
"booking_id"
],
"type": "object"
},
"name": "cancel",
"outputSchema": null
},
{
"description": "Free appointment slots for the vertebrologist (Chernivtsi). Optional date (YYYY-MM-DD): without it — all nearest available days. Read-only (does not book).",
"inputSchema": {
"properties": {
"date": {
"description": "YYYY-MM-DD (optional)",
"type": "string"
}
},
"type": "object"
},
"name": "get_availability",
"outputSchema": null
},
{
"description": "About the vertebrologist: specialty, what he treats, address, slot length, rules (one appointment per day), and how to book.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "get_doctor_info",
"outputSchema": null
},
{
"description": "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.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "list_current_bookings",
"outputSchema": null
},
{
"description": "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.",
"inputSchema": {
"properties": {
"limit": {
"type": "integer"
},
"offset": {
"type": "integer"
}
},
"type": "object"
},
"name": "list_past_bookings",
"outputSchema": null
},
{
"description": "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).",
"inputSchema": {
"properties": {
"date": {
"type": "string"
},
"from": {
"type": "string"
},
"to": {
"type": "string"
}
},
"required": [
"date",
"from",
"to"
],
"type": "object"
},
"name": "reschedule",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:85a98777199adf4f414a30de3cc6ecf490500d7649f640922012aaf4fab5f668 | sha256sum