Skip to main content
Glama
dingyiyi0226

Yahoo Fantasy Baseball MCP Server

by dingyiyi0226

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
YF_CLIENT_IDNoYour Yahoo OAuth client ID
YF_CLIENT_SECRETNoYour Yahoo OAuth client secret

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
fantasy_statusA

Report whether Yahoo Fantasy is set up and what the next step is. Use this for 'fantasy status'.

fantasy_loginA

Begin or resume setup ('fantasy login' / 'fantasy start'). Shows how to create a Yahoo app if needed, and returns the authorization link once credentials are known. Optionally pass clientId/clientSecret to save them.

fantasy_authorizeA

Complete setup using the verification code Yahoo displayed after the user approved access. Optionally also accepts clientId/clientSecret. On success it lists the user's leagues and sets a default automatically when there is only one.

fantasy_logoutA

Delete the saved Yahoo Client ID, Client Secret, and refresh token, then show the setup instructions again. Use this for 'fantasy logout' / 'fantasy disconnect' to reset and start over.

fantasy_select_teamA

Set the default league (and your team in it) used when later commands omit keys. Use for 'fantasy choose team'.

list_gamesB

Discover the logged-in user's baseball leagues and the team they own in each. Use this to choose a default league or team.

get_gameB

Get a fantasy game's details.

list_leaguesA

List the league key and name for each fantasy league in the logged-in Yahoo account. Call get_league for league details.

get_leagueA

Get a league's settings and current standings, with each team limited to team_key and name. Do not call this just to list teams; list_teams is sufficient for that. Defaults to the configured league when leagueKey is omitted.

get_league_metadataA

Get lightweight league metadata such as the current matchup week and season dates. Does not include teams, settings, or standings. Defaults to the configured league when leagueKey is omitted.

get_league_scoring_categoriesA

Return the stat categories used for scoring in this league. Always call this before giving roster add/drop advice so recommendations reflect what scores. Results are cached because categories rarely change after league creation.

list_teamsA

List the teams in a league with only team_key and name. Use this alone when those fields are enough; do not call get_league. Use get_team for detailed information about one selected team.

get_teamA

Get detailed metadata, season stats, points, and standings for one team. This excludes roster and matchup history.

get_team_statsA

Get a team's aggregated stats for a scoring week or the whole season.

get_rosterA

Get a team's roster for a date. By default, each player row contains player_key, name, editorial_team_abbr, display_position, selected_position, status, and is_starting. Set keyOnly=true to return only the player_key array.

get_roster_statsB

Get a team's roster and Yahoo player stats for a date. Each player includes the detailed profile, injury, eligibility, lineup, and player_stats fields.

get_player_statsA

Get stats for one or more players on a specific date.

rank_playersA

Rank league players, including free agents, by a stat or ranking key. Returns ownership and stats, with up to 25 players per call.

rank_free_agent_battersA

Rank only free-agent batters in a league by recent Yahoo performance. Returns ownership, eligibility, same-day starting status when available, and the actual last-week or last-month stat values used for the ranking.

rank_game_playersA

Rank the current game's player pool by a Yahoo stat or ranking key. Unlike rank_players, this is not league-specific: it has no ownership, waiver, or custom league-scoring context, and returns up to 25 players per call.

list_playersA

List league players with identity, positions, status, and ownership but no stats. Returns up to 25 players per call.

search_playersB

Find players by full or partial name and resolve them to Yahoo player keys. Optionally filter by availability or position.

get_league_scoreboardA

Get every head-to-head pairing in the league for one scoring week. Defaults to the current week.

get_team_matchup_historyA

Get one team's matchup schedule and weekly stats for both teams. Defaults to the current week.

get_transactionsA

Get recent adds, drops, and trades in a league. Pass teamKey to filter them.

analyze_player_statsA

Fetch and aggregate advanced statistics for a single player from multiple authoritative sources: MLB Stats API (standard stats), Baseball Savant (Statcast exit velocity / barrel rate / expected stats), and FanGraphs (WAR, wRC+, K%, BB%, plate discipline). The response includes the league's scoring categories so advice can focus on stats that actually count. Use this before making roster add/drop decisions.

analyze_roster_statsA

Fetch advanced stats (Statcast, expected stats, FanGraphs) for a batch of rostered players. Accepts at most 10 players per call via playerKeys — callers should first use get_roster to retrieve all player keys, split them into batches of up to 10, and call this tool once per batch (calls can run in parallel). The response includes the league's scoring categories so advice targets stats that actually matter in this league (e.g. SB if stolen bases count, HLD if holds count). Within each player, mlbStats.columns names the aligned values in mlbStats.standard and the optional mlbStats.recent14d / mlbStats.recent30d arrays. Combine with get_roster to see who is starting or benched.

list_probable_startersA

List every probable starting pitcher across MLB for a date, with each one's opponent abbreviation, home/away, and game start time (UTC). Sourced from the MLB Stats API (no Yahoo auth needed). MLB only posts probables for roughly today through ~2-3 days out, so 'tomorrow' returns a full board, the day after is usually partial, and dates further out return few or none (not yet announced — not an error). Starters use a compact row table: starters.columns names each value in the matching starters.rows arrays. Team and opponent are represented only by teamAbbr and opponentAbbr. Columns include mlbamId, name, teamAbbr, opponentAbbr, homeAway, gameTimeUtc, gamePk, and doubleHeader. Set fantasyContext=true to add fantasyStatus (yourTeam, otherTeam, freeAgent, waivers, or unknown) and, for otherTeam, ownerTeamName. Enrichment issues about one Yahoo request per starter (~10-26), so leave it off unless you need ownership.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dingyiyi0226/fantasy-baseball-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server