MLB SportRadar
Access MLB game data, standings, and player statistics using the SportRadar API.
MLB SportRadar MCP Server
Model Context Protocol (MCP) server for connecting Claude with the SportRadar MLB API. It provides tools for accessing MLB game data, standings, player statistics, and more through the SportRadar API.
Requirements
- Python 3.12 or higher
- Model Context Protocol (MCP) Python SDK
- httpx
- python-dotenv
- SportRadar API key
Setup
1. Get SportRadar API Key
- Sign up at SportRadar Developer Portal
- Get your MLB API key (trial or production)
2. Install uv (recommended)
curl -LsSf https://astral.sh/uv/install.sh | sh
3. Clone this repository
git clone https://github.com/yourusername/mlb-sportradar-mcp.git
cd mlb-sportradar-mcp
4. Create and activate a virtual environment
# Create virtual environment
uv venv
# Activate virtual environment
# On macOS/Linux:
source .venv/bin/activate
# On Windows:
.venv\Scripts\activate
5. Install dependencies
# Option 1: Using uv (recommended)
uv sync
# Option 2: Using pip with requirements.txt
pip install -r requirements.txt
# Option 3: Install as editable package
uv pip install -e .
6. Set up environment variables
Create a .env
file in the project root with your SportRadar API key:
SPORTRADAR_API_KEY=your_api_key_here
Usage
1. Configure Claude Desktop
First, install the MCP CLI globally:
uv tool install "mcp[cli]"
Then add this server to your Claude Desktop configuration file (~/Library/Application Support/Claude/claude_desktop_config.json
on macOS):
{
"mcpServers": {
"MLB SportRadar": {
"command": "/Users/<USERNAME>/.local/share/uv/tools/mcp/bin/mcp",
"args": ["run", "/full/path/to/mlb-sportradar-mcp/src/mlb_sportradar_mcp/server.py"]
}
}
}
Important: Replace /full/path/to/
with the actual absolute path to your mlb-sportradar-mcp
directory.
Restart Claude Desktop after saving the configuration.
2. Use the MCP server with Claude
Once configured, Claude Desktop will have access to these MLB SportRadar tools:
Game Data:
get_daily_schedule
: Get MLB schedule for a specific date or todayget_game_summary
: Get summary information for a specific gameget_game_boxscore
: Get detailed boxscore for a specific gameget_game_play_by_play
: Get detailed play-by-play data for a gameget_game_pitch_metrics
: Get pitch-level metrics and Statcast data
Team & League:
get_standings
: Get MLB standings for a specific year and leagueget_team_profile
: Get detailed team informationget_team_roster
: Get current roster for a specific teamget_team_hierarchy
: Get complete MLB team hierarchy with divisionsget_seasonal_statistics
: Get seasonal statistics for a team
Player Data:
get_player_profile
: Get detailed player informationget_player_seasonal_stats
: Get seasonal statistics for a playerget_seasonal_splits
: Get player splits (home/away, vs lefty/righty, etc.)get_league_leaders
: Get MLB league leaders in various categories
League Information:
get_injuries
: Get current MLB injury reportget_transactions
: Get MLB transactions for a specific dateget_draft_summary
: Get MLB draft summary for a specific year
Example queries to try with Claude:
- "Show me today's MLB schedule"
- "Get the current AL standings"
- "What are the current batting leaders in MLB?"
- "Show me the injury report for MLB"
- "Get play-by-play data for game [game_id]"
- "Show me pitch metrics for the latest game"
- "Get player splits for [player_name]"
- "What transactions happened today in MLB?"
Development and testing
Install development dependencies and run the test suite with:
uv sync --all-extras
pytest -v tests
Running the server locally
To start the server manually (useful when developing or testing), run:
mlb-sportradar-mcp
Alternatively, you can run it directly with:
uv run python src/mlb_sportradar_mcp/server.py
Installing MCP CLI globally
If you want to use mcp run
commands, install the MCP CLI globally:
uv tool install "mcp[cli]"
Then you can run:
mcp run src/mlb_sportradar_mcp/server.py
API Endpoints
This MCP server uses the SportRadar MLB API v8 endpoints:
- Schedule:
/en/games/{year}/{month}/{day}/schedule.json
- Game Summary:
/en/games/{game_id}/summary.json
- Game Boxscore:
/en/games/{game_id}/boxscore.json
- Standings:
/en/seasons/{year}/standings.json
- Player Profile:
/en/players/{player_id}/profile.json
- Team Profile:
/en/teams/{team_id}/profile.json
- League Leaders:
/en/seasons/{year}/leaders.json
- Team Roster:
/en/teams/{team_id}/roster.json
- Injuries:
/en/injuries.json
Rate Limits
Please be aware of SportRadar's API rate limits. The trial API typically has lower limits than production keys. Monitor your usage to avoid hitting rate limits.
License
MIT
Test change
Related Servers
MCP Variance Log
Logs statistical variations and unusual events in conversation structures to a SQLite database.
GreptimeDB
Provides AI assistants with a secure and structured way to explore and analyze data in GreptimeDB.
MCP Memory Toolkit
Provides persistent memory for Claude using ChromaDB for semantic search and storage.
F1Data
Access Formula 1 data, including race results, driver standings, and circuit information.
BigQuery
BigQuery database integration with schema inspection and query capabilities
Tinybird
Interact with Tinybird serverless ClickHouse platform
Mongo-MCP
An MCP server for interacting with a MongoDB database.
MCP Firebird
An MCP server for Firebird SQL databases, enabling LLMs to securely access, analyze, and manipulate database content.
FOCUS DATA MCP Server
Enables AI assistants to query data from DataFocus using natural language.
Crunchbase
Access Crunchbase data for business information and insights. Requires a Crunchbase API key.