player_lookup
Find MLB player IDs and career details by entering a player's name. Use this tool to verify identities and obtain database identifiers for subsequent baseball data queries.
Instructions
Look up a baseball player to find their MLBAM ID, years active, and database IDs.
Accepts names like 'Mike Trout', 'Trout, Mike', or 'Shohei Ohtani'. Useful for verifying a player's identity or finding their MLBAM / FanGraphs / Baseball-Reference IDs before running other queries.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| player_name | Yes |
Implementation Reference
- src/statcast_mcp/server.py:1335-1366 (handler)The `player_lookup` function takes a player name, performs a fuzzy search using `pybaseball.playerid_lookup`, and returns a formatted markdown table of results including names, MLBAM ID, and other database keys.
return _fmt(data, max_rows=50) # --------------------------------------------------------------------------- # Tools — Date-range stats (Baseball Reference via pybaseball) # --------------------------------------------------------------------------- @mcp.tool() def batting_stats_date_range( start_date: str, end_date: str, player_name: str | None = None, ) -> str: """Batting stats aggregated over a custom date range (Baseball Reference). Use for hot/cold streaks, post-deadline samples, or any window between two dates. Args: start_date: Start date YYYY-MM-DD (2008+). end_date: End date YYYY-MM-DD (inclusive). player_name: Optional. Filter to one player (matches BRef ``Name`` / ``mlbID``). Returns rate stats (AVG, OBP, SLG, OPS) and counting stats for that span. Row limit applies — many players may qualify in long ranges. """ from pybaseball import batting_stats_range as _fn try: data = _fn(start_date, end_date) except Exception as e: return f"Error fetching batting stats for date range: {e}"