pitching_stats_date_range
Retrieve pitching statistics like ERA, WHIP, and strikeouts for specific date ranges in baseball, with optional filtering by pitcher name.
Instructions
Pitching stats aggregated over a custom date range (Baseball Reference).
Args: start_date: Start date YYYY-MM-DD (2008+). end_date: End date YYYY-MM-DD (inclusive). player_name: Optional. Filter to one pitcher.
Returns ERA, WHIP, K/9, IP, W-L, etc. for that span.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| start_date | Yes | ||
| end_date | Yes | ||
| player_name | No |
Implementation Reference
- src/statcast_mcp/server.py:1380-1410 (handler)The pitching_stats_date_range tool definition and implementation.
def pitching_stats_date_range( start_date: str, end_date: str, player_name: str | None = None, ) -> str: """Pitching stats aggregated over a custom date range (Baseball Reference). Args: start_date: Start date YYYY-MM-DD (2008+). end_date: End date YYYY-MM-DD (inclusive). player_name: Optional. Filter to one pitcher. Returns ERA, WHIP, K/9, IP, W-L, etc. for that span. """ from pybaseball import pitching_stats_range as _fn try: data = _fn(start_date, end_date) except Exception as e: return f"Error fetching pitching stats for date range: {e}" if player_name: try: data = _filter_player_rows(data, player_name) except ValueError as e: return str(e) if data.empty: return f"No pitching stats for {player_name} in {start_date}–{end_date}." return _fmt(data, max_rows=50)