udansa
Find dance classes, dance events nearby and dance guide articles.
我該用這個嗎
品質與安全性
發現項目(2)
- HIGH
- MEDIUM在 read_page_text 中
根據工具定義與協定合規性的自動化分析。
上下文成本
這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。
安裝
一鍵安裝
將以下內容加入你的 `claude_desktop_config.json` 檔案:
{
"mcpServers": {
"udansa": {
"url": "https://udansa.com/mcp"
}
}
}遠端端點
https://udansa.com/mcpstreamable-http它能做什麼
工具清單
工具(7)
🟢search_dance_courses(query, city, style, level, weekday, ...)
Search public dance courses on udansa - the same results as the course search page. Filter by free text, city, dance style (any language), level, weekday, provider and price. Each result has id, title, style, level, city, venue, weekday, start/end, whether it runs continuously ('ongoing'), price ('free' when it costs nothing), free places and the course page URL. Also returns the most common filter values with counts (filter_options) and a link to the same search on udansa. Use get_course_details for one course; booking happens on the course page.
輸入結構描述
{
"type": "object",
"properties": {
"query": {
"description": "Free text, partial words allowed, e.g. 'Salsa beginners'.",
"type": "string",
"maxLength": 100
},
"city": {
"description": "City as listed on udansa, usually the local name ('München', 'Wien'). English names like 'Munich' are tried as well. Values: filter_options.city or get_search_filter_options.",
"type": "string",
"maxLength": 80
},
"style": {
"description": "Dance style name in any language, e.g. 'Bachata', 'Wedding dance', 'Hochzeitstanz'. Values: filter_options.style or get_search_filter_options.",
"type": "string",
"maxLength": 80
},
"level": {
"description": "Exact level value from filter_options.level of a search result.",
"type": "string",
"maxLength": 40
},
"weekday": {
"description": "Only offers on this weekday.",
"type": "string",
"enum": [
"monday",
"tuesday",
"wednesday",
"thursday",
"friday",
"saturday",
"sunday"
]
},
"provider": {
"description": "Exact dance school or organizer name from filter_options.provider of a search result; use query for partial names.",
"type": "string",
"maxLength": 120
},
"price_min": {
"type": "number",
"minimum": 0
},
"price_max": {
"type": "number",
"minimum": 0
},
"sort": {
"type": "string",
"enum": [
"relevance",
"price_asc",
"price_desc",
"date_asc"
]
},
"page": {
"default": 1,
"description": "Result page, starting at 1.",
"type": "integer",
"minimum": 1,
"maximum": 100
},
"limit": {
"default": 10,
"description": "Results per page (1-24, default 10).",
"type": "integer",
"minimum": 1,
"maximum": 24
},
"language": {
"default": "de",
"description": "Two-letter language code for texts, style names and page links (de, en, fr, es, it, ...). Default de.",
"type": "string",
"minLength": 2,
"maxLength": 5
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢search_dance_events(query, city, style, level, weekday, ...)
Search upcoming dance events on udansa (parties, workshops, festivals, congresses, balls) - the same results as the event search page. Filter by free text, city, dance style (any language), category, weekday, organizer and price. Recurring events appear once with their next date. Each result has id, title, style, type, city, venue, start/end, price_from (null when the organizer has not published a price; 'free' only when it really costs nothing), how tickets are sold ('udansa', 'external', 'at_the_door'), a short summary and the event page URL. Use get_event_details for tickets and programme.
輸入結構描述
{
"type": "object",
"properties": {
"query": {
"description": "Free text, partial words allowed, e.g. 'Salsa beginners'.",
"type": "string",
"maxLength": 100
},
"city": {
"description": "City as listed on udansa, usually the local name ('München', 'Wien'). English names like 'Munich' are tried as well. Values: filter_options.city or get_search_filter_options.",
"type": "string",
"maxLength": 80
},
"style": {
"description": "Dance style name in any language, e.g. 'Bachata', 'Wedding dance', 'Hochzeitstanz'. Values: filter_options.style or get_search_filter_options.",
"type": "string",
"maxLength": 80
},
"level": {
"description": "Exact level value from filter_options.level of a search result.",
"type": "string",
"maxLength": 40
},
"weekday": {
"description": "Only offers on this weekday.",
"type": "string",
"enum": [
"monday",
"tuesday",
"wednesday",
"thursday",
"friday",
"saturday",
"sunday"
]
},
"provider": {
"description": "Exact dance school or organizer name from filter_options.provider of a search result; use query for partial names.",
"type": "string",
"maxLength": 120
},
"price_min": {
"type": "number",
"minimum": 0
},
"price_max": {
"type": "number",
"minimum": 0
},
"sort": {
"type": "string",
"enum": [
"relevance",
"price_asc",
"price_desc",
"date_asc"
]
},
"page": {
"default": 1,
"description": "Result page, starting at 1.",
"type": "integer",
"minimum": 1,
"maximum": 100
},
"category": {
"description": "Exact event category from filter_options.category of a search result, e.g. 'party', 'workshop', 'festival'.",
"type": "string",
"maxLength": 60
},
"limit": {
"default": 10,
"description": "Results per page (1-24, default 10).",
"type": "integer",
"minimum": 1,
"maximum": 24
},
"language": {
"default": "de",
"description": "Two-letter language code for texts, style names and page links (de, en, fr, es, it, ...). Default de.",
"type": "string",
"minLength": 2,
"maxLength": 5
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_search_filter_options(kind, language)
List every city and dance style that currently has courses (kind 'courses') or events (kind 'events') on udansa, with style names in the requested language. Use the values as city / style filters in search_dance_courses and search_dance_events.
輸入結構描述
{
"type": "object",
"properties": {
"kind": {
"default": "courses",
"type": "string",
"enum": [
"courses",
"events"
]
},
"language": {
"default": "de",
"description": "Two-letter language code for the style names.",
"type": "string",
"minLength": 2,
"maxLength": 5
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_course_details(id, language)
Full public details of one dance course on udansa: description, styles, level, provider, instructor, venue with address, schedule (start, end or 'ongoing', weekday, upcoming sessions, time zone), price and price options, free places, age limits, waitlist, trial lesson and whether it can be booked online on udansa (booking.reason says why not). Link: url.
輸入結構描述
{
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "Course id, as returned by search_dance_courses."
},
"language": {
"default": "de",
"description": "Two-letter language code for the page link and style names.",
"type": "string",
"minLength": 2,
"maxLength": 5
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_event_details(id, language)
Full public details of one dance event on udansa: title and description in the requested language, category, styles, start and end with time zone, venue, organizer (null for events curated by udansa), artists, programme, ticket categories with price and remaining tickets, add-ons, free places, series (next date), waitlist and whether tickets can be bought on udansa (booking.reason says why not; booking.external_url for external sale). Link: url.
輸入結構描述
{
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "Event id, as returned by search_dance_events."
},
"language": {
"default": "de",
"description": "Two-letter language code for translated texts and the page link.",
"type": "string",
"minLength": 2,
"maxLength": 5
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢search_guide_articles(query, section, language, limit)
Search udansa's editorial content: about 1,400 dance guide articles (learning to dance, finding a dance partner, wedding dance, dance styles, etiquette, health), city guides and dance style pages, in 40 languages. Returns titles, short summaries and page URLs; read one with read_page_text.
輸入結構描述
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"maxLength": 120,
"description": "What the user wants to know, e.g. 'wedding dance first steps'."
},
"section": {
"description": "Limit to guide articles, city pages or dance style pages.",
"type": "string",
"enum": [
"guide",
"city",
"dance_style"
]
},
"language": {
"default": "de",
"description": "Two-letter language code.",
"type": "string",
"minLength": 2,
"maxLength": 2
},
"limit": {
"default": 10,
"type": "integer",
"minimum": 1,
"maximum": 25
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢read_page_text(url)
Read the text of a udansa content page (guide article, city or dance style page, terms, privacy or cancellation policy, about us) as plain sections plus its FAQ. Pass a URL or path from search_guide_articles, e.g. https://udansa.com/en/dance-guide/... For courses and events use get_course_details / get_event_details.
輸入結構描述
{
"type": "object",
"properties": {
"url": {
"type": "string",
"minLength": 1,
"maxLength": 500,
"description": "udansa URL or path, e.g. /de/tanz-ratgeber/..."
}
},
"required": [
"url"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}社群
證據