{"id":30869874,"url":"https://github.com/jweingardt12/mlb_mcp","last_synced_at":"2026-04-04T13:50:12.810Z","repository":{"id":289699354,"uuid":"972121945","full_name":"jweingardt12/mlb_mcp","owner":"jweingardt12","description":"MCP server to fetch basic (and complex!) baseball-related stats.","archived":false,"fork":false,"pushed_at":"2026-02-18T15:14:16.000Z","size":388,"stargazers_count":1,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-18T18:23:00.882Z","etag":null,"topics":["baseball","mcp"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jweingardt12.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-04-24T15:10:21.000Z","updated_at":"2026-02-18T15:14:32.000Z","dependencies_parsed_at":"2026-02-18T16:04:14.521Z","dependency_job_id":null,"html_url":"https://github.com/jweingardt12/mlb_mcp","commit_stats":null,"previous_names":["jweingardt12/mlb_mcp"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jweingardt12/mlb_mcp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jweingardt12%2Fmlb_mcp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jweingardt12%2Fmlb_mcp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jweingardt12%2Fmlb_mcp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jweingardt12%2Fmlb_mcp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jweingardt12","download_url":"https://codeload.github.com/jweingardt12/mlb_mcp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jweingardt12%2Fmlb_mcp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31402276,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-04T10:20:44.708Z","status":"ssl_error","status_checked_at":"2026-04-04T10:20:06.846Z","response_time":60,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["baseball","mcp"],"created_at":"2025-09-07T22:04:22.224Z","updated_at":"2026-04-04T13:50:12.782Z","avatar_url":"https://github.com/jweingardt12.png","language":"Python","funding_links":[],"categories":["🤖 AI/ML"],"sub_categories":[],"readme":"# MLB Stats MCP Server\n\nA Model Context Protocol (MCP) server that provides comprehensive MLB baseball statistics with video highlights through the [pybaseball](https://github.com/jldbc/pybaseball) library.\n\n## Overview\n\nThis MCP server enables AI assistants to access real-time MLB statistics, historical data, and video highlights. It provides eight powerful tools for querying baseball data, from individual player performance to team statistics and advanced Statcast metrics.\n\n## Features\n\n### 🎯 8 Core Tools\n\n#### 1. `get_player_stats`\nGet detailed Statcast data for any MLB player with optional date filtering.\n- **Parameters:**\n  - `name` (required): Player name (e.g., \"Mike Trout\", \"Ronald Acuña Jr.\")\n  - `start_date` (optional): Start date in YYYY-MM-DD format\n  - `end_date` (optional): End date in YYYY-MM-DD format\n- **Returns:** Player statistics including hits, home runs, exit velocity, launch angle, and barrel rate\n\n#### 2. `player_statcast`\nGet comprehensive Statcast data for a specific player with advanced pitch-type and result filtering.\n- **Parameters:**\n  - `player_name` (required): Player name (e.g., \"Aaron Judge\", \"Mike Trout\")\n  - `start_date` (optional): Start date in YYYY-MM-DD format (defaults to current season)\n  - `end_date` (optional): End date in YYYY-MM-DD format (defaults to current season)\n  - `pitch_type` (optional): Filter by pitch type - 'FF' (4-seam), 'SL' (slider), 'CH' (changeup), 'CU' (curveball), 'SI' (sinker), 'FC' (cutter), 'FS' (splitter)\n  - `result_type` (optional): Filter by result - 'home_run', 'hit', 'single', 'double', 'triple', 'batted_ball'\n  - `min_exit_velocity` (optional): Minimum exit velocity in mph\n  - `min_distance` (optional): Minimum distance in feet\n- **Returns:** Player stats with overall metrics, breakdown by pitch type/result, and top 5 examples with video links\n- **Example Queries:**\n  - \"How many fastballs has Aaron Judge hit for a home run?\"\n  - \"What's Shohei Ohtani's average exit velocity on sliders?\"\n  - \"Show me Mike Trout's stats against breaking balls this season\"\n\n#### 3. `get_team_stats`\nRetrieve comprehensive team batting or pitching statistics for any season.\n- **Parameters:**\n  - `team` (required): Team name or abbreviation (e.g., \"Yankees\", \"NYY\", \"Red Sox\")\n  - `year` (required): Season year (1871-present)\n  - `stat_type` (optional): \"batting\" (default) or \"pitching\"\n- **Returns:** Complete team statistics for the specified season\n\n#### 4. `get_leaderboard`\nAccess statistical leaderboards for any MLB stat category.\n- **Parameters:**\n  - `stat` (required): Statistic abbreviation (e.g., \"HR\", \"AVG\", \"ERA\", \"K\")\n  - `season` (required): Season year\n  - `leaderboard_type` (optional): \"batting\" or \"pitching\"\n  - `limit` (optional): Number of results (default: 10)\n- **Returns:** Top players for the specified statistic\n\n#### 5. `statcast_leaderboard`\nQuery advanced Statcast data with filtering, sorting, and video highlight links.\n- **Parameters:**\n  - `start_date` (required): Start date in YYYY-MM-DD format\n  - `end_date` (required): End date in YYYY-MM-DD format\n  - `result` (optional): Filter by outcome (e.g., \"home_run\", \"single\", \"double\")\n  - `min_ev` (optional): Minimum exit velocity filter\n  - `min_pitch_velo` (optional): Minimum pitch velocity filter\n  - `pitch_type` (optional): Filter by pitch type - 'FF' (4-seam), 'SL' (slider), 'CH' (changeup), 'CU' (curveball), 'SI' (sinker), 'FC' (cutter), 'FS' (splitter)\n  - `player_name` (optional): Filter by batter name (e.g., \"Aaron Judge\", \"Mike Trout\")\n  - `sort_by` (optional): Sort metric:\n    - `\"exit_velocity\"` (default) - Hardest hit balls\n    - `\"distance\"` - Longest hits\n    - `\"launch_angle\"` - Optimal launch angles\n    - `\"pitch_velocity\"` - Fastest pitches\n    - `\"spin_rate\"` - Highest spin rates\n    - `\"xba\"` - Highest expected batting average\n    - `\"xwoba\"` - Highest expected weighted on-base average\n    - `\"barrel\"` - Barrel rate (perfect contact)\n  - `limit` (optional): Number of results (default: 10)\n  - `order` (optional): Sort order - \"desc\" (default) or \"asc\"\n  - `group_by` (optional): Group results by \"team\" for team-wide rankings\n- **Returns:** Detailed play-by-play data with video links (or team aggregations when group_by=\"team\")\n\n#### 6. `team_season_stats`\nGet fast team season averages for Statcast metrics. Optimized for queries like \"which team hits the ball hardest?\".\n- **Parameters:**\n  - `year` (required): Season year (e.g., 2025)\n  - `stat` (optional): Metric to analyze\n    - `\"exit_velocity\"` (default) - Average exit velocity\n    - `\"distance\"` - Average and max distance\n    - `\"launch_angle\"` - Average launch angle\n    - `\"barrel_rate\"` - Percentage of barrels (perfect contact)\n    - `\"hard_hit_rate\"` - Percentage of balls hit 95+ mph\n    - `\"sweet_spot_rate\"` - Percentage hit at optimal launch angles (8-32°)\n  - `min_result_type` (optional): Filter by result type\n    - `\"batted_ball\"` - All balls in play\n    - `\"home_run\"` - Home runs only\n    - `\"hit\"` - All hits (singles, doubles, triples, home runs)\n- **Returns:** Team rankings with averages, counts, and other statistics\n- **Performance:** Uses sampling strategy (every 7th day) and 24-hour caching for instant responses\n\n#### 7. `team_pitching_stats`\nGet fast team pitching averages for Statcast metrics. Optimized for queries like \"which team has the best pitching staff?\".\n- **Parameters:**\n  - `year` (required): Season year (e.g., 2025)\n  - `stat` (optional): Metric to analyze\n    - `\"velocity\"` (default) - Average and max pitch velocity\n    - `\"spin_rate\"` - Average and max spin rate\n    - `\"movement\"` - Pitch break (horizontal, vertical, total)\n    - `\"whiff_rate\"` - Swing-and-miss percentage\n    - `\"chase_rate\"` - Swings at pitches outside the zone\n    - `\"zone_rate\"` - Percentage of pitches in strike zone\n    - `\"ground_ball_rate\"` - Ground balls per balls in play\n    - `\"xera\"` - Expected ERA based on quality of contact\n  - `pitch_type` (optional): Filter to specific pitch type\n    - `\"FF\"` - 4-seam fastball\n    - `\"SL\"` - Slider\n    - `\"CH\"` - Changeup\n    - `\"CU\"` - Curveball\n    - `\"SI\"` - Sinker\n    - `\"FC\"` - Cutter\n    - `\"FS\"` - Splitter\n- **Returns:** Team pitching rankings with averages, counts, and other statistics\n- **Performance:** Uses sampling strategy (every 7th day) and 24-hour caching for instant responses\n\n#### 8. `statcast_count`\nCount Statcast events matching specific criteria. Optimized for multi-year queries like \"how many 475+ ft home runs since 2023?\"\n- **Parameters:**\n  - `start_date` (required): Start date in YYYY-MM-DD format\n  - `end_date` (required): End date in YYYY-MM-DD format\n  - `result_type` (optional): Type to count - 'home_run' (default), 'hit', 'batted_ball', or specific like 'double'\n  - `player_name` (optional): Filter by batter name (e.g., \"Aaron Judge\", \"Mike Trout\")\n  - `pitch_type` (optional): Filter by pitch type - 'FF' (4-seam), 'SL' (slider), 'CH' (changeup), 'CU' (curveball), 'SI' (sinker), 'FC' (cutter), 'FS' (splitter)\n  - `min_distance` (optional): Minimum distance in feet (e.g., 475)\n  - `max_distance` (optional): Maximum distance in feet\n  - `min_exit_velocity` (optional): Minimum exit velocity in mph\n  - `max_exit_velocity` (optional): Maximum exit velocity in mph\n- **Returns:** Total count, yearly breakdown, and top 5 examples with video links\n- **Performance:** \n  - Multi-year queries: Samples 3 days per month (~90x fewer API calls)\n  - 6-12 months: Weekly sampling (~7x fewer API calls)\n  - \u003c6 months: Complete data with chunking\n  - 24-hour caching for all queries\n\n### 🎥 Video Highlights Integration\n\nEvery result from `statcast_leaderboard` includes detailed metrics and video access points:\n\n```json\n{\n  \"rank\": 1,\n  \"player\": \"Ronald Acuña Jr.\",\n  \"date\": \"2024-07-20\",\n  \"exit_velocity\": 113.7,\n  \"launch_angle\": 23.0,\n  \"distance\": 456.0,\n  \"result\": \"home_run\",\n  \"pitch_velocity\": 95.2,\n  \"pitch_type\": \"FF\",\n  \"spin_rate\": 2450,\n  \"xba\": 0.920,\n  \"xwoba\": 1.823,\n  \"barrel\": true,\n  \"description\": \"Ronald Acuña Jr. homers (13) on a fly ball to center field.\",\n  \"video_links\": {\n    \"game_highlights_url\": \"https://www.mlb.com/gameday/745890/video\",\n    \"film_room_search\": \"https://www.mlb.com/video/search?q=Ronald+Acuna+Jr.+2024-07-20\",\n    \"game_pk\": \"745890\",\n    \"api_highlights_endpoint\": \"https://statsapi.mlb.com/api/v1/schedule?gamePk=745890\u0026hydrate=game(content(highlights(highlights)))\"\n  }\n}\n```\n\n### 🏟️ Smart Team Recognition\n\nThe server intelligently handles team names:\n- Full names: \"Orioles\" → \"BAL\", \"Red Sox\" → \"BOS\"\n- Cities: \"Boston\" → \"BOS\", \"New York Yankees\" → \"NYY\"\n- Historical teams: \"Expos\" → \"MON\", \"Indians\" → \"CLE\"\n- All 30 current MLB teams supported with common variations\n\n### 📊 Team-Wide Rankings\n\nNew team aggregation feature for `statcast_leaderboard`:\n- Group results by team to see team-wide performance\n- Calculates averages, maximums, and counts for each metric\n- Perfect for questions like \"Which team hits the hardest home runs?\"\n- Returns comprehensive team statistics including barrel counts and expected metrics\n\n## Installation\n\n### Deploy on Railway (Recommended for Smithery)\n\nDeploy to Railway for a hosted HTTP MCP endpoint that Smithery can connect to:\n\n1. Create a new Railway project and connect your GitHub repository\n2. Railway will auto-detect the `Procfile` and deploy automatically\n3. Your MCP endpoint will be available at `https://\u003cyour-railway-domain\u003e/mcp`\n4. Connect this URL to [Smithery](https://smithery.ai) for distribution\n\n**Manual Start Command (if needed):**\nIf Railway doesn't auto-detect the Procfile, set this Start Command in Railway Settings:\n```\nuv run fastmcp run src/mlb_mcp/server.py:mcp --transport http --host 0.0.0.0 --port $PORT\n```\n\n### Deploy on Smithery Direct\n\n1. Fork this repository\n2. Connect your GitHub account to [Smithery](https://smithery.ai)\n3. Deploy directly from your repository\n\n### Local Development\n\n```bash\n# Clone the repository\ngit clone https://github.com/yourusername/mlb_mcp.git\ncd mlb_mcp\n\n# Install dependencies with uv\nuv sync\n\n# Run the server (stdio mode for local testing)\nuv run python -m mlb_mcp.server\n\n# Or run with HTTP transport for local HTTP testing\nMCP_TRANSPORT=http MCP_PORT=8000 uv run python -m mlb_mcp.server\n```\n\n### Claude Desktop Configuration\n\nAdd to your Claude Desktop configuration (uses stdio transport):\n\n```json\n{\n  \"mcpServers\": {\n    \"mlb-stats\": {\n      \"command\": \"uv\",\n      \"args\": [\"run\", \"python\", \"-m\", \"mlb_mcp.server\"],\n      \"cwd\": \"/path/to/mlb_mcp\"\n    }\n  }\n}\n```\n\n## Usage Examples\n\n### Player-Specific Queries (NEW!)\n\n#### How many fastballs has Aaron Judge hit for a home run?\n```\nQuery: \"How many fastballs has Aaron Judge hit for a home run this season?\"\nTool: player_statcast(\"Aaron Judge\", \"2024-04-01\", \"2024-10-31\", \"FF\", \"home_run\")\nOR\nTool: statcast_count(\"2024-04-01\", \"2024-10-31\", \"home_run\", player_name=\"Aaron Judge\", pitch_type=\"FF\")\n```\n\n#### What's a player's performance on specific pitch types?\n```\nQuery: \"Show me Shohei Ohtani's stats against sliders this season\"\nTool: player_statcast(\"Shohei Ohtani\", \"2024-04-01\", \"2024-10-31\", \"SL\")\n```\n\n#### Player's hardest hit balls on specific pitch types\n```\nQuery: \"Show Aaron Judge's hardest hit balls on fastballs\"\nTool: statcast_leaderboard(\"2024-04-01\", \"2024-10-31\", player_name=\"Aaron Judge\", pitch_type=\"FF\", sort_by=\"exit_velocity\", limit=10)\n```\n\n### Find the Longest Home Runs\n```\nQuery: \"Show me the longest home runs from yesterday\"\nTool: statcast_leaderboard(\"2024-07-20\", \"2024-07-20\", \"home_run\", None, None, \"distance\", 10)\n```\n\n### Hardest Hit Balls on Fast Pitches\n```\nQuery: \"What were the hardest hit balls on 99+ mph pitches last week?\"\nTool: statcast_leaderboard(\"2024-07-14\", \"2024-07-20\", None, 0, 99.0, \"exit_velocity\", 10)\n```\n\n### Fastest Pitches Thrown\n```\nQuery: \"Show me the fastest pitches thrown yesterday\"\nTool: statcast_leaderboard(\"2024-07-20\", \"2024-07-20\", None, None, None, \"pitch_velocity\", 10)\n```\n\n### Highest Spin Rate Pitches\n```\nQuery: \"What pitches had the highest spin rate today?\"\nTool: statcast_leaderboard(\"2024-07-20\", \"2024-07-20\", None, None, None, \"spin_rate\", 10)\n```\n\n### Best Quality Contact (Barrels)\n```\nQuery: \"Show me the best quality contact this week\"\nTool: statcast_leaderboard(\"2024-07-14\", \"2024-07-20\", None, None, None, \"barrel\", 10)\n```\n\n### Player Season Stats\n```\nQuery: \"Get Mike Trout's stats for this season\"\nTool: get_player_stats(\"Mike Trout\", \"2024-04-01\", \"2024-10-01\")\n```\n\n### Team Performance\n```\nQuery: \"How are the Red Sox doing this year?\"\nTool: get_team_stats(\"Red Sox\", 2024, \"batting\")\n```\n\n### League Leaders\n```\nQuery: \"Who's leading the league in home runs?\"\nTool: get_leaderboard(\"HR\", 2024, \"batting\", 10)\n```\n\n### Team-Wide Rankings (statcast_leaderboard)\n```\nQuery: \"Which team has the hardest hit home runs this season?\"\nTool: statcast_leaderboard(\"2024-04-01\", \"2024-10-01\", \"home_run\", None, None, \"exit_velocity\", 10, \"desc\", \"team\")\n```\n\n```\nQuery: \"Show me teams with the longest average home run distance this month\"\nTool: statcast_leaderboard(\"2024-07-01\", \"2024-07-31\", \"home_run\", None, None, \"distance\", 10, \"desc\", \"team\")\n```\n\n```\nQuery: \"Which teams have the highest average pitch velocity?\"\nTool: statcast_leaderboard(\"2024-07-20\", \"2024-07-20\", None, None, None, \"pitch_velocity\", 10, \"desc\", \"team\")\n```\n\n### Team Season Averages (team_season_stats)\n```\nQuery: \"What team averages the hardest hit balls in 2025?\"\nTool: team_season_stats(2025, \"exit_velocity\")\n```\n\n```\nQuery: \"Which team has the highest barrel rate this season?\"\nTool: team_season_stats(2025, \"barrel_rate\")\n```\n\n```\nQuery: \"Show me teams with the highest hard-hit rate on home runs only\"\nTool: team_season_stats(2025, \"hard_hit_rate\", \"home_run\")\n```\n\n```\nQuery: \"What team hits the ball the farthest on average?\"\nTool: team_season_stats(2025, \"distance\")\n```\n\n### Team Pitching Analysis (team_pitching_stats)\n```\nQuery: \"Which team throws the hardest in 2025?\"\nTool: team_pitching_stats(2025, \"velocity\")\n```\n\n```\nQuery: \"What team has the best slider spin rate?\"\nTool: team_pitching_stats(2025, \"spin_rate\", \"SL\")\n```\n\n```\nQuery: \"Which pitching staff gets the most swings and misses?\"\nTool: team_pitching_stats(2025, \"whiff_rate\")\n```\n\n```\nQuery: \"Show me teams with the highest ground ball rate\"\nTool: team_pitching_stats(2025, \"ground_ball_rate\")\n```\n\n```\nQuery: \"Which team has the lowest expected ERA based on contact quality?\"\nTool: team_pitching_stats(2025, \"xera\")\n```\n\n### Counting Queries (statcast_count)\n```\nQuery: \"How many home runs hit over 475 ft have been hit since 2023?\"\nTool: statcast_count(\"2023-01-01\", \"2025-12-31\", \"home_run\", 475)\n```\n\n```\nQuery: \"Count all 110+ mph batted balls this season\"\nTool: statcast_count(\"2025-04-01\", \"2025-10-31\", \"batted_ball\", None, 110)\n```\n\n```\nQuery: \"How many home runs between 400-450 feet were hit last year?\"\nTool: statcast_count(\"2024-04-01\", \"2024-10-31\", \"home_run\", 400, None, 450)\n```\n\n```\nQuery: \"Total hits with exit velocity over 100 mph since 2022\"\nTool: statcast_count(\"2022-01-01\", \"2025-12-31\", \"hit\", None, 100)\n```\n\n## Technical Details\n\n### Architecture\n- **Transport**: stdio (local) or HTTP (Railway/hosted) - auto-detected via `PORT` env var\n- **Framework**: FastMCP for protocol implementation\n- **Data Source**: pybaseball library (MLB official data)\n- **Language**: Python 3.11+\n- **Deployment**: Railway (HTTP) or Smithery (containerized)\n\n### Performance Optimizations\n- **Query Chunking**: Automatically splits large date ranges into 5-day chunks to handle Baseball Savant's 30,000 row limit\n- **Response Caching**: 15-minute cache for repeated queries, 24-hour cache for team season stats\n- **Vectorized Operations**: Uses NumPy for efficient team identification instead of slower pandas apply() operations\n- **Sampling Strategy**: \n  - `team_season_stats` and `team_pitching_stats`: Every 7th day sampling\n  - `statcast_count`: Adaptive sampling (3 days/month for multi-year, weekly for 6-12 months)\n- **Specialized Tools**: Dedicated tools for common aggregate queries that would timeout with full data:\n  - `team_season_stats` for batting metrics\n  - `team_pitching_stats` for pitching metrics\n  - `statcast_count` for counting queries across multiple years\n- **Lazy Loading**: Heavy dependencies (pandas, numpy, pybaseball) loaded only when needed for fast startup\n- **Efficient Filtering**: Applies filters sequentially to minimize data processing overhead\n\n### Key Features\n- **Error Handling**: Comprehensive error messages for common issues\n- **Type Safety**: Proper type conversion for JSON serialization\n- **Video Integration**: Automatic video highlight links for all plays and team top performances\n- **Smart Team Lookup**: Handles full names, abbreviations, cities, and historical teams\n\n### File Structure\n```\nmlb_mcp/\n├── src/\n│   └── mlb_mcp/\n│       ├── __init__.py    # Package exports\n│       └── server.py      # Main MCP server implementation\n├── pyproject.toml         # Project configuration and dependencies\n├── smithery.yaml          # Smithery deployment configuration\n├── Procfile               # Railway start command\n└── README.md              # This file\n```\n\n## Requirements\n\n- Python 3.11 or higher\n- Internet connection for MLB data access\n- Smithery account for deployment (optional)\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## License\n\nThis project uses publicly available MLB data through the pybaseball library. All MLB data is property of MLB Advanced Media.\n\n---\n\n**Built with** [pybaseball](https://github.com/jldbc/pybaseball) and [FastMCP](https://github.com/jlowin/fastmcp)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjweingardt12%2Fmlb_mcp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjweingardt12%2Fmlb_mcp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjweingardt12%2Fmlb_mcp/lists"}