Kansas City Royals 2, Cleveland Guardians 3

baseball game fileFinal
Progressive Field · Cleveland
Boxscore

Key evidence.

Every reported player line, kept in the API’s sport-specific stat vocabulary.

Kansas City Royals boxscore
PlayerPosabavgb2b3bbbfcsererahhbphldhriplobpopsoutspapitchesrrbisbsfslgsosvtotal baseswwhip
Bobby Witt Jr.SS40000–0––00–0––00–4–000001–0––
Salvador Perez1B40.250000–0––10–0––0.2500.500–4–00000.2500–1––
Tyler TolbertPR0–000–0––00–0–––––0–0000–0–0––
Mike YastrzemskiRF30.333102–0––10–0––0.6001.267–5–10000.6670–2––
Randal GrichukLF0–000–0––00–0–––––0–0000–0–0––
John SchreiberP––––06–213.5002–011.3331––4–182––––10–01.500
Nick LoftinPH10000–0––00–0––00–1–000001–0––
Jac CaglianoneRF40.250000–0––10–0––0.2500.500–4–00000.2502–1––
Stephen KolekP––––124–11.3503–006.6670––20–971––––40–00.600
Jonathan India2B30000–0––01–0––0.2500.250–4–000003–0––
Vinnie PasquantinoDH30.333001–0––10–1––0.5001.833–4–12001.3330–4––
Kyle IsbelCF40000–0––00–0––00–4–000003–0––
Maikel Garcia3B30001–0––00–0––0.2500.250–4–000000–0––
Luke MaileC30.333000–0––10–0––0.3330.667–3–00100.3331–1––
Cleveland Guardians boxscore
PlayerPosabavgb2b3bbbfcsererahhbphldhriplobpopsoutspapitchesrrbisbsfslgsosvtotal baseswwhip
Steven KwanLF40.250100–0––10–0––0.2500.750–4–10000.5001–2––
Kyle Manzardo1B30.333000–0––10–0––0.3330.667–3–00000.3330–1––
Brayan RocchioSS30000–0––00–0––00–3–000000–0––
Daniel Schneemann2B20001–0––00–0––0.3330.333–3–000000–0––
Gavin WilliamsP––––325–234–0160––18–1052––––60–01.167
Matt FestaP––––04–001–0010––3–150––––10–11
Cade SmithP––––04–000–0010––3–120––––21–00
Hunter GaddisP––––01–000–000.3330––1–50––––00–00
Erik SabrowskiP––––13–000–000.6670––2–110––––20–01.500
George ValeraDH40000–0––00–0––00–4–000002–0––
Angel MartinezCF0–000–0––00–0–––––0–0000–0–0––
CJ KayfusRF30.333000–0––10–1––0.3331.667–3–12001.3330–4––
Bo NaylorC30.667100–0––20–0––0.6671.667–3–100010–3––
Jose Ramirez3B40000–0––00–0––00–4–010000–0––
Nolan JonesRF30000–0––00–0––00–3–000002–0––

Comparison

Side by side.

Final

Analysis preview// illustrative example, not this page's real data
sample · team comparisonexample only
a:"Team A"b:"Team B"
Offensive ratingA 114.2 · B 108.9
Recent form (L10)A 6-4 · B 6-4
Head-to-headB leads 3-1
GET /v1/analysis/compare-teams?a=…&b=…Run this yourself via the API
Built on the StatHawk API

The page is the demo.

These requests and request patterns show how this page gets data from the same REST API and MCP server you can use in your own app or agent.

View this page's API recipe

Use the authenticated requests or fill in the labeled request templates, then adapt the response in your own product.

Authenticated request · GET /v1/contests/cst_06fjvyhee5xh594m0w8jkj4qb0
curl "https://api.statshawk.ai/v1/contests/cst_06fjvyhee5xh594m0w8jkj4qb0" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fjvyhee5xh594m0w8jkj4qb0/boxscore
curl "https://api.statshawk.ai/v1/contests/cst_06fjvyhee5xh594m0w8jkj4qb0/boxscore" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fjvyhee5xh594m0w8jkj4qb0/matchup
curl "https://api.statshawk.ai/v1/contests/cst_06fjvyhee5xh594m0w8jkj4qb0/matchup" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fjvyhee5xh594m0w8jkj4qb0/play-by-play?detail=full
curl "https://api.statshawk.ai/v1/contests/cst_06fjvyhee5xh594m0w8jkj4qb0/play-by-play?detail=full" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Try with MCP

Connect StatHawk to your agent, then ask it to explain and extend the data shown on this page.

Build this view in the API reference
$claude mcp add statshawk https://mcp.statshawk.ai/mcp