# MLB Stats Server MCP Server

> Provide structured access to Major League Baseball statistics through an MCP server. Query and retrieve detailed baseball data including statcast, fangraphs, an

- Price: Free to connect · provider's own fees apply
- URL: https://daas.listeningmind.ai/en/catalog/mcps/x-mcp-etweisberg-mlb-mcp
- Source: Smithery https://smithery.ai/server/etweisberg/mlb-mcp
- Rank this week: #56 (score 55)

## Install

```
npx -y @smithery/cli install etweisberg/mlb-mcp --client claude
```
- Remote: https://mlb-mcp--etweisberg.run.tools

## Tools (46)

- `get_stats`: 
- `get_schedule`: Get list of games for a given date/range and/or team/opponent.
- `get_player_stats`: Returns a list of current season or career stat data for a given player.
- `get_standings`: Returns a dict of standings data for a given league/division and season.
- `get_team_leaders`: Returns a python list of stat leader data for a given team
- `lookup_player`: Get data about players based on first, last, or full name.
- `get_boxscore`: Get a formatted boxscore for a given game.
- `get_team_roster`: Get the roster for a given team.
- `get_game_pace`: Returns data about pace of game for a given season (back to 1999).
- `get_meta`: Get available values from StatsAPI for use in other queries, or look up descriptions for values found in API results.
- `get_available_endpoints`: Get MLB StatsAPI endpoints directly
- `get_notes`: Get additional notes on an endpoint
- `get_game_scoring_play_data`: Returns a dictionary of scoring plays for a given game containing 3 keys: home - home team data away - away team data plays - sorted list of scoring play data
- `get_last_game`: Get the gamePk (gameid) for the given team's most recent completed game.
- `get_league_leader_data`: Returns a list of stat leaders overall or for a given league (103=AL, 104=NL).
- `get_linescore`: Get formatted linescore data for a specific MLB game.
- `get_next_game`: Get the game ID for a team's next scheduled game.
- `get_game_highlight_data`: Returns a list of highlight data for a given game.
- `get_statcast_data`: Pulls statcast play-level data from Baseball Savant for a given date range.
- `get_statcast_batter_data`: Pulls statcast pitch-level data from Baseball Savant for a given batter. ARGUMENTS startdt : YYYY-MM-DD : the first date for which you want a player's statcast data enddt : YYYY-MM…
- `get_statcast_pitcher_data`: Pulls statcast pitch-level data from Baseball Savant for a given pitcher. ARGUMENTS startdt : YYYY-MM-DD : the first date for which you want a player's statcast data enddt : YYYY-M…
- `get_statcast_batter_exitvelo_barrels`: Retrieves batted ball data for all batters in a given year. ARGUMENTS year: The year for which you wish to retrieve batted ball data. Format: YYYY.
- `get_statcast_pitcher_exitvelo_barrels`: Retrieves batted ball against data for all qualified pitchers in a given year. ARGUMENTS year: The year for which you wish to retrieve batted ball against data. Format: YYYY.
- `get_statcast_batter_expected_stats`: Retrieves expected stats based on quality of batted ball contact in a given year. ARGUMENTS year: The year for which you wish to retrieve expected stats data. Format: YYYY.
- `get_statcast_pitcher_expected_stats`: Retrieves expected stats based on quality of batted ball contact against in a given year. ARGUMENTS year: The year for which you wish to retrieve expected stats data.
- `get_statcast_batter_percentile_ranks`: Retrieves percentile ranks for batters in a given year. ARGUMENTS year: The year for which you wish to retrieve percentile data. Format: YYYY.
- `get_statcast_pitcher_percentile_ranks`: Retrieves percentile ranks for each player in a given year, including batters with 2.1 PA per team game and 1.25 for pitchers.
- `get_statcast_batter_pitch_arsenal`: Retrieves outcome data for batters split by the pitch type in a given year. ARGUMENTS year: The year for which you wish to retrieve pitch arsenal data. Format: YYYY.
- `get_statcast_pitcher_pitch_arsenal`: Retrieves high level stats on each pitcher's arsenal in a given year. ARGUMENTS year: The year for which you wish to retrieve expected stats data. Format: YYYY.
- `get_statcast_single_game`: Pulls statcast play-level data from Baseball Savant for a single game, identified by its MLB game ID (gamepk in statcast data) INPUTS: gamepk : 6-digit integer MLB game ID to retri…
- `create_strike_zone_plot`: Produces a pitches overlaid on a strike zone using StatCast data Args: data: (pandas.DataFrame) StatCast pandas.DataFrame of StatCast pitcher data title: (str), default = '' Option…
- `create_spraychart_plot`: Produces a spraychart using statcast data overlayed on specified stadium Args: data: (pandas.DataFrame) StatCast pandas.DataFrame of StatCast batter data teamstadium: (str) Team wh…
- `create_bb_profile_plot`: Plots a given StatCast parameter split by bbtype Args: df: (pandas.DataFrame) pandas.DataFrame of StatCast batter data (retrieved through statcast, statcastbatter, etc) parameter:…
- `create_teams_plot`: Plots a scatter plot with each MLB team Args: data: (pandas.DataFrame) pandas.DataFrame of Fangraphs team data (retrieved through teambatting or teampitching) xaxis: (str) Stat nam…
- `get_pitching_stats_bref`: Get all pitching stats for a set season. If no argument is supplied, gives stats for current season to date.
- `get_pitching_stats_range`: Get all pitching stats for a set time range. This can be the past week, the month of August, anything. Just supply the start and end date in YYYY-MM-DD format.
- `get_pitching_stats`: Get season-level pitching data from FanGraphs. Args: startseason: First season to retrieve data from endseason: Final season to retrieve data from.
- `get_playerid_lookup`: Lookup playerIDs (MLB AM, bbref, retrosheet, FG) for a given player Args: last (str, required): Player's last name. first (str, optional): Player's first name. Defaults to None.
- `reverse_lookup_player`: Retrieve a table of player information given a list of player ids :param playerids: list of player ids :type playerids: list :param keytype: name of the key type being looked up (o…
- `get_schedule_and_record`: Retrieve a team's game-level results for a given season, including win/loss/tie result, score, attendance, and winning/losing/saving pitcher.

## FAQ

### What is the MLB Stats Server MCP Server?

Provide structured access to Major League Baseball statistics through an MCP server. Query and retrieve detailed baseball data including statcast, fangraphs, an. It is listed on Smithery and ranks #56 (score 55) in ListeningMind.AI's weekly picks.

### How do I install the MLB Stats Server MCP Server?

Run npx -y @smithery/cli install etweisberg/mlb-mcp --client claude in a terminal to add it to Claude Desktop. For Cursor, use --client cursor.

### Do I need an API key?

The provider lists no required settings.

### Which tools does it provide?

46 tools: get_stats, get_schedule, get_player_stats, get_standings, get_team_leaders, lookup_player, get_boxscore, get_team_roster, get_game_pace, get_meta, get_available_endpoints, get_notes.

### How much does it cost?

Free to connect · provider's own fees apply. The provider may charge for use on its own terms.

### Can I trust it?

Checks passed: Live endpoint, Clear description. Skim a server or repository you have not used before connecting it.

