← Registry

General Tools

flaim.app

Provides access to fantasy sports league data including user sessions, standings, matchups, and historical information.

1 endpoint11 known toolsFirst detected May 12, 2026Last detected September 14, 2026

ENDPOINT 1

https://api.flaim.app/mcp

No auth detected

MCP server metadata

Name
fantasy-mcp
Version
1.0.0
Capabilities
resources.listChangedtools.listChanged
Server instructions

Flaim reads fantasy league data. refresh_leagues is its only bounded write: it updates Flaim's connected-league records and discovery metadata, never ESPN, Yahoo, or Sleeper state. Flaim cannot change lineups or rosters, add or drop players, submit waiver claims or trades, or modify league settings, even with permission. Answer capability, permission, or generic setup how-to questions such as "Can Flaim change my lineup?" directly and tool-free; do not call get_user_session or another tool. Use Flaim tools only for questions that need the user's connected fantasy league data or an explicit league refresh. Do not call Flaim tools for generic sports news, coding, scraping, weather, travel, betting, or unrelated requests. Tool paths: 1. Capability, permission, or generic setup how-to question: answer tool-free using the boundary above or the available setup guidance. 2. User-specific connection, league, or account status: call get_user_session only. 3. Explicit refresh request or widget refresh: call refresh_leagues, then call get_user_session after success to show the updated leagues. Do not use refresh_leagues for provider changes. 4. Selected-league analysis: call get_user_session only when no usable successful session result is available in this chat. Reuse its league IDs, teams, seasons, and defaults on ordinary follow-ups, including switching to another league already in allLeagues; do not repeat get_user_session merely because a new user message arrived. With session context established, call get_league_info, then the requested league-specific data tool. Skip get_league_info only when answering from session data alone or branching to get_ancient_history. After a later successful refresh, call get_user_session again to reload the league list. Also reload when the user confirms account, connection, league-list, or default changes, or when the needed session context is missing. A new chat needs its own session lookup. Reuse session context, not stale roster, score, or player data; fetch current data when the question needs it. These reuse rules also apply to session prerequisites in other tool descriptions. Scope rules: - For a vague singular prompt, use defaultLeague when present, otherwise the relevant entry in defaultLeagues. If neither applies, ask which league by name without exposing internal IDs. - For an explicit plural or comparative prompt, enumerate every matching league in allLeagues and run the needed league-specific chain once per league before synthesizing. - Use get_draft for completed draft results and draft-pick ownership. Never derive an exact round slot from get_league_info, a roster ID, or snake order alone. selectionInRound is the round slot used in values such as 12.15; draftColumn is the stable board column. A completed selectionTeamId is the team that made the historical pick, not the current owner. Use only ownership.currentOwnerTeamId for current pick ownership. Label provider_order_derived placements as projected. If placement is unavailable or no_provider_order, do not invent an exact round slot. changed_picks_only is not a complete pick inventory. - In get_free_agents, "available" means available in the selected fantasy league. Pass a requested count exactly from 1 through 100; for more than 100, state the limit and ask the user to narrow the request or accept 100. Prefer the normalized fields when present: capabilities and ownershipScope state what the provider reports (rates are platform-wide, never league-scoped), ordering names the sort, and per-entry acquisitionState, waiverClearsAt, id, and team supersede the legacy provider fields, which stay visible. ESPN percentOwned/percentStarted are the percentages of all ESPN leagues where the player is rostered/started, not a share of rostered teams; Yahoo percentOwned is Yahoo-wide. An ESPN-wide started rate is never conditional on the player being rostered. Label every reported percentage as an ESPN-wide roster/start rate or Yahoo-wide market rate. Translate ownership scope silently into that provider-wide wording; never print the ownershipScope key, platform_global enum, or get_free_agents tool name. If a rate is missing, write "[Provider] market ownership rate: not provided"; do not print a missing response field name or null value, call get_players, or offer a lookup. Only ESPN reports acquisition state here (normalized acquisitionState free_agent/waivers/null plus waiverClearsAt); call Yahoo/Sleeper rows "available players," never specifically free agents or waivers. Translate acquisition state into plain language ("a free agent", "on waivers") silently; never print raw codes — neither provider codes such as FREEAGENT or WAIVERS nor canonical values like free_agent verbatim. Use get_roster only when the current request separately asks who owns a player; never offer it after an available-player result. Do not include injuryStatus or any injury detail unless the user asks for it; when asked, verify current web evidence and translate provider codes into plain language. Hard stop: after satisfying a returned-list or field-explanation request, end the answer immediately after the requested facts. Remove every closing question or offer to do more work, including roster checks, lineup-fit checks, comparisons, rankings, recommendations, role or health analysis, trends, or outlooks; never append "if you want", "tell me which player", or a similar invitation unless the user's current request explicitly asks for that additional work. - For a past roster, pass exactly one selector: week for football on every platform and Sleeper basketball, or as_of_date (YYYY-MM-DD) for ESPN/Yahoo daily sports. For a matchup-week roster in a daily sport, ask for a date instead of guessing. Omit both selectors for the current roster. - Handle errors by type. Correct invalid-request parameters before trying again. For a Flaim authorization error, follow the MCP client's connect or reauthorization flow. For a missing or invalid provider connection, provider credentials, or league record, direct the user to https://flaim.app/leagues and do not offer another attempt until the user confirms the problem is corrected. For a network timeout or explicitly temporary provider/Flaim service failure, one retry with the same inputs is reasonable unless retry_after says to wait. If it fails again, stop and suggest trying later; do not loop. season_year is always the start year of the season.

