Portland Timbers 2, CF Montréal 2

soccer game fileFinal
Stade Saputo · Montreal · Canada
Boxscore

Key evidence.

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

Portland Timbers boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededintcminutespassespasses cmpredsave pctsavesshot accuracyshotssottacklesyellow
Antony0000000011100
Trey Muse000000000000
James Pantemis0200.7506
Ian Smith010000000000
Brandon Bye000000000000
Kamal Miller020000000000
Juan Mosquera000000000000
Finn Surman0000000001000
Alex Bonetig000000000000
Diego Chará000000000000
Joao Ortiz000000000000
José Caicedo000000000000
Cole Bassett011000000.5002101
Jimer Fory0100000001000
David Da Costa000000000000
Felipe Mora000000000000
Ariel Lassiter000000000000
Kristoffer Velde1000000002000
Alexander Aravena0000000004000
Kevin Kelsy011000000.3333100

Team line

CF Montréal
CF Montréal boxscore
PlayerPosassistsclean sheetfoulsgoalsgoals concededintcminutespassespasses cmpredsave pctsavesshot accuracyshotssottacklesyellow
Iván Jaime000000000000
Thomas Gillier0200.3331
Efraín Morales000000000000
Brayan Vera0100000002000
Victor Loturi0200000001000
Matthew Longstaff2200000004001
Prince Owusu0000000011101
Dagur Thórhallsson0000000011100
Noah Streit010000000.2504100
Olger Escobar0000000001000
Samuel Piette0400000011100
Dawid Bugaj000000000000
Brandan Craig000000000000
Sébastian Breza000000000000
Luca Petrasso000000000.5002100
Daniel Ríos011000000.5004201
Wikelman Carmona021000000.5002100
Kwadwo Opoku000000000000
Frankie Amaya000000000000
Jalen Neal040000000001

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