
Sports Rules
Work an offside call through IFAB Law 11 or NHL Rule 83, step by step.
What it can do
What data it sees
Do you need an account
No: the server works without sign-in
Work an offside call through IFAB Law 11 or NHL Rule 83, step by step.
How to connect
How to connect Sports Rules to Claude
The server address to paste into Claude settings:
https://sports-rules.gumballtools.com/api/mcp
- Open Claude (claude.ai or the desktop app).
- Go to Settings → Connectors.
- Click Add custom connector.
- Paste the server address copied below into Remote MCP server URL and click Add.
- In a chat, click + → Connectors and switch the new connector on.
Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.
Authorization
After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.
How to connect Sports Rules to ChatGPT
The server address to paste into ChatGPT settings:
https://sports-rules.gumballtools.com/api/mcp
- Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
- Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
- Open Settings → Connectors and click Create.
- Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
- Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
- In a new chat open + → Apps/Connectors and enable the connector.
OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.
Authorization
On first use ChatGPT opens the service's sign-in window. Sign in and approve access.
How to connect Sports Rules to Cursor
The server address to paste into Cursor settings:
https://sports-rules.gumballtools.com/api/mcp
Fastest: click Open in Cursor below and confirm the prompt.
Manually:
- In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
- Paste the JSON copied below into
~/.cursor/mcp.json(per project:.cursor/mcp.jsonin the repo root). - Save the file. The server appears in the MCP list; authorize it there if asked.
Authorization
If the service needs sign-in, an authorize button appears next to the server in the MCP list.
Server tool list (2)
Raw names from tools/list. Only developers need these.
| offside | Work an offside call through the published decision procedure — association football under IFAB Law 11, or ice hockey under NHL Rule 83 — and return every step, not just the verdict. Use this for any "was that offside" question in either sport. The two rules are structurally OPPOSITE and are routinely conflated, and there are four specific things that get answered wrong: SOCCER: 1. HANDS AND ARMS DO NOT COUNT, for anyone including goalkeepers. Only parts that could legally score are measured, and the boundary is the bottom of the armpit. This tool REFUSES to compute from an arm position rather than guessing where the shoulder was. 2. AN OFFSIDE POSITION IS NOT AN OFFENCE. It becomes one only with involvement in active play. Do not report "he was offside" when the answer is that he was in an offside position and uninvolved. `involvement` is REQUIRED once the geometry makes it decisive — the tool errors rather than assuming, so ask the user what the player actually did, and pass "none" if the answer is nothing. 3. No offside offence direct from a throw-in, goal kick, or corner. Absolute. 4. A DELIBERATE play by an opponent resets it; a deflection or a save does NOT. This is the distinction most arguments turn on. HOCKEY: 5. SKATES decide it. Not the stick, not the body. 6. Since 2021 a skate in the AIR above the blue line is still onside — the line is a plane, and ice contact is irrelevant. BUT this does not apply to tagging up on a delayed offside, where the skate must contact the line. Do not generalise the 2021 change to tag-ups. Input for soccer: positions along the attacking axis in metres, larger being nearer the opponents’ goal line — `attacker`, `ball`, `secondLastDefender`. Any consistent scale works; only the order matters. Optionally `restart`, `foremostPart`, `inOwnHalf`, `involvement`, `lastTouch`. Input for hockey: `rearSkate` in centimetres relative to the LEADING EDGE of the blue line, negative being the neutral-zone side. Optionally `skateOnIce`, |
| offside_rule_contrast | Return the structural differences between soccer offside and hockey offside, dimension by dimension. Use this when someone asks how the two compare, or when you are about to reason about one sport using an intuition from the other — which is the commonest way to get either wrong. They differ on what part of the player is measured, when the picture freezes, whether position alone is an offence, what happens at exactly level, what resets the situation, and which restarts are exempt. Takes no arguments. Returns the comparison table. |