Known tools 11

get_user_session

Use this alone for user-specific connection, league, or account-status questions.

Inferred read-only
refresh_leagues

Refresh connected fantasy leagues by asking Flaim to rediscover leagues through connected ESPN, Yahoo, and Sleeper accounts.

Inferred read-only
get_ancient_history

Use established session context (call get_user_session only if needed), and use this only when the user is clearly asking about a non-current season or an inactive league.

Inferred read-only
get_league_info

With session context established, call this for the selected active league before the requested standings, matchup, roster, free-agent, player, transaction, or draft tool.

Inferred read-only
get_draft

Use this when the user asks about completed draft results, exact draft-board positions, or current draft-pick ownership for a selected league.

Inferred read-only
get_standings

Get season standings and outcome snapshot; includes verified season-outcome fields when available.

Inferred read-only
get_matchups

Get matchups/scoreboard for a specific week or the current week.

Inferred read-only
get_roster

Get roster details for a specific team, current by default and historical on request.

Inferred read-only
get_free_agents

Get players available to acquire in the specified fantasy league, optionally filtered by position.

Inferred read-only
get_players

Search for player identity by name.

Inferred read-only
get_transactions

Get recent league transactions including adds, drops, waivers, and completed trades.

Inferred read-only

CONNECT WITH APPROVAL

Client installation

Review this server and its permissions before adding it. Secret placeholders must be set locally.

Codex

~/.codex/config.toml

[mcp_servers.fantasy-mcp]
url = "https://api.flaim.app/mcp"
enabled = true
Claude Code

.mcp.json

{
  "mcpServers": {
    "fantasy-mcp": {
      "type": "http",
      "url": "https://api.flaim.app/mcp"
    }
  }
}
Claude Desktop

Settings → Connectors → Add custom connector

Name: fantasy-mcp
Remote MCP URL: https://api.flaim.app/mcp

Add this remote URL as a custom connector in Claude Desktop. Availability depends on the user plan and workspace policy.

Cursor

.cursor/mcp.json

{
  "mcpServers": {
    "fantasy-mcp": {
      "url": "https://api.flaim.app/mcp"
    }
  }
}
Visual Studio Code

.vscode/mcp.json

Add to Visual Studio Code
{
  "servers": {
    "fantasy-mcp": {
      "type": "http",
      "url": "https://api.flaim.app/mcp"
    }
  }
}
Generic MCP

Client-specific MCP configuration

{
  "name": "fantasy-mcp",
  "transport": "streamable-http",
  "url": "https://api.flaim.app/mcp"
}
MCP Inspector

Run the official MCP Inspector locally and enter the indexed Streamable HTTP endpoint.

TRUST AND VERIFICATION EVIDENCE

Trust Data Available

BuiltWith Trust API v2 evidence for flaim.app was fetched 2026-08-23T19:45:09.261Z and is being refreshed.

Trust status Trusted

flaim.app is assessed as Trusted: Domain has an established technology history spanning over a year.

Indexed

Evidence is source-attributed and does not guarantee that a third-party server is safe. Risk labels are conservative metadata heuristics.