Pro AI agenty: MCP, OpenAPI a llms.txt
Read-only MCP server, nástroje, limity a jak citovat data.
MCP server
- Adresa:
https://data.skiresort.cz/mcp· transport Streamable HTTP (POST JSON-RPC 2.0, odpovědiapplication/json, bez SSE a bez relací) · bez autentizace, jen čtení z aktuálního releasu. - Protokol:
2025-11-25,2025-06-18,2025-03-26,2024-11-05(initialize→notifications/initialized→tools/list,tools/call,resources/list,resources/templates/list,resources/read). - Každý výsledek má
structuredContent(soutputSchema), krátký text ameta:release,dataAsOf,validAt, sezóna a atribuce; entity majíurlfact page k citaci. - Limity: požadavek ≤ 64 kB, výsledek ≤ 100 000 znaků (jinak chyba s radou, jak dotaz zúžit); prohlížečové
Origincizích webů se odmítají. - Připojení: v Claude „Add custom connector“ s URL
https://data.skiresort.cz/mcp, nebo MCP Inspector (npx @modelcontextprotocol/inspector, transport Streamable HTTP).
curl -s -X POST 'https://data.skiresort.cz/mcp' -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1"}}}'
curl -s -X POST 'https://data.skiresort.cz/mcp' -H 'Content-Type: application/json' -H 'MCP-Protocol-Version: 2025-06-18' \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"get_lift","arguments":{"areaId":"cerna-hora","designation":"A1"}}}'Nástroje (12)
| Nástroj | Co dělá a vrací | Vstupy |
|---|---|---|
| get_resort_overview | Returns what SkiResort ČERNÁ HORA – PEC is: its ski areas (with membership core/partner), operator, aggregate counts computed from the data (lifts, slopes, km) with and without partner areas, statements of official sources, current season phase and links to fact pages, API and documentation. | lang |
| list_areas | Returns the ski areas of the resort with membership (core = operated by the resort operator, partner = partner area), elevation range, aggregate counts, the current season phase and a one-sentence operating summary per area, each with a fact page URL. | lang |
| get_entity | Returns one entity (area, lift, slope, service, product, glossary term, …) by canonical ID (e.g. lift:cerna-hora:a1) or by alias (legacy v1 key lift:chora:A1, web map ID lift-cerna-hora-a1). All registry attributes are included (null = not reported); with includeProvenance each value carries its source URL, evidence, retrieval time and confidence. | id, lang, includeProvenance |
| search | Full-text search over names, aliases, designations, glossary terms and FAQ questions/answers (accent-insensitive, prefixes, Czech inflection; synonyms in en/de/pl for key topics such as dogs, parking, price, ski pass, night skiing, mountain rescue, skibus, summer toboggan). Returns up to 10 hits with ID, type, area, match kind, score and fact page URL. Czech or English queries work best. | query, type, limit, lang |
| get_live_status | Returns the current operating status of lifts, slopes, trails and services per ski area, each with session (day, evening, summer-day), observedAt and validUntil (Europe/Prague), editorial note (e.g. a planned closure) and the season phase; unconfirmed statuses carry unconfirmedSince instead of validUntil. Status 'unknown' means not reported or expired, not closed. Outside the winter season no skiing status is published (slopes are closed with reason off-season). | areaId, entityType, session, lang |
| get_lift | Returns one lift or surface lift with technical data (type, length, capacity, elevation, speed, manufacturer, year), operating hours and current operating status, by ID (lift:cerna-hora:a1) or by area + official designation (cerna-hora + A1). | id, areaId, designation, lang, includeProvenance |
| get_slopes | Returns slopes with designation, difficulty (easy = blue, intermediate = red, difficult = black), length, night skiing capability (lighting, not today's operation), snowmaking capability and current day status, optionally filtered by area, difficulty and capability. | areaId, difficulty, nightSkiingCapable, lang |
| get_products_and_prices | Returns ski pass and service products and, for a given product, its prices in CZK incl. VAT with season, price period, sales channel (online, cashdesk, kiosk) and age category. Without productId it returns the product list and a summary of the season price lists. Without seasonId it returns the currently valid price lists (current season, before winter also the summer/autumn season) and says explicitly when the ski pass price list of the current season is not published yet; past seasons are archive (seasonId=2025-26). A price is never valid without its period, channel and age category. | productId, seasonId, channel, ageCategory, date, lang |
| get_age_categories | Returns ski pass age categories by season defined by year of birth (e.g. child born 2015–2020), optionally only those valid for a product or a given birth year, with an automatic coverage check (no gaps or overlaps between categories). | seasonId, productId, birthYear, lang |
| explain_term | Returns the definition of a resort-specific term from the glossary (e.g. Flexiskipas, SkiTour, Magická jízda, sKiosek, balíček 1+1): definition, synonyms, example questions, related products or places and the fact page URL. Accepts the term code, glossary ID or the term text. | term, lang |
| get_practical_info | Returns practical information of the resort by topic: contacts (phone, e-mail, hours), policies (rules from the terms and conditions with the source document and article, e.g. compensation, lost card, dogs, age proof), documents (terms and conditions with version, effective date and PDF URL; superseded versions are marked), events (with start and end date) and news. Optional query filters by name (accent-insensitive). Each item has its fact page URL. | topic, query, areaId, lang |
| get_faq | Returns official FAQ answers of the resort (question, answer, fact page URL). With a query, searches the question and the answer (accent-insensitive, word prefixes and Czech inflection, e.g. 'Sněžku', 'půjčit den předem', 'bez auta'; key topics also in English, German and Polish, e.g. dogs/Hunde/psy, parking, price/Preis, ski pass/Skipass/karnet, night skiing) and adds glossary definitions (kind=glossary) when few FAQ items match; without a query lists all FAQ items. Czech or English queries work best. | query, limit, lang |
Další kanály pro AI
- llms.txt – mapa kanonických zdrojů; llms-full.txt – úplná fakta v Markdownu (bez živých stavů).
- Každá fact page má Markdown verzi (
.mdneboAccept: text/markdown) a JSON-LD (schema.org). - OpenAPI 3.1 pro function calling (operace bez
x-agent-hidden). - Texty neobsahují pokyny pro modely; popisy nástrojů říkají jen, co nástroj dělá a vrací.