Server definition
- Hash
- sha256:c5d097dcd1125b43774ac9ff2c13fa7278f6999d93102c2e2a30f899f18a3342
- What it is
- What a remote MCP server returned when asked what it offers: 6 tools
The blob, as servednamed by its sha256
{
"instructions": "Direct booking server of Hotel Bergsonne Allgäu in Sonthofen-Imberg, Germany. Use get_hotel_details for operational facts (room category codes, check-in 15:00, check-out 10:30, contact) and get_fact_sheet for descriptive property data; get_addons lists bookable extras. Always call search_availability first, then get_price_quote for the chosen room category and the same dates: prices are per person per night in EUR, breakfast, VAT and city tax (Kurtaxe, EUR 3.50 per person per night) are already included and must never be added. Create a reservation with create_booking only after availability and price were confirmed, and run it once with test: true as a sandbox dry run before the live call; pass an idempotencyKey so a retry cannot double-book. Payment is requested after submission via a secure payment link, due no later than 7 days before arrival; cash is not accepted. Requests and replies are handled in German and English (Deutsch und Englisch).",
"tools": [
{
"description": "Create a hotel reservation at Hotel Bergsonne Allgäu. Call search_availability and get_price_quote for the same dates and room first: a stay that cannot be priced is rejected with NOT_AVAILABLE or INVALID_RATE, never confirmed at 0.00 EUR. roomId must be a room type abbreviation code from search_availability results (e.g. KAPDZ, KDZ, KFZ, SDZ). Requires dates, guest count, and complete customer details (name, email, phone, country). City tax (Kurtaxe) is already included in rates — do not add it. Optional addons use addonId from get_addons catalog. Set test: true for a sandbox dry run that validates everything without creating a reservation. Payment is requested after the booking was submitted via a secure payment link and is due no later than 7 days before arrival; cash is not accepted.",
"inputSchema": {
"properties": {
"additionalGuests": {
"description": "Additional guest names",
"items": {
"properties": {
"firstName": {
"type": "string"
},
"lastName": {
"type": "string"
}
},
"required": [
"firstName",
"lastName"
],
"type": "object"
},
"type": "array"
},
"addons": {
"description": "Optional add-on extras. Use addonId from get_addons catalog. Prices are resolved server-side.",
"items": {
"properties": {
"addonId": {
"description": "Addon ID from get_addons catalog",
"type": "string"
},
"quantity": {
"description": "Quantity (default 1)",
"type": "number"
}
},
"required": [
"addonId"
],
"type": "object"
},
"type": "array"
},
"adults": {
"description": "Number of adults (>= 1)",
"type": "number"
},
"checkIn": {
"description": "Arrival date",
"type": "string"
},
"checkOut": {
"description": "Departure date",
"type": "string"
},
"children": {
"description": "Number of children (default 0)",
"type": "number"
},
"customer": {
"description": "Booker details",
"properties": {
"address": {
"type": "string"
},
"city": {
"type": "string"
},
"country": {
"description": "2-letter code, e.g. DE",
"type": "string"
},
"email": {
"type": "string"
},
"firstName": {
"type": "string"
},
"lastName": {
"type": "string"
},
"phone": {
"description": "e.g. +49 170 1234567",
"type": "string"
},
"remarks": {
"type": "string"
},
"salutation": {
"type": "string"
},
"zip": {
"type": "string"
}
},
"required": [
"firstName",
"lastName",
"email",
"phone",
"country"
],
"type": "object"
},
"idempotencyKey": {
"description": "Client-generated key. Retrying with the same key returns the original result instead of creating a second reservation.",
"type": "string"
},
"rateId": {
"description": "Rate ID from availability results",
"type": "string"
},
"roomId": {
"description": "Room type abbreviation code from search_availability results (e.g. KAPDZ, KDZ, KFZ, SDZ)",
"type": "string"
},
"test": {
"description": "Sandbox dry run. When true, all validations (availability, rate, guest data) run and nothing is reserved, no payment link is sent.",
"type": "boolean"
}
},
"required": [
"roomId",
"rateId",
"checkIn",
"checkOut",
"adults",
"customer"
],
"type": "object"
},
"name": "create_booking",
"outputSchema": null
},
{
"description": "Fetch the catalog of bookable add-on extras (e.g. wine, flowers, activities). Returns addonId, name, type, priceType, and unitAmount. Use addonId values when adding addons to create_booking.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"language": {
"description": "Preferred language for free-text fields (de, en, nl). Optional; codes, times and prices are language-independent.",
"enum": [
"de",
"en",
"nl"
],
"type": "string"
}
},
"type": "object"
},
"name": "get_addons",
"outputSchema": null
},
{
"description": "Fetch the full GIATA property fact sheet for Hotel Bergsonne Allgäu: rich descriptions, amenities, images, room classifications. German content only. This is marketing/classification data separate from operational hotel details.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"language": {
"description": "Preferred language for free-text fields (de, en, nl). Optional; codes, times and prices are language-independent.",
"enum": [
"de",
"en",
"nl"
],
"type": "string"
}
},
"type": "object"
},
"name": "get_fact_sheet",
"outputSchema": null
},
{
"description": "Fetch hotel operational data from the WBE system: room types with abbreviation codes (roomId), check-in/out times, contact information. For rich marketing descriptions, use get_fact_sheet instead.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"language": {
"description": "Preferred language for free-text fields (de, en, nl). Optional; codes, times and prices are language-independent.",
"enum": [
"de",
"en",
"nl"
],
"type": "string"
}
},
"type": "object"
},
"name": "get_hotel_details",
"outputSchema": null
},
{
"description": "Get a nightly price breakdown and total for a specific room at Hotel Bergsonne Allgäu. roomId must be a room type abbreviation code from search_availability results (e.g. KAPDZ, KDZ, KFZ, SDZ). City tax (Kurtaxe) of 3.50 EUR/person/night is already included in all rates.",
"inputSchema": {
"properties": {
"adults": {
"description": "Number of adult guests",
"type": "number"
},
"checkIn": {
"description": "Arrival date",
"type": "string"
},
"checkOut": {
"description": "Departure date",
"type": "string"
},
"roomId": {
"description": "Room type abbreviation code from search_availability results (e.g. KAPDZ, KDZ, KFZ, SDZ)",
"type": "string"
}
},
"required": [
"roomId",
"checkIn",
"checkOut"
],
"type": "object"
},
"name": "get_price_quote",
"outputSchema": null
},
{
"description": "Search real-time room availability and daily pricing for Hotel Bergsonne Allgäu. Returns dates with rates AND a roomTypes array. Use the roomId from roomTypes (e.g. KAPDZ, KDZ, KFZ, SDZ) for get_price_quote and create_booking. City tax (Kurtaxe) of 3.50 EUR/person/night is already included in all rates.",
"inputSchema": {
"properties": {
"adults": {
"description": "Number of adult guests",
"type": "number"
},
"checkIn": {
"description": "Arrival date (YYYY-MM-DD, DD.MM.YYYY, MM/DD/YYYY, or natural language)",
"type": "string"
},
"checkOut": {
"description": "Departure date (same formats)",
"type": "string"
},
"children": {
"description": "Number of children (optional, default 0)",
"type": "number"
}
},
"required": [
"checkIn",
"checkOut",
"adults"
],
"type": "object"
},
"name": "search_availability",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:c5d097dcd1125b43774ac9ff2c13fa7278f6999d93102c2e2a30f899f18a3342 | sha256sum