jk-mcp-ecnl
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| find_eventsA | Find ECNL or ECRL events (conferences) and their event IDs. This is the starting point: it maps a human description to the numeric event IDs every other tool needs. Filter by any combination of league, gender, and season. With no arguments it returns all current events. Args: league: "ECNL" or "ECRL" (the ECNL Regional League). Omit for both. gender: "girls" or "boys". Omit for both. season: Season label like "2025-26". Omit for all seasons present. |
| get_event_overviewA | Get the divisions and flights for an event. Returns each age-group division and its flights, with the flight ID, flight tier (ECNL/ECRL), and team count. Use the flight ID with get_standings, get_schedule, get_teams, and the RPI tools. Args: event_id: Numeric event ID from find_events (e.g. 3933). |
| get_standingsA | Get the standings table for a flight. Returns each team's W-L-D record, points, and points-per-game ordered as the league publishes them. Get the division and flight IDs from get_event_overview. Args: event_id: Numeric event ID (e.g. 3933). division_id: Age-group division ID from get_event_overview. flight_id: Flight ID from get_event_overview. |
| get_scheduleA | Get all matches for a flight. Returns each match's date, time, venue, teams, and score (if played). Get the flight ID from get_event_overview. Args: event_id: Numeric event ID (e.g. 3933). flight_id: Flight ID from get_event_overview. |
| get_team_scheduleA | Get all matches for one team within an event. Returns the team's full slate — date, opponent, venue, and score. Args: event_id: Numeric event ID (e.g. 3933). team_id: Team ID from get_teams or the standings table. |
| get_teamsA | Get the teams competing in a flight. Returns each team's ID, name, and head coach. Use a team ID with get_team_schedule. Get the flight ID from get_event_overview. Args: flight_id: Flight ID from get_event_overview. |
| get_clubsA | Get the clubs participating in an event. Returns each club's ID, name, and location. Args: event_id: Numeric event ID (e.g. 3933). |
| get_matchA | Get detailed information for a single match by its token. Returns the match-detail / box-score payload (teams, score, events) as JSON. The match token comes from a schedule entry's match data. Args: match_token: The match's token/ID string. |
| get_bracketsA | Get the playoff bracket for a flight, if one exists. Returns the bracket structure as JSON. Many regular-season flights have no bracket; in that case the payload is empty. Args: event_id: Numeric event ID (e.g. 3933). flight_id: Flight ID from get_event_overview. |
| get_resultsA | Get the completed match results for a flight. Returns only games that have been played, with final scores. This is the raw data the RPI tools build on. Args: event_id: Numeric event ID (e.g. 3933). flight_id: Flight ID from get_event_overview. |
| get_rpiA | Compute the RPI ranking for every team in a flight. RPI = 0.25·WP + 0.50·OWP + 0.25·OOWP, computed from the flight's completed games. Returns each team's WP/OWP/OOWP components and final RPI, ranked. Early in a season, sparse results make RPI noisy. Args: event_id: Numeric event ID (e.g. 3933). flight_id: Flight ID from get_event_overview. tie_weight: Tie value in the winning-percentage element — 1/3 (the 2024 convention, default) or 0.5 (pre-2024). |
| get_team_rpiA | Compute one team's RPI with its component breakdown. Args: event_id: Numeric event ID (e.g. 3933). flight_id: Flight ID from get_event_overview. team: Team name (or a distinctive part of it), case-insensitive. tie_weight: WP tie value — 1/3 (default) or 0.5 (pre-2024). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 12 tools
Each tool targets a distinct aspect of the ECNL/ECRL data model: event discovery, brackets, clubs, overview, matches, results, RPI, schedule, standings, team RPI, teams, and team schedule. There is no functional overlap.
All tool names follow a consistent 'verb_noun' pattern (e.g., find_events, get_brackets, get_clubs). No mixing of case or styles.
12 tools is well within the optimal range for a domain-specific server. Each tool serves a clear purpose, and the count feels appropriate for querying soccer event data.
The tool set covers the full lifecycle of querying events, brackets, clubs, overview, matches, results, RPI, schedule, standings, and team-specific data. No obvious gaps for read-only operations.