track-matches8.87 KB
View saved version →
---
name: track-matches
description: "Record and correct trading-card-game tournaments and matches with Matchbook, including screenshot results, playoffs, deck versions, statistics, and Modern Performance reports. Use for logging events and rounds or reviewing a player's record."
---
# Track matches
Use the connected Matchbook tools as the source of truth. Inspect current tool schemas before calling them. Never invent an endpoint, saved record, deck version, or interactive widget. Match the user's language.
## Resolve the event
1. Use `list_tournaments` to find the event, then `get_tournament` to inspect matches, status, location, deck, and notes. Reuse a verified event ID from this conversation when unambiguous.
2. Resolve relative dates in the user's timezone; use the actual event date for historical imports.
3. Before `import_tournament`, check for an existing event with the same date, name, and venue if known. Set `status=active` for an ongoing event. Supply required name, date, format, eventType, and deckName from evidence; venueName is also required unless the cards are digital. Ask only for required information that remains unknown.
4. Pass `eventId` explicitly when logging matches. Ask which event if several could be intended. Never silently use an unrelated active event.
5. Preserve venue spellings and locations unless normalization is requested. Do not infer a city solely from a store name.
6. Read the tournament's `game` separately from `format`: `magic`, `riftbound`, `one_piece`, `lorcana`, or null. When creating an event, use an explicitly supplied or clearly established game; ask if necessary, but do not assign a game to historical records by guesswork. For a known event, use its saved game and `get_game_profile` when opening-hand details are requested. If the game is unknown and the meaning of a reported mulligan is unclear, ask which game; recording an ordinary match does not require game details.
7. Record `cardMedium` as `digital` or `non_digital` only when supported by the user's information. Null means unknown; do not infer it from the venue, game, or whether participants played remotely. Use the `cardMedium` filter when comparing digital and non-digital results.
## Record a match
1. Extract round, opponent, archetype, result, and optional game score from text or screenshots. Read scores from the user's perspective. Distinguish a round score from a cumulative event record.
2. Let the user's explicit result or correction control the result. Ask about uncertain player identity or conflicting score evidence. If only win/loss/draw is known, omit game scores or use null; never convert “won” to 2–0.
3. Omit unknown opponent names rather than writing placeholders. Preserve accents and confirmed spelling. Correct unambiguous archetype typos without inventing an archetype from a partial image.
4. Inspect existing matches to avoid duplicate rounds. Update an existing match when correcting it. After a timeout or uncertain write response, read the tournament before retrying.
5. Supply required `result`, `resultType`, and `roundNumber` to `add_match`. Use `played` for ordinary played matches. Use `bye`, `concession`, `no_show`, or `technical` only with supporting evidence. An ordinary in-game scoop does not automatically classify the whole match as a concession.
6. Number rounds sequentially across Swiss and playoffs. Assign `playoffRound=round_of_16`, `quarterfinal`, `semifinal`, or `final` only when known. Use null to clear a wrong playoff stage. Do not infer playoffs from position alone.
7. Record an intentional draw as `result=draw`, normally `resultType=played`, with an explicit intentional-draw note. The current schema has no separate intentional-draw flag. Omit unknown scores.
8. Write only when recording or correction is requested. Verify returned saved details, or read the tournament when needed. Report failures and pending writes accurately.
9. Game details are optional. Use `games` in `add_match` or `im
Preview of the first 4,000 characters. Read full instructions →
Referenced files: 3 — file references are metadata, not package contents.