NBA API: Get player by name
Looks up an NBA player by name, including retired players, and returns the bio and regular-season per-game averages for the reported season and career.
Unofficial. Not affiliated with or endorsed by NBA.
Inputs
Values from the run on Oct 23, 2026, shown under Output.
- Player, required
player NBA player name, such as Stephen Curry.
Stephen Curry
Input as JSON
{ "player": "Stephen Curry"}Output
{ "age": 38, "name": "Stephen Curry", "team": "Golden State Warriors", "draft": "2009 Round 1, Pick 7", "height": "6 ft 2 in", "season": "2026-27", "country": "USA", "position": "Guard", "height_cm": 188, "player_url": "https://www.nba.com/player/201939/stephen-curry" , "date_of_birth": "1988-03-14", "jersey_number": "30", "nba_player_id": 201939, "weight_pounds": 205, "career_averages": { "blocks": 0.3, "points": 24.8, "steals": 1.5, "assists": 6.3, "minutes": 33.9, "rebounds": 4.6, "games_played": 1070, "field_goal_percentage": 47.1, "free_throw_percentage": 91.2, "three_point_percentage": 42.2 }, "season_averages": { "blocks": 0, "points": 23, "steals": 2, "assists": 1, "minutes": 21, "rebounds": 2, "games_played": 1, "field_goal_percentage": 46.7, "free_throw_percentage": 100, "three_point_percentage": 28.6 }, "years_in_league": 17, "headshot_image_url": "https://cdn.nba.com/headshots/nba/latest/1040x760/201939.png" , "college_or_last_club": "Davidson"}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"nba.com/get_player","input":{"player":"Stephen Curry"}}' # Save as fous.py, then run: python3 fous.pyimport json, os, timefrom urllib.error import HTTPErrorfrom urllib.request import Request, urlopenAPI = "https://api.fous.com/v1/runs" KEY = os.environ["FOUS_API_KEY"]HEADERS = { "Authorization": f"Bearer {KEY}", "Content-Type": "application/json" ,}def call(url, body=None): data = json.dumps(body).encode() if body else None request = Request(url, data, HEADERS) try: with urlopen(request, timeout=120) as r: return r.status, json.load(r) except HTTPError as error: message = json.load(error)["error"]["message"] raise RuntimeError(message) from errorstatus, run = call(API, { "method": "nba.com/get_player" , "input": { "player": "Stephen Curry" }})# 202: still going after 30 s. Ask again until it ends.while status == 202: time.sleep(2) status, run = call(f"{API}/{run['id']}")print(json.dumps(run["data"], indent=2))// Save as fous.mjs, then run: node fous.mjsconst api = "https://api.fous.com/v1/runs" ;const headers = { Authorization: `Bearer ${process.env.FOUS_API_KEY}`, "Content-Type": "application/json" ,};let response = await fetch(api, { method: "POST", headers, body: JSON.stringify({ "method": "nba.com/get_player" , "input": { "player": "Stephen Curry" } }), signal: AbortSignal.timeout(120_000),});let run = await response.json();// 202: still going after 30 s. Ask again until it ends.while (response.status === 202) { await new Promise((done) => setTimeout(done, 2_000)); response = await fetch(`${api}/${run.id}`, { headers }); run = await response.json();}if (!response.ok) throw new Error(run.error.message);console.log(run.data);# Connect your agent to Fous once, over MCP (Streamable HTTP):# https://api.fous.com/mcp# Set FOUS_API_KEY first: create a key at https://app.fous.com/keys.# Claude Codeclaude mcp add \ --scope user \ --transport http fous https://api.fous.com/mcp \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Codexcodex mcp add fous \ --url https://api.fous.com/mcp \ --bearer-token-env-var FOUS_API_KEY# Cursor, VS Code, Windsurf, Cline and morenpx -y add-mcp https://api.fous.com/mcp -g -n fous \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Then ask your agent:# "Use Fous to run nba.com/get_player# with {"player":"Stephen Curry"}"Over HTTP, the answer’s data holds the output. A run still going after 30 seconds answers 202 with its id: ask GET /v1/runs/{id} until it ends.
Schema
Input schema
{ "type": "object", "required": [ "player" ], "properties": { "player": { "type": "string", "description": "NBA player name, such as Stephen Curry." } }}Output schema
{ "type": "object", "required": [ "name", "team", "jersey_number", "position", "height", "height_cm", "weight_pounds", "age", "date_of_birth", "country", "college_or_last_club", "draft", "years_in_league", "headshot_image_url", "player_url", "season", "nba_player_id", "season_averages", "career_averages" ], "properties": { "age": { "type": [ "integer", "null" ], "description": "Age in years." }, "name": { "type": [ "string", "null" ], "description": "Player's full name." }, "team": { "type": [ "string", "null" ], "description": "Team shown on the NBA player profile." }, "draft": { "type": [ "string", "null" ], "description": "Draft year, round and overall pick." }, "height": { "type": [ "string", "null" ], "description": "Height in feet and inches." }, "season": { "type": [ "string", "null" ], "description": "Season associated with the season averages, such as 2025-26." }, "country": { "type": [ "string", "null" ], "description": "Country." }, "position": { "type": [ "string", "null" ], "description": "Playing position." }, "height_cm": { "type": [ "number", "null" ], "description": "Height in centimeters." }, "player_url": { "type": [ "string", "null" ], "description": "NBA player page link." }, "date_of_birth": { "type": [ "string", "null" ], "description": "Birth date in YYYY-MM-DD format." }, "jersey_number": { "type": [ "string", "null" ], "description": "Jersey number, preserving leading zeros." }, "nba_player_id": { "type": "integer", "description": "NBA player identifier.", "x-fous-developer": true }, "weight_pounds": { "type": [ "integer", "null" ], "description": "Weight in pounds." }, "career_averages": { "type": [ "object", "null" ], "properties": { "blocks": { "type": [ "number", "null" ], "description": "Blocks per game." }, "points": { "type": [ "number", "null" ], "description": "Points per game." }, "steals": { "type": [ "number", "null" ], "description": "Steals per game." }, "assists": { "type": [ "number", "null" ], "description": "Assists per game." }, "minutes": { "type": [ "number", "null" ], "description": "Minutes per game." }, "rebounds": { "type": [ "number", "null" ], "description": "Rebounds per game." }, "games_played": { "type": [ "integer", "null" ], "description": "Regular-season games played." }, "field_goal_percentage": { "type": [ "number", "null" ], "description": "Field goal percentage, from 0 to 100." }, "free_throw_percentage": { "type": [ "number", "null" ], "description": "Free throw percentage, from 0 to 100." }, "three_point_percentage": { "type": [ "number", "null" ], "description": "Three-point percentage, from 0 to 100." } }, "description": "Career regular-season per-game averages, or null if unavailable.", "additionalProperties": false }, "season_averages": { "type": [ "object", "null" ], "properties": { "blocks": { "type": [ "number", "null" ], "description": "Blocks per game." }, "points": { "type": [ "number", "null" ], "description": "Points per game." }, "steals": { "type": [ "number", "null" ], "description": "Steals per game." }, "assists": { "type": [ "number", "null" ], "description": "Assists per game." }, "minutes": { "type": [ "number", "null" ], "description": "Minutes per game." }, "rebounds": { "type": [ "number", "null" ], "description": "Rebounds per game." }, "games_played": { "type": [ "integer", "null" ], "description": "Regular-season games played." }, "field_goal_percentage": { "type": [ "number", "null" ], "description": "Field goal percentage, from 0 to 100." }, "free_throw_percentage": { "type": [ "number", "null" ], "description": "Free throw percentage, from 0 to 100." }, "three_point_percentage": { "type": [ "number", "null" ], "description": "Three-point percentage, from 0 to 100." } }, "description": "Regular-season per-game averages for the reported season, or null if unavailable.", "additionalProperties": false }, "years_in_league": { "type": [ "integer", "null" ], "description": "NBA seasons of experience." }, "headshot_image_url": { "type": [ "string", "null" ], "description": "NBA headshot image link." }, "college_or_last_club": { "type": [ "string", "null" ], "description": "College or last club." } }, "additionalProperties": false}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
nba.com/get_player- Returns
- name, team, jersey number, position, height, weight, age, draft, college, season and career averages
Use it from your agent
Give your agent this line. It reads SKILL.md, gets a Fous API key and connects the Fous MCP server. Its run then takes the method nba.com/get_player with the inputs above.
Ask your agent
- What are LeBron James' career per-game averages and bio details like height and draft year?
- Look up Kobe Bryant's jersey number, college, and season averages from his playing days
- Can you find the position, weight, and team history for Dirk Nowitzki on nba.com?
- I need Allen Iverson's draft info and career scoring average per game
- Show me the current season stats and age for Jayson Tatum
See more
All NBA methodsReturns the NBA box score for a game between two teams on a date; without a date, their most recent matchup, including Summer League and games in progress.
nba.com/get_box_scoreGets NBA games for a date or up to seven days, using the NBA games calendar in US Eastern time. Each game has its score, status, start time, TV channels and venue.
nba.com/get_scoresReturns NBA regular-season standings for a season, with Eastern and Western Conference teams in rank order. Defaults to the season shown on the NBA standings page.
nba.com/get_standingsLooks up a Yahoo Sports player by name and returns the player's regular-season statistics for a season, alongside career totals. Each stat includes season and career values.
sports.yahoo.com/get_player_statsLooks up an NHL player by name, link or ID and returns the profile with regular-season stats for a season and career totals.
nhl.com/get_player_statsGets a named NFL player's season and career stats, with profile details. Active players are preferred when names match.
nfl.com/get_player_statsLooks up a Premier League player by name and returns the profile and either career totals or the stats for a chosen season. If names clash, a current Premier League player is preferred.
premierleague.com/get_player_statsLooks up an ESPN player by name and returns season and career statistics. Use a league to tell apart players with the same name, and a season year or label to pick a past season.
espn.com/get_player_stats