# Chess.com API: Get player stats

> Gets a Chess.com player's public profile, ratings and game records, best puzzle rating and Puzzle Rush best score from a username or member profile link.

Unofficial. Not affiliated with or endorsed by Chess.com.

- Page: https://fous.com/methods/chess.com/get-player-stats
- Method: `chess.com/get_player_stats`, version 1
- Website: chess.com
- Returns: username, display name, title, country, dates, followers, profile and avatar links, rapid/blitz/bullet/daily ratings and records, best puzzle rating, Puzzle Rush best score
- Effect: read (it gets data and changes nothing)
- Sign-in: none needed
- Cost: 1 credit per completed run (1¢ with pay as you go); failed runs are free
- Verified: Nov 2, 2026

## Inputs

| Field | Type | Required | In the run below | Description |
|---|---|---|---|---|
| `username` | string | yes | `"Hikaru"` | Player's Chess.com username or profile link, for example Hikaru or https://www.chess.com/member/Hikaru. |

## Output

From a run on Oct 23, 2026. Its input:

```json
{
  "username": "Hikaru"
}
```

Its output:

```json
{
  "blitz": {
    "wins": 36022,
    "draws": 4376,
    "losses": 5543,
    "best_rating": 3503,
    "current_rating": 3463,
    "best_rating_date": "2026-10-06"
  },
  "daily": {
    "wins": 73,
    "draws": 4,
    "losses": 11,
    "best_rating": 2464,
    "current_rating": 2239,
    "best_rating_date": "2014-04-10"
  },
  "rapid": {
    "wins": 205,
    "draws": 220,
    "losses": 69,
    "best_rating": 2927,
    "current_rating": 2838,
    "best_rating_date": "2022-02-26"
  },
  "title": "GM",
  "bullet": {
    "wins": 17129,
    "draws": 1172,
    "losses": 2514,
    "best_rating": 3570,
    "current_rating": 3420,
    "best_rating_date": "2020-11-11"
  },
  "country": "United States",
  "username": "hikaru",
  "followers": 1418542,
  "is_streamer": true,
  "joined_date": "2014-01-06",
  "display_name": "Hikaru Nakamura",
  "profile_link": "https://www.chess.com/member/Hikaru",
  "last_online_date": "2026-10-22",
  "avatar_image_link": "https://images.chesscomfiles.com/uploads/v1/user/15448422.88c010c1.200x200o.3c5619f5441e.png",
  "best_puzzle_rating": 2730,
  "puzzle_rush_best_score": 123
}
```

## Run it

From code, with a Fous API key in `FOUS_API_KEY`; the answer's `data` holds the output:

```bash
curl https://api.fous.com/v1/runs \
  -H "Authorization: Bearer $FOUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"method":"chess.com/get_player_stats","input":{"username":"Hikaru"}}'
```

From an AI agent connected to the Fous MCP server: its `run` with the same method and input. To connect one, give it `set up https://fous.com/SKILL.md`.

## Ask your agent

- What's the current rapid and blitz rating for the player Hikaru on Chess.com?
- Show me the win-loss-draw record and bullet rating for username MagnusCarlsen.
- How many followers does the Chess.com account https://www.chess.com/member/GothamChess have, and what country is it listed under?
- Find the best puzzle rating and Puzzle Rush high score for the player nihalsarin2004.
- When did the account DanielNaroditsky join, and what is its daily chess rating?

## Input schema

```json
{
  "type": "object",
  "required": [
    "username"
  ],
  "properties": {
    "username": {
      "type": "string",
      "description": "Player's Chess.com username or profile link, for example Hikaru or https://www.chess.com/member/Hikaru."
    }
  }
}
```

## Output schema

