get_contracts
Retrieve active MLB player contracts. Use salary and age to determine team control status, as contract length alone does not indicate free agency.
Instructions
Retrieve all current and active player contracts. IMPORTANT: The API does not expose service time or team control status. A 1-year contract does NOT necessarily mean the player will hit free agency — pre-arbitration players (~$900K salary) and arbitration-eligible players ($1–8M salary) both show as 1-year deals that auto-renew under team control. Only multi-year contracts or high-AAV 1-year deals indicate a negotiated free-agent signing. Use salary level and player age to infer team control status.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| team_id | No | MLB team ID — filters by the team that holds the contract (contract_team_id) | |
| player_id | No | Player ID to fetch a single player's contract |