Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,542Letters: 14Defects: 1,324counted 1 min ago
teppi

Server definition

Hash
sha256:1535edabb7282ce5d2c018788be68f2b03272e3f7261ad18886e0937cd39eb6e
What it is
What a remote MCP server returned when asked what it offers: 17 tools

The blob, as servednamed by its sha256

{ "instructions": "EndzoneAPI -- 17 football data tools. Play-by-play, stats, schedules, injuries, and odds.\n\n## First Steps\n\n1. Call list_teams (1 cr) for the 32 team codes. Codes are nflverse spelling: LA for the Rams, WAS for Washington, LV, LAC, JAX.\n2. Seasons are one year: the year the regular season starts (2025 = the 2025-26 season).\n3. Game ids look like 2025_01_KC_BUF: season, week (two digits), away, home. Get them from get_games or get_schedule.\n4. Player ids are GSIS ids (00-0033873). Get them from search_players. Snap counts use PFR ids (also returned by search_players).\n\n## Tool Selection\n\n### Teams\n- Team codes, colours, logos -> list_teams (1 cr)\n- Standings, records, streaks -> get_standings (2 cr)\n- One team's season totals + weekly lines + EPA -> get_team_stats (5 cr)\n- Two teams' history -> get_head_to_head (10 cr)\n\n### Games\n- What's coming up -> get_schedule (2 cr)\n- Past/future games with filters and closing lines -> get_games (5 cr)\n- Everything about one game (box score, odds, officials, weather) -> get_game_detail (10 cr)\n\n### Players\n- Find a player -> search_players (2 cr)\n- One player's bio + season totals + weekly lines -> get_player_stats (5 cr)\n- Rank players on any stat -> get_player_leaders (5 cr)\n- Injury report -> get_injuries (2 cr)\n- Depth chart -> get_depth_chart (2 cr)\n- Playing time -> get_snap_counts (5 cr)\n\n### Plays\n- Play-by-play with EPA/WPA/success and situation filters -> get_plays (10 cr)\n\n### Odds\n- Lines for one game (consensus closing + per-book opening/closing/latest) -> get_odds (10 cr)\n- Full line history -> get_line_movement (25 cr, most expensive)\n\n## Common Workflows\n\nGame preview: get_schedule -> get_game_detail -> get_injuries (14 cr)\nPlayer deep dive: search_players -> get_player_stats -> get_snap_counts (12 cr)\nLeaderboard: get_player_leaders with stat=passing_epa, position=QB (5 cr)\nSituational analysis: get_plays with season, posteam, third_down=true (10 cr)\nMatchup: get_head_to_head -> get_odds (20 cr)\n\n## Credit Costs\n\n| Credits | Tools |\n|---------|-------|\n| 1 | list_teams |\n| 2 | get_standings, get_schedule, search_players, get_injuries, get_depth_chart |\n| 5 | get_games, get_team_stats, get_player_stats, get_player_leaders, get_snap_counts, get_advanced_stats |\n| 10 | get_plays, get_odds, get_game_detail, get_head_to_head |\n| 25 | get_line_movement |\n\n## Data Coverage\n\n- Games and consensus closing lines: every game since 1999\n- Weekly player and team stats (150 nflverse columns): 1999 onwards\n- Play-by-play with EPA and win probability: 1999 onwards\n- Injuries: 2009 onwards. Depth charts: 2001 onwards. Snap counts: 2012 onwards\n- Per-bookmaker odds snapshots and line movement: consensus closing lines for every game since 1999; per-bookmaker snapshots and line movement from the 2026 season\n- Source: nflverse (CC-BY 4.0) for stats and schedules; The Odds API for bookmaker lines\n\n## Important Notes\n\n- All tools are read-only.\n- Stats columns use nflverse names (passing_yards, receiving_epa, def_sacks, fantasy_points_ppr). get_player_leaders accepts any of them.\n- Standings ranks apply win% then point differential, not the full NFL tiebreaker ladder.\n- Empty results are not charged.", "tools": [ { "description": "Use for tracking and charting metrics the box score does not carry. Next Gen Stats (2016+): time to throw, air yards, completion percentage above expectation, separation, cushion, rush yards over expected. Pro Football Reference advanced (2018+): pressures, hurries, blitzes, drops, bad throws, missed tackles, coverage yards allowed. Pick a source, then filter by season, week, player or team. Costs 5 credits.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "description": "Max rows (default 50)", "maximum": 200, "minimum": 1, "type": "integer" }, "player_id": { "description": "GSIS id for an ngs_* source, PFR id for a pfr_* source; both are on search_players", "type": "string" }, "season": { "description": "Season year. Defaults to current. NGS from 2016, PFR from 2018.", "type": [ "string", "number" ] }, "source": { "description": "Which dataset: ngs_passing, ngs_rushing, ngs_receiving, pfr_passing, pfr_rushing, pfr_receiving, pfr_defense", "enum": [ "ngs_passing", "ngs_rushing", "ngs_receiving", "pfr_passing", "pfr_rushing", "pfr_receiving", "pfr_defense" ], "type": "string" }, "team": { "description": "Team code", "type": "string" }, "week": { "description": "Week. NGS also publishes week 0 as the season aggregate.", "maximum": 22, "minimum": 0, "type": "integer" } }, "required": [ "source" ], "type": "object" }, "name": "get_advanced_stats", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "count": { "type": "number" }, "metric_keys": { "items": { "type": "string" }, "type": "array" }, "note": { "type": "string" }, "player_id_kind": { "type": "string" }, "season": { "type": "number" }, "source": { "type": "string" }, "stats": { "items": { "additionalProperties": {}, "properties": { "metrics": { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, "name": { "type": [ "string", "null" ] }, "player_id": { "type": [ "string", "null" ] }, "season": { "type": [ "number", "null" ] }, "team": { "type": [ "string", "null" ] }, "week": { "type": [ "number", "null" ] } }, "required": [ "metrics" ], "type": "object" }, "type": "array" } }, "required": [ "source", "season", "player_id_kind", "metric_keys", "stats", "count" ], "type": "object" } }, { "description": "Use for a team's depth chart by week: formation, position, depth rank, player. Defaults to the latest week available. Costs 2 credits.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "formation": { "description": "Filter by formation/unit, e.g. Offense, Defense, Special Teams", "type": "string" }, "season": { "description": "Season year. Defaults to current.", "type": [ "string", "number" ] }, "team": { "description": "Team code", "type": "string" }, "week": { "description": "Week. Defaults to latest.", "maximum": 22, "minimum": 1, "type": "integer" } }, "required": [ "team" ], "type": "object" }, "name": "get_depth_chart", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "count": { "type": "number" }, "depth_chart": { "items": { "additionalProperties": {}, "properties": { "depth_rank": { "type": [ "number", "null" ] }, "formation": { "type": [ "string", "null" ] }, "name": { "type": [ "string", "null" ] }, "player_id": { "type": [ "string", "null" ] }, "position": { "type": [ "string", "null" ] } }, "type": "object" }, "type": "array" }, "season": { "type": "number" }, "team": { "type": "string" }, "week": { "type": "number" } }, "required": [ "team", "season", "week", "depth_chart", "count" ], "type": "object" } }, { "description": "Use when you need everything about one game: both teams, full team box-score stats (EPA, success, drives), consensus closing line, per-bookmaker opening/closing/latest odds, weather, surface, and officials. Requires a game id from get_games or get_schedule. Costs 10 credits.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "game_id": { "description": "Game id, e.g. 2025_01_KC_BUF", "type": "string" } }, "required": [ "game_id" ], "type": "object" }, "name": "get_game_detail", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "away_team": { "anyOf": [ { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, { "type": "null" } ] }, "consensus_closing": { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, "game": { "additionalProperties": {}, "properties": { "away_moneyline": { "type": [ "number", "null" ] }, "away_qb_name": { "type": [ "string", "null" ] }, "away_score": { "type": [ "number", "null" ] }, "away_team": { "type": "string" }, "game_id": { "type": "string" }, "game_type": { "type": "string" }, "gameday": { "type": [ "string", "null" ] }, "home_moneyline": { "type": [ "number", "null" ] }, "home_qb_name": { "type": [ "string", "null" ] }, "home_score": { "type": [ "number", "null" ] }, "home_team": { "type": "string" }, "kickoff": { "type": [ "string", "null" ] }, "roof": { "type": [ "string", "null" ] }, "season": { "type": "number" }, "spread_line": { "type": [ "number", "null" ] }, "stadium": { "type": [ "string", "null" ] }, "status": { "type": "string" }, "surface": { "type": [ "string", "null" ] }, "total_line": { "type": [ "number", "null" ] }, "week": { "type": "number" } }, "required": [ "game_id", "season", "week", "game_type", "home_team", "away_team", "home_score", "away_score", "status", "kickoff" ], "type": "object" }, "home_team": { "anyOf": [ { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, { "type": "null" } ] }, "odds": { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, "officials": { "items": { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, "type": "array" }, "team_stats": { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" } }, "required": [ "game", "home_team", "away_team", "consensus_closing", "team_stats", "odds", "officials" ], "type": "object" } }, { "description": "Use when querying past or future games with filters: season, week, team, date range, game type, status. Returns scores, kickoff (UTC), venue, rest days, starting QBs, coaches, referee, and the consensus closing spread, total, and moneylines. For upcoming-only games prefer get_schedule (2 cr). Costs 5 credits.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "date_from": { "description": "Start date YYYY-MM-DD", "type": "string" }, "date_to": { "description": "End date YYYY-MM-DD", "type": "string" }, "game_type": { "description": "REG, WC, DIV, CON, SB, or POST for any playoff game", "enum": [ "REG", "WC", "DIV", "CON", "SB", "POST" ], "type": "string" }, "limit": { "description": "Max results (default 100)", "maximum": 500, "minimum": 1, "type": "integer" }, "season": { "description": "Season year (e.g. 2025)", "type": [ "string", "number" ] }, "status": { "description": "Game status", "enum": [ "FUT", "LIVE", "FINAL" ], "type": "string" }, "team": { "description": "Team code (home or away)", "type": "string" }, "week": { "description": "Week number (1-18 regular season; 19+ postseason)", "maximum": 22, "minimum": 1, "type": "integer" } }, "type": "object" }, "name": "get_games", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "count": { "type": "number" }, "filters": { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, "games": { "items": { "additionalProperties": {}, "properties": { "away_moneyline": { "type": [ "number", "null" ] }, "away_qb_name": { "type": [ "string", "null" ] }, "away_score": { "type": [ "number", "null" ] }, "away_team": { "type": "string" }, "game_id": { "type": "string" }, "game_type": { "type": "string" }, "gameday": { "type": [ "string", "null" ] }, "home_moneyline": { "type": [ "number", "null" ] }, "home_qb_name": { "type": [ "string", "null" ] }, "home_score": { "type": [ "number", "null" ] }, "home_team": { "type": "string" }, "kickoff": { "type": [ "string", "null" ] }, "roof": { "type": [ "string", "null" ] }, "season": { "type": "number" }, "spread_line": { "type": [ "number", "null" ] }, "stadium": { "type": [ "string", "null" ] }, "status": { "type": "string" }, "surface": { "type": [ "string", "null" ] }, "total_line": { "type": [ "number", "null" ] }, "week": { "type": "number" } }, "required": [ "game_id", "season", "week", "game_type", "home_team", "away_team", "home_score", "away_score", "status", "kickoff" ], "type": "object" }, "type": "array" } }, "required": [ "games", "count", "filters" ], "type": "object" } }, { "description": "Use to compare two teams' history: recent meetings with scores, the win/loss record between them, and average margin. Filter by season or get all-time. Costs 10 credits.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "description": "Max games (default 20)", "maximum": 100, "minimum": 1, "type": "integer" }, "season": { "description": "Season year. Omit for all-time.", "type": [ "string", "number" ] }, "team1": { "description": "First team code", "type": "string" }, "team2": { "description": "Second team code", "type": "string" } }, "required": [ "team1", "team2" ], "type": "object" }, "name": "get_head_to_head", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "avg_margin_team1": { "type": [ "number", "null" ] }, "count": { "type": "number" }, "games": { "items": { "additionalProperties": {}, "properties": { "away_moneyline": { "type": [ "number", "null" ] }, "away_qb_name": { "type": [ "string", "null" ] }, "away_score": { "type": [ "number", "null" ] }, "away_team": { "type": "string" }, "game_id": { "type": "string" }, "game_type": { "type": "string" }, "gameday": { "type": [ "string", "null" ] }, "home_moneyline": { "type": [ "number", "null" ] }, "home_qb_name": { "type": [ "string", "null" ] }, "home_score": { "type": [ "number", "null" ] }, "home_team": { "type": "string" }, "kickoff": { "type": [ "string", "null" ] }, "roof": { "type": [ "string", "null" ] }, "season": { "type": "number" }, "spread_line": { "type": [ "number", "null" ] }, "stadium": { "type": [ "string", "null" ] }, "status": { "type": "string" }, "surface": { "type": [ "string", "null" ] }, "total_line": { "type": [ "number", "null" ] }, "week": { "type": "number" } }, "required": [ "game_id", "season", "week", "game_type", "home_team", "away_team", "home_score", "away_score", "status", "kickoff" ], "type": "object" }, "type": "array" }, "record": { "additionalProperties": { "type": "number" }, "propertyNames": { "type": "string" }, "type": "object" }, "team1": { "type": "string" }, "team2": { "type": "string" }, "total_games": { "type": "number" } }, "required": [ "team1", "team2", "record", "total_games", "avg_margin_team1", "games", "count" ], "type": "object" } }, { "description": "Use for the official injury report: game status (Out, Doubtful, Questionable) and practice participation with the injury named, by team and week. Defaults to the latest reported week of the current season. Costs 2 credits.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "season": { "description": "Season year. Defaults to current.", "type": [ "string", "number" ] }, "status": { "description": "Filter by game status: Out, Doubtful, Questionable", "type": "string" }, "team": { "description": "Team code", "type": "string" }, "week": { "description": "Week. Defaults to the latest week with a report.", "maximum": 22, "minimum": 1, "type": "integer" } }, "type": "object" }, "name": "get_injuries", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "count": { "type": "number" }, "injuries": { "items": { "additionalProperties": {}, "properties": { "name": { "type": [ "string", "null" ] }, "player_id": { "type": [ "string", "null" ] }, "position": { "type": [ "string", "null" ] }, "practice_status": { "type": [ "string", "null" ] }, "report_primary_injury": { "type": [ "string", "null" ] }, "report_status": { "type": [ "string", "null" ] }, "team": { "type": [ "string", "null" ] } }, "type": "object" }, "type": "array" }, "season": { "type": "number" }, "week": { "type": "number" } }, "required": [ "season", "week", "injuries", "count" ], "type": "object" } }, { "description": "Use to see how a game's lines moved: the full time series of hourly snapshots grouped by bookmaker. Most expensive tool (25 cr); use get_odds (10 cr) if you only need opening, closing, or current lines.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "bookmaker": { "description": "Bookmaker key filter", "type": "string" }, "game_id": { "description": "Game id", "type": "string" } }, "required": [ "game_id" ], "type": "object" }, "name": "get_line_movement", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "away_team": { "type": "string" }, "game_id": { "type": "string" }, "home_team": { "type": "string" }, "kickoff": { "type": [ "string", "null" ] }, "movement": { "additionalProperties": { "items": { "additionalProperties": {}, "properties": { "bookmaker": { "type": "string" }, "captured_at": { "type": [ "string", "null" ] }, "ml_away": { "type": [ "number", "null" ] }, "ml_home": { "type": [ "number", "null" ] }, "snapshot_type": { "type": "string" }, "spread_away": { "type": [ "number", "null" ] }, "spread_home": { "type": [ "number", "null" ] }, "total": { "type": [ "number", "null" ] } }, "required": [ "bookmaker", "snapshot_type" ], "type": "object" }, "type": "array" }, "propertyNames": { "type": "string" }, "type": "object" }, "snapshots": { "type": "number" } }, "required": [ "game_id", "home_team", "away_team", "kickoff", "movement", "snapshots" ], "type": "object" } }, { "description": "Use for betting lines. Pass game_id for one game (10 credits): the consensus closing spread/total/moneyline (every game since 1999) plus per-bookmaker opening, closing and latest lines (DraftKings, FanDuel, BetMGM, ESPN BET) from September 2026. Or pass season (optionally team) for a season of per-book closing lines in one call, with final scores and the consensus close, at 10 credits per game returned, 100 games a page by default (up to 500); each book's line is an array in the order given by columns. For consensus closing lines only, get_games returns a whole season for 5 credits. Set estimate_only to get the price without being charged.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "bookmaker": { "description": "Bookmaker key (draftkings, fanduel, betmgm, espnbet)", "type": "string" }, "estimate_only": { "description": "Return what this call would cost, without charging or running it.", "type": "boolean" }, "game_id": { "description": "Game id, e.g. 2026_01_KC_BUF. Omit and pass season for a whole season.", "type": "string" }, "limit": { "description": "With season: games per page (default 100, max 500).", "maximum": 500, "minimum": 1, "type": "integer" }, "offset": { "description": "With season: page offset; use next_offset from the previous page.", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "season": { "description": "Season year for a whole season of per-book lines, e.g. 2026. Used when game_id is not set.", "type": [ "string", "number" ] }, "snapshot_type": { "description": "Single game: one snapshot type (default all). Season: opening or closing (default closing).", "enum": [ "opening", "closing", "latest" ], "type": "string" }, "team": { "description": "With season: only this team's games (e.g. KC).", "type": "string" } }, "type": "object" }, "name": "get_odds", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "away_team": { "type": "string" }, "bookmaker_count": { "type": "number" }, "books": { "items": { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, "type": "array" }, "columns": { "items": { "type": "string" }, "type": "array" }, "consensus_closing": { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, "count": { "type": "number" }, "credits": { "type": "number" }, "credits_per_game": { "type": "number" }, "estimate_only": { "type": "boolean" }, "game_id": { "type": "string" }, "games": { "items": { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, "type": "array" }, "home_team": { "type": "string" }, "kickoff": { "type": [ "string", "null" ] }, "next_offset": { "type": [ "number", "null" ] }, "note": { "type": "string" }, "season": { "type": "string" }, "snapshot_type": { "type": "string" }, "tool": { "type": "string" }, "total_games": { "type": "number" } }, "type": "object" } }, { "description": "Use to rank players on any weekly stat over a season: passing_yards, passing_tds, rushing_yards, receiving_yards, receptions, targets, def_sacks, def_interceptions, fantasy_points_ppr, passing_epa, rushing_epa, receiving_epa, and ~130 more. Counting stats are summed, rate stats averaged. Filter by position, team, minimum games. Costs 5 credits.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "description": "Max results (default 20)", "maximum": 100, "minimum": 1, "type": "integer" }, "min_games": { "description": "Minimum games with a stat line (default 1)", "maximum": 9007199254740991, "minimum": 1, "type": "integer" }, "position": { "description": "Position filter, e.g. QB, RB, WR, TE", "type": "string" }, "season": { "description": "Season year. Defaults to current.", "type": [ "string", "number" ] }, "season_type": { "description": "Regular season (default) or postseason", "enum": [ "REG", "POST" ], "type": "string" }, "stat": { "description": "Weekly stat column to rank by (e.g. passing_yards, receiving_epa, def_sacks)", "type": "string" }, "team": { "description": "Team code filter", "type": "string" } }, "required": [ "stat" ], "type": "object" }, "name": "get_player_leaders", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "aggregation": { "type": "string" }, "count": { "type": "number" }, "leaders": { "items": { "additionalProperties": {}, "properties": { "games": { "type": [ "number", "null" ] }, "name": { "type": [ "string", "null" ] }, "player_id": { "type": [ "string", "null" ] }, "position": { "type": [ "string", "null" ] }, "rank": { "type": "number" }, "team": { "type": [ "string", "null" ] }, "value": { "type": [ "number", "null" ] } }, "required": [ "rank" ], "type": "object" }, "type": "array" }, "season": { "type": "number" }, "season_type": { "type": "string" }, "stat": { "type": "string" } }, "required": [ "stat", "aggregation", "season", "season_type", "leaders", "count" ], "type": "object" } }, { "description": "Use for one player: bio, draft, physicals, headshot, id crosswalk (PFR, ESPN), summed season totals across passing, rushing, receiving, defense, kicking, returns, and fantasy points, every weekly stat line for the season, and games played per season. Defaults to the player's latest season. Costs 5 credits.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "player_id": { "description": "GSIS player id from search_players (e.g. 00-0033873)", "type": "string" }, "season": { "description": "Season year. Defaults to the player's latest season.", "type": [ "string", "number" ] }, "season_type": { "description": "Regular season (default) or postseason", "enum": [ "REG", "POST" ], "type": "string" } }, "required": [ "player_id" ], "type": "object" }, "name": "get_player_stats", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "count": { "type": "number" }, "player": { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, "season": { "type": "number" }, "season_totals": { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, "season_type": { "type": "string" }, "seasons": { "items": { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, "type": "array" }, "weeks": { "items": { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, "type": "array" } }, "required": [ "player", "season", "season_type", "season_totals", "weeks", "seasons", "count" ], "type": "object" } }, { "description": "Use for play-by-play with nflfastR metrics: EPA, WPA, win probability, success, CPOE, air yards, formation flags, and the players involved. Filter by game, or by season plus week/team/player, plus play type, down, quarter, win-probability band, red zone, third down. Set include_charting for FTN manual charting from 2022 on -- alignment, pre-snap motion, play action, screens, run-pass options, blitzer counts, drops -- or filter directly on those flags. Returns a per-query EPA and success-rate summary. Paginate with offset. Costs 10 credits.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "defteam": { "description": "Defense team code", "type": "string" }, "down": { "description": "Down", "maximum": 4, "minimum": 1, "type": "integer" }, "game_id": { "description": "Game id, e.g. 2025_01_KC_BUF", "type": "string" }, "include_charting": { "description": "Attach FTN manual charting to each play (2022+): alignment, motion, play action, screens, RPO, blitzers, drops", "type": "boolean" }, "is_drop": { "description": "Charting filter: charted drop (2022+)", "type": "boolean" }, "is_motion": { "description": "Charting filter: pre-snap motion (2022+)", "type": "boolean" }, "is_no_huddle": { "description": "Charting filter: no huddle (2022+)", "type": "boolean" }, "is_play_action": { "description": "Charting filter: play action (2022+)", "type": "boolean" }, "is_qb_out_of_pocket": { "description": "Charting filter: quarterback out of the pocket (2022+)", "type": "boolean" }, "is_rpo": { "description": "Charting filter: run-pass option (2022+)", "type": "boolean" }, "is_screen_pass": { "description": "Charting filter: screen pass (2022+)", "type": "boolean" }, "is_trick_play": { "description": "Charting filter: trick play (2022+)", "type": "boolean" }, "limit": { "description": "Max plays (default 200)", "maximum": 1000, "minimum": 1, "type": "integer" }, "max_wp": { "description": "Maximum pre-play win probability", "maximum": 1, "minimum": 0, "type": "number" }, "min_blitzers": { "description": "Charting filter: at least this many blitzers (2022+). FTN counts rushers beyond the base rush, so this is typically 0-3; 5+ is almost never charted.", "maximum": 11, "minimum": 0, "type": "integer" }, "min_wp": { "description": "Minimum pre-play win probability for the offense", "maximum": 1, "minimum": 0, "type": "number" }, "offset": { "description": "Pagination offset", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "passer_id": { "description": "GSIS id of the passer", "type": "string" }, "play_type": { "description": "Play type", "enum": [ "pass", "run", "punt", "kickoff", "field_goal", "extra_point", "qb_kneel", "qb_spike", "no_play" ], "type": "string" }, "posteam": { "description": "Offense team code", "type": "string" }, "quarter": { "description": "Quarter (5+ = overtime)", "maximum": 6, "minimum": 1, "type": "integer" }, "receiver_id": { "description": "GSIS id of the receiver", "type": "string" }, "red_zone": { "description": "Only plays inside the 20", "type": "boolean" }, "rusher_id": { "description": "GSIS id of the rusher", "type": "string" }, "season": { "description": "Season year (required when game_id is not set)", "type": [ "string", "number" ] }, "third_down": { "description": "Only third downs", "type": "boolean" }, "week": { "description": "Week", "maximum": 22, "minimum": 1, "type": "integer" } }, "type": "object" }, "name": "get_plays", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "charted_plays": { "type": "number" }, "count": { "type": "number" }, "next_offset": { "type": [ "number", "null" ] }, "note": { "type": "string" }, "plays": { "items": { "additionalProperties": {}, "properties": { "charting": { "anyOf": [ { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, { "type": "null" } ] }, "defteam": { "type": [ "string", "null" ] }, "desc": { "type": [ "string", "null" ] }, "down": { "type": [ "number", "null" ] }, "epa": { "type": [ "number", "null" ] }, "game_id": { "type": "string" }, "passer_player_name": { "type": [ "string", "null" ] }, "play_id": { "type": "number" }, "play_type": { "type": [ "string", "null" ] }, "posteam": { "type": [ "string", "null" ] }, "qtr": { "type": [ "number", "null" ] }, "receiver_player_name": { "type": [ "string", "null" ] }, "rusher_player_name": { "type": [ "string", "null" ] }, "season": { "type": [ "number", "null" ] }, "success": { "type": [ "number", "null" ] }, "touchdown": { "type": [ "number", "null" ] }, "week": { "type": [ "number", "null" ] }, "wp": { "type": [ "number", "null" ] }, "wpa": { "type": [ "number", "null" ] }, "yardline_100": { "type": [ "number", "null" ] }, "yards_gained": { "type": [ "number", "null" ] }, "ydstogo": { "type": [ "number", "null" ] } }, "required": [ "game_id", "play_id" ], "type": "object" }, "type": "array" }, "summary": { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" } }, "required": [ "plays", "summary", "count", "next_offset" ], "type": "object" } }, { "description": "Use to see what is coming up: unplayed games in the next N days (default 7), or a specific week of the current season. Includes consensus lines where posted. Costs 2 credits.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "days": { "description": "Days ahead to look when week is not set (default 7)", "maximum": 30, "minimum": 1, "type": "integer" }, "team": { "description": "Team code to filter", "type": "string" }, "week": { "description": "A specific week of the current season (returns all games that week, played or not)", "maximum": 22, "minimum": 1, "type": "integer" } }, "type": "object" }, "name": "get_schedule", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "count": { "type": "number" }, "days": { "type": [ "number", "null" ] }, "season": { "type": "number" }, "upcoming_games": { "items": { "additionalProperties": {}, "properties": { "away_moneyline": { "type": [ "number", "null" ] }, "away_qb_name": { "type": [ "string", "null" ] }, "away_score": { "type": [ "number", "null" ] }, "away_team": { "type": "string" }, "game_id": { "type": "string" }, "game_type": { "type": "string" }, "gameday": { "type": [ "string", "null" ] }, "home_moneyline": { "type": [ "number", "null" ] }, "home_qb_name": { "type": [ "string", "null" ] }, "home_score": { "type": [ "number", "null" ] }, "home_team": { "type": "string" }, "kickoff": { "type": [ "string", "null" ] }, "roof": { "type": [ "string", "null" ] }, "season": { "type": "number" }, "spread_line": { "type": [ "number", "null" ] }, "stadium": { "type": [ "string", "null" ] }, "status": { "type": "string" }, "surface": { "type": [ "string", "null" ] }, "total_line": { "type": [ "number", "null" ] }, "week": { "type": "number" } }, "required": [ "game_id", "season", "week", "game_type", "home_team", "away_team", "home_score", "away_score", "status", "kickoff" ], "type": "object" }, "type": "array" }, "week": { "type": [ "number", "null" ] } }, "required": [ "season", "week", "days", "upcoming_games", "count" ], "type": "object" } }, { "description": "Use for playing time: offensive, defensive, and special-teams snaps and snap shares, for one game, one player (PFR id), or a team's season. Costs 5 credits.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "game_id": { "description": "Game id, e.g. 2025_01_KC_BUF", "type": "string" }, "limit": { "description": "Max rows (default 200)", "maximum": 1000, "minimum": 1, "type": "integer" }, "player_id": { "description": "PFR player id (from search_players pfr_id)", "type": "string" }, "season": { "description": "Season year (with team or player)", "type": [ "string", "number" ] }, "team": { "description": "Team code", "type": "string" }, "week": { "description": "Week filter", "maximum": 22, "minimum": 1, "type": "integer" } }, "type": "object" }, "name": "get_snap_counts", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "count": { "type": "number" }, "filters": { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, "note": { "type": "string" }, "snap_counts": { "items": { "additionalProperties": {}, "properties": { "defense_pct": { "type": [ "number", "null" ] }, "defense_snaps": { "type": [ "number", "null" ] }, "game_id": { "type": [ "string", "null" ] }, "offense_pct": { "type": [ "number", "null" ] }, "offense_snaps": { "type": [ "number", "null" ] }, "pfr_player_id": { "type": [ "string", "null" ] }, "player": { "type": [ "string", "null" ] }, "position": { "type": [ "string", "null" ] }, "season": { "type": [ "number", "null" ] }, "st_pct": { "type": [ "number", "null" ] }, "st_snaps": { "type": [ "number", "null" ] }, "team": { "type": [ "string", "null" ] }, "week": { "type": [ "number", "null" ] } }, "type": "object" }, "type": "array" } }, "required": [ "filters", "snap_counts", "count" ], "type": "object" } }, { "description": "Use for regular-season standings and playoff seeding: record, win%, points for/against, home/away/division/conference records, streak, division rank, and conference seed. Ranks apply the real NFL tiebreaking procedure and report which step decided each one. Computed from final scores. Defaults to the current season. Costs 2 credits.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "conference": { "description": "Filter by conference", "enum": [ "AFC", "NFC" ], "type": "string" }, "division": { "description": "Filter by division, e.g. 'NFC North'", "type": "string" }, "season": { "description": "Season year the regular season starts (e.g. 2025). Defaults to current.", "type": [ "string", "number" ] } }, "type": "object" }, "name": "get_standings", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "count": { "type": "number" }, "note": { "type": "string" }, "season": { "type": "number" }, "standings": { "items": { "additionalProperties": {}, "properties": { "conference": { "type": [ "string", "null" ] }, "conference_rank": { "type": [ "number", "null" ] }, "conference_tiebreaker": { "type": [ "string", "null" ] }, "division": { "type": [ "string", "null" ] }, "division_rank": { "type": [ "number", "null" ] }, "division_tiebreaker": { "type": [ "string", "null" ] }, "losses": { "type": "number" }, "name": { "type": [ "string", "null" ] }, "point_diff": { "type": [ "number", "null" ] }, "points_against": { "type": [ "number", "null" ] }, "points_for": { "type": [ "number", "null" ] }, "streak": { "type": [ "string", "null" ] }, "team": { "type": "string" }, "ties": { "type": "number" }, "win_pct": { "type": [ "number", "null" ] }, "wins": { "type": "number" } }, "required": [ "team", "wins", "losses", "ties" ], "type": "object" }, "type": "array" } }, "required": [ "season", "standings", "count" ], "type": "object" } }, { "description": "Use for one team's season: totals (passing, rushing, receiving, defense, kicking, penalties), EPA per play, yards per attempt/carry, the standings row, and every weekly stat line. Costs 5 credits.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "season": { "description": "Season year (e.g. 2025). Defaults to current.", "type": [ "string", "number" ] }, "season_type": { "description": "Regular season (default) or postseason", "enum": [ "REG", "POST" ], "type": "string" }, "team": { "description": "Team code (e.g. KC, BUF, PHI)", "type": "string" } }, "required": [ "team" ], "type": "object" }, "name": "get_team_stats", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "count": { "type": "number" }, "record": { "anyOf": [ { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, { "type": "null" } ] }, "season": { "type": "number" }, "season_type": { "type": "string" }, "team": { "anyOf": [ { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, { "type": "null" } ] }, "totals": { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, "weeks": { "items": { "additionalProperties": {}, "propertyNames": { "type": "string" }, "type": "object" }, "type": "array" } }, "required": [ "team", "season", "season_type", "record", "totals", "weeks", "count" ], "type": "object" } }, { "description": "Use when you need team codes, or all 32 current teams with conference, division, colours, and logo URLs. Team codes are nflverse spelling (LA for the Rams, WAS for Washington). Cheapest tool at 1 credit.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "conference": { "description": "Filter by conference", "enum": [ "AFC", "NFC" ], "type": "string" }, "division": { "description": "Filter by division, e.g. 'AFC East' or 'NFC West'", "type": "string" } }, "type": "object" }, "name": "list_teams", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "count": { "type": "number" }, "teams": { "items": { "additionalProperties": {}, "properties": { "abbrev": { "type": "string" }, "conference": { "type": [ "string", "null" ] }, "division": { "type": [ "string", "null" ] }, "logo": { "type": [ "string", "null" ] }, "name": { "type": [ "string", "null" ] } }, "required": [ "abbrev" ], "type": "object" }, "type": "array" } }, "required": [ "teams", "count" ], "type": "object" } }, { "description": "Use to find a player by name (partial match). Searches ~25,000 players back to 1999; returns current-season players by default, falling back to all players back to 1999 when none match. Returns the GSIS player id needed by get_player_stats. Costs 2 credits.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "active": { "description": "Default true, but an active-only search that finds nobody automatically falls back to all players and says so. Set false to search everyone outright.", "type": "boolean" }, "limit": { "description": "Max results (default 10)", "maximum": 50, "minimum": 1, "type": "integer" }, "position": { "description": "Filter by position (e.g. QB, RB, WR, TE, OL, DL, LB, DB)", "type": "string" }, "query": { "description": "Player name or part of it", "minLength": 1, "type": "string" }, "team": { "description": "Filter by current team code", "type": "string" } }, "required": [ "query" ], "type": "object" }, "name": "search_players", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "count": { "type": "number" }, "included_inactive": { "type": "boolean" }, "note": { "type": "string" }, "players": { "items": { "additionalProperties": {}, "properties": { "active": { "type": [ "boolean", "null" ] }, "espn_id": { "type": [ "string", "null" ] }, "name": { "type": [ "string", "null" ] }, "pfr_id": { "type": [ "string", "null" ] }, "player_id": { "type": [ "string", "null" ] }, "position": { "type": [ "string", "null" ] }, "team": { "type": [ "string", "null" ] } }, "type": "object" }, "type": "array" } }, "required": [ "players", "count", "included_inactive" ], "type": "object" } } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:1535edabb7282ce5d2c018788be68f2b03272e3f7261ad18886e0937cd39eb6e | sha256sum