```json
{
  "type": "object",
  "required": [
    "username",
    "display_name",
    "title",
    "country",
    "joined_date",
    "last_online_date",
    "followers",
    "is_streamer",
    "profile_link",
    "avatar_image_link",
    "rapid",
    "blitz",
    "bullet",
    "daily",
    "best_puzzle_rating",
    "puzzle_rush_best_score"
  ],
  "properties": {
    "blitz": {
      "type": [
        "object",
        "null"
      ],
      "required": [
        "current_rating",
        "best_rating",
        "best_rating_date",
        "wins",
        "losses",
        "draws"
      ],
      "properties": {
        "wins": {
          "type": [
            "integer",
            "null"
          ]
        },
        "draws": {
          "type": [
            "integer",
            "null"
          ]
        },
        "losses": {
          "type": [
            "integer",
            "null"
          ]
        },
        "best_rating": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Highest published rating."
        },
        "current_rating": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Most recently published rating."
        },
        "best_rating_date": {
          "type": [
            "string",
            "null"
          ],
          "format": "date",
          "description": "Date of highest published rating."
        }
      },
      "description": "Null when this time control has never been played.",
      "additionalProperties": false
    },
    "daily": {
      "type": [
        "object",
        "null"
      ],
      "required": [
        "current_rating",
        "best_rating",
        "best_rating_date",
        "wins",
        "losses",
        "draws"
      ],
      "properties": {
        "wins": {
          "type": [
            "integer",
            "null"
          ]
        },
        "draws": {
          "type": [
            "integer",
            "null"
          ]
        },
        "losses": {
          "type": [
            "integer",
            "null"
          ]
        },
        "best_rating": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Highest published rating."
        },
        "current_rating": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Most recently published rating."
        },
        "best_rating_date": {
          "type": [
            "string",
            "null"
          ],
          "format": "date",
          "description": "Date of highest published rating."
        }
      },
      "description": "Null when this time control has never been played.",
      "additionalProperties": false
    },
    "rapid": {
      "type": [
        "object",
        "null"
      ],
      "required": [
        "current_rating",
        "best_rating",
        "best_rating_date",
        "wins",
        "losses",
        "draws"
      ],
      "properties": {
        "wins": {
          "type": [
            "integer",
            "null"
          ]
        },
        "draws": {
          "type": [
            "integer",
            "null"
          ]
        },
        "losses": {
          "type": [
            "integer",
            "null"
          ]
        },
        "best_rating": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Highest published rating."
        },
        "current_rating": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Most recently published rating."
        },
        "best_rating_date": {
          "type": [
            "string",
            "null"
          ],
          "format": "date",
          "description": "Date of highest published rating."
        }
      },
      "description": "Null when this time control has never been played.",
      "additionalProperties": false
    },
    "title": {
      "type": [
        "string",
        "null"
      ]
    },
    "bullet": {
      "type": [
        "object",
        "null"
      ],
      "required": [
        "current_rating",
        "best_rating",
        "best_rating_date",
        "wins",
        "losses",
        "draws"
      ],
      "properties": {
        "wins": {
          "type": [
            "integer",
            "null"
          ]
        },
        "draws": {
          "type": [
            "integer",
            "null"
          ]
        },
        "losses": {
          "type": [
            "integer",
            "null"
          ]
        },
        "best_rating": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Highest published rating."
        },
        "current_rating": {
          "type": [
            "integer",
            "null"
          ],
          "description": "Most recently published rating."
        },
        "best_rating_date": {
          "type": [
            "string",
            "null"
          ],
          "format": "date",
          "description": "Date of highest published rating."
        }
      },
      "description": "Null when this time control has never been played.",
      "additionalProperties": false
    },
    "country": {
      "type": [
        "string",
        "null"
      ],
      "description": "Country name."
    },
    "username": {
      "type": "string"
    },
    "followers": {
      "type": [
        "integer",
        "null"
      ]
    },
    "is_streamer": {
      "type": [
        "boolean",
        "null"
      ]
    },
    "joined_date": {
      "type": [
        "string",
        "null"
      ],
      "format": "date"
    },
    "display_name": {
      "type": [
        "string",
        "null"
      ]
    },
    "profile_link": {
      "type": "string",
      "format": "uri"
    },
    "last_online_date": {
      "type": [
        "string",
        "null"
      ],
      "format": "date"
    },
    "avatar_image_link": {
      "type": [
        "string",
        "null"
      ]
    },
    "best_puzzle_rating": {
      "type": [
        "integer",
        "null"
      ]
    },
    "puzzle_rush_best_score": {
      "type": [
        "integer",
        "null"
      ]
    }
  },
  "additionalProperties": false
}
```

## See more

- [Chess.com API: List top players](https://fous.com/methods/chess.com/list-top-players.md): Lists up to 50 top Chess.com players for a time control, in rank order, with ratings, game records and profile links. Puzzles rankings use puzzle scores.
- [Chess.com API: List recent games](https://fous.com/methods/chess.com/list-recent-games.md): Lists a Chess.com player's completed public games for a month, newest first, with results, ratings, opening and game links.
- [NHL API: Get player stats](https://fous.com/methods/nhl.com/get-player-stats.md): Looks up an NHL player by name, link or ID and returns the profile with regular-season stats for a season and career totals.
- [Yahoo API: Get player stats](https://fous.com/methods/sports.yahoo.com/get-player-stats.md): Looks 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.
- [Premier League API: Get player stats](https://fous.com/methods/premierleague.com/get-player-stats.md): Looks 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.
- [MLB API: Get player stats](https://fous.com/methods/mlb.com/get-player-stats.md): Gets an MLB player's profile and regular-season hitting and pitching statistics for one season and for his career. Without a season it uses the current season, or the player's latest MLB season if he has no stats this year.
- [X API: Get profile](https://fous.com/methods/x.com/get-profile.md): Gets the public X profile for a username or profile link, including counts, verification, images and account details. Does not include posts or a timeline.
- [ESPN API: Get player stats](https://fous.com/methods/espn.com/get-player-stats.md): Looks 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.
- [All Chess.com methods](https://fous.com/methods/chess.com.md)
