Find dance classes, dance events nearby and dance guide articles.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
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, booking.book_at where to book instead - udansa gives no external booking links). Link: url.
Course id, as returned by search_dance_courses.
Two-letter language code for the page link and style names.
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, booking.book_at where to book instead - udansa gives no external booking links). Link: url.
| Argument | Type | Description |
|---|---|---|
| id* | string | Course id, as returned by search_dance_courses. |
| language | string | Two-letter language code for the page link and style names. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "Course id, as returned by search_dance_courses."
},
"language": {
"type": "string",
"default": "de",
"maxLength": 5,
"minLength": 2,
"description": "Two-letter language code for the page link and style names."
}
},
"additionalProperties": false
}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.tickets where tickets are instead - udansa gives no external ticket links). Link: url.
| Argument | Type | Description |
|---|---|---|
| id* | string | Event id, as returned by search_dance_events. |
| language | string | Two-letter language code for translated texts and the page link. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"minLength": 1,
"description": "Event id, as returned by search_dance_events."
},
"language": {
"type": "string",
"default": "de",
"maxLength": 5,
"minLength": 2,
"description": "Two-letter language code for translated texts and the page link."
}
},
"additionalProperties": false
}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.
| Argument | Type | Description |
|---|---|---|
| kind | string | |
| language | string | Two-letter language code for the style names. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"kind": {
"enum": [
"courses",
"events"
],
"type": "string",
"default": "courses"
},
"language": {
"type": "string",
"default": "de",
"maxLength": 5,
"minLength": 2,
"description": "Two-letter language code for the style names."
}
},
"additionalProperties": false
}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.
| Argument | Type | Description |
|---|---|---|
| url* | string | udansa URL or path, e.g. /de/tanz-ratgeber/... |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "udansa URL or path, e.g. /de/tanz-ratgeber/..."
}
},
"additionalProperties": false
}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.
| Argument | Type | Description |
|---|---|---|
| city | string | 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. |
| page | integer | Result page, starting at 1. |
| sort | string | |
| level | string | Exact level value from filter_options.level of a search result. |
| limit | integer | Results per page (1-24, default 10). |
| query | string | Free text, partial words allowed, e.g. 'Salsa beginners'. |
| style | string | Dance style name in any language, e.g. 'Bachata', 'Wedding dance', 'Hochzeitstanz'. Values: filter_options.style or get_search_filter_options. |
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.
| Argument | Type | Description |
|---|---|---|
| city | string | 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. |
| page | integer | Result page, starting at 1. |
| sort | string | |
| level | string | Exact level value from filter_options.level of a search result. |
| limit | integer | Results per page (1-24, default 10). |
| query | string | Free text, partial words allowed, e.g. 'Salsa beginners'. |
| style | string | Dance style name in any language, e.g. 'Bachata', 'Wedding dance', 'Hochzeitstanz'. Values: filter_options.style or get_search_filter_options. |
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.
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| query* | string | What the user wants to know, e.g. 'wedding dance first steps'. |
| section | string | Limit to guide articles, city pages or dance style pages. |
| language | string | Two-letter language code. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1
},
"query": {
"type": "string",
"maxLength": 120,
"minLength": 2,
"description": "What the user wants to know, e.g. 'wedding dance first steps'."
},
"section": {
"enum": [
"guide",
"city",
"dance_style"
],
"type": "string",
"description": "Limit to guide articles, city pages or dance style pages."
},
"language": {
"type": "string",
"default": "de",
"maxLength": 2,
"minLength": 2,
"description": "Two-letter language code."
}
},
"additionalProperties": false
}| weekday | string | Only offers on this weekday. |
| language | string | Two-letter language code for texts, style names and page links (de, en, fr, es, it, ...). Default de. |
| provider | string | Exact dance school or organizer name from filter_options.provider of a search result; use query for partial names. |
| price_max | number |
| price_min | number |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"city": {
"type": "string",
"maxLength": 80,
"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."
},
"page": {
"type": "integer",
"default": 1,
"maximum": 100,
"minimum": 1,
"description": "Result page, starting at 1."
},
"sort": {
"enum": [
"relevance",
"price_asc",
"price_desc",
"date_asc"
],
"type": "string"
},
"level": {
"type": "string",
"maxLength": 40,
"description": "Exact level value from filter_options.level of a search result."
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 24,
"minimum": 1,
"description": "Results per page (1-24, default 10)."
},
"query": {
"type": "string",
"maxLength": 100,
"description": "Free text, partial words allowed, e.g. 'Salsa beginners'."
},
"style": {
"type": "string",
"maxLength": 80,
"description": "Dance style name in any language, e.g. 'Bachata', 'Wedding dance', 'Hochzeitstanz'. Values: filter_options.style or get_search_filter_options."
},
"weekday": {
"enum": [
"monday",
"tuesday",
"wednesday",
"thursday",
"friday",
"saturday",
"sunday"
],
"type": "string",
"description": "Only offers on this weekday."
},
"language": {
"type": "string",
"default": "de",
"maxLength": 5,
"minLength": 2,
"description": "Two-letter language code for texts, style names and page links (de, en, fr, es, it, ...). Default de."
},
"provider": {
"type": "string",
"maxLength": 120,
"description": "Exact dance school or organizer name from filter_options.provider of a search result; use query for partial names."
},
"price_max": {
"type": "number",
"minimum": 0
},
"price_min": {
"type": "number",
"minimum": 0
}
},
"additionalProperties": false
}| weekday | string | Only offers on this weekday. |
| category | string | Exact event category from filter_options.category of a search result, e.g. 'party', 'workshop', 'festival'. |
| language | string | Two-letter language code for texts, style names and page links (de, en, fr, es, it, ...). Default de. |
| provider | string | Exact dance school or organizer name from filter_options.provider of a search result; use query for partial names. |
| price_max | number |
| price_min | number |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"city": {
"type": "string",
"maxLength": 80,
"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."
},
"page": {
"type": "integer",
"default": 1,
"maximum": 100,
"minimum": 1,
"description": "Result page, starting at 1."
},
"sort": {
"enum": [
"relevance",
"price_asc",
"price_desc",
"date_asc"
],
"type": "string"
},
"level": {
"type": "string",
"maxLength": 40,
"description": "Exact level value from filter_options.level of a search result."
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 24,
"minimum": 1,
"description": "Results per page (1-24, default 10)."
},
"query": {
"type": "string",
"maxLength": 100,
"description": "Free text, partial words allowed, e.g. 'Salsa beginners'."
},
"style": {
"type": "string",
"maxLength": 80,
"description": "Dance style name in any language, e.g. 'Bachata', 'Wedding dance', 'Hochzeitstanz'. Values: filter_options.style or get_search_filter_options."
},
"weekday": {
"enum": [
"monday",
"tuesday",
"wednesday",
"thursday",
"friday",
"saturday",
"sunday"
],
"type": "string",
"description": "Only offers on this weekday."
},
"category": {
"type": "string",
"maxLength": 60,
"description": "Exact event category from filter_options.category of a search result, e.g. 'party', 'workshop', 'festival'."
},
"language": {
"type": "string",
"default": "de",
"maxLength": 5,
"minLength": 2,
"description": "Two-letter language code for texts, style names and page links (de, en, fr, es, it, ...). Default de."
},
"provider": {
"type": "string",
"maxLength": 120,
"description": "Exact dance school or organizer name from filter_options.provider of a search result; use query for partial names."
},
"price_max": {
"type": "number",
"minimum": 0
},
"price_min": {
"type": "number",
"minimum": 0
}
},
"additionalProperties": false
}