LeagueNight
Round-robin fixtures, standings and match-day plans for league organizers. Free.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"league-night": {
"url": "https://league-night.magicteams.ai/mcp"
}
}
}Puntos de conexión remotos
https://league-night.magicteams.ai/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (4)
🟢round_robin_schedule(teams, rounds, second_leg)
Build a circle-method round-robin fixture schedule: every pair of teams meets once, or twice when second_leg is set. Odd team counts get one bye per round.
Esquema de entrada
{
"type": "object",
"properties": {
"teams": {
"type": "array",
"items": {
"type": "string"
},
"description": "Team names (2 or more, unique)"
},
"rounds": {
"type": "number",
"description": "Optional number of rounds to return (1..full schedule)"
},
"second_leg": {
"type": "boolean",
"description": "Also schedule the reverse fixtures for a double round-robin"
}
},
"required": [
"teams"
]
}🟢standings_table(results, teams, points_win, points_draw)
Aggregate match results into a league table with played, wins, draws, losses, goals for/against, goal difference and points, sorted by points, then goal difference, then goals for, then name.
Esquema de entrada
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"home": {
"type": "string"
},
"away": {
"type": "string"
},
"home_score": {
"type": "number"
},
"away_score": {
"type": "number"
}
},
"required": [
"home",
"away",
"home_score",
"away_score"
]
},
"description": "Match results in any order"
},
"teams": {
"type": "array",
"items": {
"type": "string"
},
"description": "Full roster; results for teams outside it are skipped with a warning"
},
"points_win": {
"type": "number",
"description": "Points for a win, default 3"
},
"points_draw": {
"type": "number",
"description": "Points for a draw, default 1"
}
},
"required": [
"results"
]
}🟢match_day_plan(games, courts, slot_minutes, start_time)
Lay an ordered list of games onto a courts-by-slots time grid: game i goes to court (i mod courts) in slot (i div courts) and each slot is slot_minutes long, starting at start_time.
Esquema de entrada
{
"type": "object",
"properties": {
"games": {
"type": "array",
"items": {
"type": "object",
"properties": {
"home": {
"type": "string"
},
"away": {
"type": "string"
}
},
"required": [
"home",
"away"
]
},
"description": "Games in the order they should be played"
},
"courts": {
"type": "number",
"description": "Courts available (1-12)"
},
"slot_minutes": {
"type": "number",
"description": "Minutes per time slot (10-180)"
},
"start_time": {
"type": "string",
"description": "First kick-off, 24h HH:MM"
}
},
"required": [
"games",
"courts",
"slot_minutes",
"start_time"
]
}🟢season_plan(teams, courts, slot_minutes, start_date, days_between_rounds, ...)
Size a season end-to-end: total fixtures from the round-robin, games per match day given the courts available, match days needed, and the calendar dates from a start date to the estimated finish date.
Esquema de entrada
{
"type": "object",
"properties": {
"teams": {
"type": "array",
"items": {
"type": "string"
},
"description": "Team names (2 or more, unique)"
},
"courts": {
"type": "number",
"description": "Courts available per match day (1-12)"
},
"slot_minutes": {
"type": "number",
"description": "Minutes per time slot (10-180)"
},
"start_date": {
"type": "string",
"description": "First match day, YYYY-MM-DD"
},
"days_between_rounds": {
"type": "number",
"description": "Days between match days, default 7"
},
"second_leg": {
"type": "boolean",
"description": "Plan a double round-robin (each pair meets twice)"
}
},
"required": [
"teams",
"courts",
"slot_minutes",
"start_date"
]
}Comunidad
Evidencia