West Coast Swing WSDC points registry: dancer points, divisions, level-ups, event results and rules.
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.
Get a dancer's WSDC profile: current division and points per role (Leader/Follower), the Jack & Jill divisions they are allowed to enter in each role, points per division, level-up timeline, and first/last competition dates.
WSDC competitor ID
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http wsdc-points https://wcspoints.com/mcp
Get a dancer's WSDC profile: current division and points per role (Leader/Follower), the Jack & Jill divisions they are allowed to enter in each role, points per division, level-up timeline, and first/last competition dates.
| Argument | Type | Description |
|---|---|---|
| wsdc_id* | integer | WSDC competitor ID |
{
"type": "object",
"title": "get_dancer_profileArguments",
"required": [
"wsdc_id"
],
"properties": {
"wsdc_id": {
"type": "integer",
"title": "Wsdc Id",
"maximum": 9999999,
"minimum": 1,
"description": "WSDC competitor ID"
}
}
}List a dancer's WSDC Jack & Jill placements (event, date, division, role, placement, points), most recent first. Totals are computed over all results matching the filters.
| Argument | Type | Description |
|---|---|---|
| role | any | Only results as 'Leader' or 'Follower' |
| year | any | Only results from this year |
| limit | integer | Maximum number of results to return |
| wsdc_id* | integer | WSDC competitor ID |
| division | any | Only this division, e.g. 'Novice', 'All-Stars', 'Masters' |
{
"type": "object",
"title": "get_dancer_resultsArguments",
"required": [
"wsdc_id"
],
"properties": {
"role": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Role",
"default": null,
"description": "Only results as 'Leader' or 'Follower'"
},
"year": {
"anyOf": [
{
"type": "integer",
"maximum": 2100,
"minimum": 1985
},
{
"type": "null"
}
],
"title": "Year",
"default": null,
"description": "Only results from this year"
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 50,
"maximum": 200,
"minimum": 1,
"description": "Maximum number of results to return"
},
"wsdc_id": {
"type": "integer",
"title": "Wsdc Id",
"maximum": 9999999,
"minimum": 1,
"description": "WSDC competitor ID"
},
"division": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Division",
"default": null,
"description": "Only this division, e.g. 'Novice', 'All-Stars', 'Masters'"
}
}
}Count dancers by current division and role (Leader/Follower), worldwide or for one country, optionally only recently active dancers.
| Argument | Type | Description |
|---|---|---|
| country | any | Only dancers from this country |
| active_within_months | any | Only count dancers who earned points within this many months |
{
"type": "object",
"title": "get_division_statsArguments",
"properties": {
"country": {
"anyOf": [
{
"type": "string",
"maxLength": 60
},
{
"type": "null"
}
],
"title": "Country",
"default": null,
"description": "Only dancers from this country"
},
"active_within_months": {
"anyOf": [
{
"type": "integer",
"maximum": 600,
"minimum": 1
},
{
"type": "null"
}
],
"title": "Active Within Months",
"default": null,
"description": "Only count dancers who earned points within this many months"
}
}
}Get the Jack & Jill placements recorded in the WSDC registry for one event, grouped by division (highest first): placement, role, points awarded, dancer name and WSDC ID.
| Argument | Type | Description |
|---|---|---|
| division | any | Only this division, e.g. 'Champions' |
| event_id* | integer | Event ID from search_events |
{
"type": "object",
"title": "get_event_resultsArguments",
"required": [
"event_id"
],
"properties": {
"division": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Division",
"default": null,
"description": "Only this division, e.g. 'Champions'"
},
"event_id": {
"type": "integer",
"title": "Event Id",
"minimum": 1,
"description": "Event ID from search_events"
}
}
}List dancers who recently moved up to a higher WSDC division (in either role), most recent first, optionally filtered by country and target division.
| Argument | Type | Description |
|---|---|---|
| days | integer | Look-back window in days |
| limit | integer | Maximum number of level-ups to return |
| country | any | Only dancers from this country |
| division | any | Only moves into this division: Novice, Intermediate, Advanced, All-Stars or Champions |
{
"type": "object",
"title": "get_recent_levelupsArguments",
"properties": {
"days": {
"type": "integer",
"title": "Days",
"default": 90,
"maximum": 730,
"minimum": 1,
"description": "Look-back window in days"
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 50,
"maximum": 200,
"minimum": 1,
"description": "Maximum number of level-ups to return"
},
"country": {
"anyOf": [
{
"type": "string",
"maxLength": 60
},
{
"type": "null"
}
],
"title": "Country",
"default": null,
"description": "Only dancers from this country"
},
"division": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Division",
"default": null,
"description": "Only moves into this division: Novice, Intermediate, Advanced, All-Stars or Champions"
}
}
}Data coverage and freshness: number of dancers and events, date of the most recent event in the mirror, the rulebook version, and links to the official sources.
No arguments.
{
"type": "object",
"title": "get_registry_infoArguments",
"properties": {}
}Find West Coast Swing dancers in the WSDC Points Registry by name or WSDC ID. Returns WSDC ID, country, primary role and current division for each match, most recently active dancers first. Use the WSDC ID with the other dancer tools.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of dancers to return |
| query* | string | Dancer name (any order, partial names OK, Latin or Cyrillic) or a WSDC ID |
{
"type": "object",
"title": "search_dancersArguments",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"title": "Limit",
"default": 10,
"maximum": 25,
"minimum": 1,
"description": "Maximum number of dancers to return"
},
"query": {
"type": "string",
"title": "Query",
"maxLength": 100,
"minLength": 1,
"description": "Dancer name (any order, partial names OK, Latin or Cyrillic) or a WSDC ID"
}
}
}Find WSDC registry events (West Coast Swing conventions with points-awarding Jack & Jill contests) by name, city, year and/or country. Most recent first. Use the event_id with get_event_results.
| Argument | Type | Description |
|---|---|---|
| year | any | Only events held in this year |
| limit | integer | Maximum number of events to return |
| query | any | Words from the event name or city, e.g. 'Swing Diego' |
| country | any | Only events in this country, e.g. 'Germany', 'USA' |
{
"type": "object",
"title": "search_eventsArguments",
"properties": {
"year": {
"anyOf": [
{
"type": "integer",
"maximum": 2100,
"minimum": 1985
},
{
"type": "null"
}
],
"title": "Year",
"default": null,
"description": "Only events held in this year"
},
"limit": {
"type": "integer",
"title": "Limit",
"default": 20,
"maximum": 50,
"minimum": 1,
"description": "Maximum number of events to return"
},
"query": {
"anyOf": [
{
"type": "string",
"maxLength": 100
},
{
"type": "null"
}
],
"title": "Query",
"default": null,
"description": "Words from the event name or city, e.g. 'Swing Diego'"
},
"country": {
"anyOf": [
{
"type": "string",
"maxLength": 60
},
{
"type": "null"
}
],
"title": "Country",
"default": null,
"description": "Only events in this country, e.g. 'Germany', 'USA'"
}
}
}Search the official WSDC Registry Event Rules (current rulebook) and return the most relevant sections verbatim: division move-up thresholds, points per placement and tier, primary/secondary role rules, contest requirements, age divisions, judging.
| Argument | Type | Description |
|---|---|---|
| query* | string | What to look up, e.g. 'points needed to move up from Novice', 'points per tier' |
| max_results | integer | Maximum number of rulebook excerpts |
{
"type": "object",
"title": "search_wsdc_rulesArguments",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"title": "Query",
"maxLength": 200,
"minLength": 2,
"description": "What to look up, e.g. 'points needed to move up from Novice', 'points per tier'"
},
"max_results": {
"type": "integer",
"title": "Max Results",
"default": 4,
"maximum": 8,
"minimum": 1,
"description": "Maximum number of rulebook excerpts"
}
}
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 9, 2026.