Sporting Kansas City 1, Portland Timbers 2

soccer game fileFinal
Providence Park · Portland, Oregon · USA
Boxscore

Key evidence.

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

Sporting Kansas City boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededintcminutespassespasses cmpredsave pctsavesshot accuracyshotssottacklesyellow
John Pulskamp000000000000
Zorhan Bassong000000000000
Jacob Davis000000000000
Stephen Afrifa000000000000
Dániel Sallói020000000000
Erik Thommy000000000000
Marinos Tzionis000000000000
Memo Rodríguez0110000011101
Nemanja Radoja020000000000
William Agada0100000002000
Dany Rosero020000000000
Tim Leibold000000000000
Khiry Shelton000000000000
Johnny Russell000000000.5002100
Tim Melia0200.5002
Andreu Fontàs000000000000
Alan Pulido1000000001000
Alenis Vargas000000000000
Felipe Hernàndez000000000000
Robert Castellanos000000000000
Portland Timbers boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededintcminutespassespasses cmpredsave pctsavesshot accuracyshotssottacklesyellow
Antony030000000000
Evander1110000011100
David Ayala010000000000
Maxime Crépeau0100.5001
James Pantemis000000000000
Eric Miller000000000000
Kamal Miller0000000001000
Juan Mosquera0000000001000
Zac McGraw000000000000
Diego Chará010000000000
Felipe Mora101000000.2504100
Eryk Williamson000000000000
Cristhian Paredes000000000000
Dario Zuparic020000000000
Jonathan Rodríguez010000000.3333100
Dairon Asprilla000000000000
Nathan Fogaça000000000000
Miguel Araujo0400000011100
Larrys Mabiala000000000000
Claudio Bravo000000000000

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_06fhs93rcnzs11p0dh695hypt4
curl "https://api.statshawk.ai/v1/contests/cst_06fhs93rcnzs11p0dh695hypt4" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhs93rcnzs11p0dh695hypt4/boxscore
curl "https://api.statshawk.ai/v1/contests/cst_06fhs93rcnzs11p0dh695hypt4/boxscore" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhs93rcnzs11p0dh695hypt4/matchup
curl "https://api.statshawk.ai/v1/contests/cst_06fhs93rcnzs11p0dh695hypt4/matchup" \
  -H "X-API-Key: sk_live_YOUR_KEY_HERE"
Authenticated request · GET /v1/contests/cst_06fhs93rcnzs11p0dh695hypt4/play-by-play?detail=full
curl "https://api.statshawk.ai/v1/contests/cst_06fhs93rcnzs11p0dh695hypt4/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