BetterChess

Chess MCP for Claude: engine analysis, attack maps, game review. One URL, no install.

我該用這個嗎

品質與安全性

A
說明品質
95%
結構描述完整度
78%
命名品質
80%
汙染風險
100%
權限相符程度
100%
協定合規性
100%

根據工具定義與協定合規性的自動化分析。

上下文成本

~944Token(工具定義)
~1.2 KB典型回應大小
中等的注意力影響(128k 上下文的 0.74%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "betterchess": {
      "url": "https://mcp.betterchess.co"
    }
  }
}

遠端端點

https://mcp.betterchess.costreamable-http

它能做什麼

工具清單

工具(4)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢chess_analyse(fen, pgn, moves, multipv, considering, ...)

Returns an engine evaluation of a chess position: the strongest candidate moves with their scores, and the position's checkable facts — side to move, whether that side is in check, undefended pieces and the pieces attacking them, and the material balance. Accepts a FEN, a PGN, or a list of SAN moves from the starting position. Also reports what the OPPONENT would play if it were their turn, which is the difference between a position being quiet and merely looking quiet. Pass `considering` with a move you are thinking of playing and it returns what that move actually walks into — a losing move is usually not in the top candidates, so asking about it directly is the only way to find out.

輸入結構描述

{
  "type": "object",
  "properties": {
    "fen": {
      "type": "string",
      "description": "FEN of the position."
    },
    "pgn": {
      "type": "string",
      "description": "PGN; the position after the final move is used."
    },
    "moves": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "SAN moves from the start, e.g. [\"e4\",\"e5\"]."
    },
    "multipv": {
      "type": "number",
      "description": "How many candidate moves (1-5, default 3)."
    },
    "considering": {
      "type": "string",
      "description": "A move you are thinking of playing, in SAN, e.g. \"Ng5\". Returns the evaluation after it and the line that refutes it."
    },
    "traps": {
      "type": "boolean",
      "description": "Also scan the captures and checks available to the side to move and return the ones that lose, each with its refutation. Slower — several extra searches."
    }
  }
}
🟢chess_attacks(fen, pgn, moves, square)

Returns the exact list of squares attacked by the piece standing on a given square in a chess position, together with that piece's type and colour. Returns an empty list when the square is unoccupied. Accepts a FEN, a PGN, or a list of SAN moves from the starting position.

輸入結構描述

{
  "type": "object",
  "properties": {
    "fen": {
      "type": "string",
      "description": "FEN of the position."
    },
    "pgn": {
      "type": "string",
      "description": "PGN; the position after the final move is used."
    },
    "moves": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "SAN moves from the start, e.g. [\"e4\",\"e5\"]."
    },
    "square": {
      "type": "string",
      "description": "The square, e.g. \"d5\"."
    }
  },
  "required": [
    "square"
  ]
}
🟢chess_rig

Returns the JavaScript source of the in-page coaching rig for a chess.com bot game, to be run in that page by the browser's javascript tool. Once running, the page exposes window.__coachWait(ms) (resolves with events and board status), window.__coachWatch.status() (moves, fen, turn, myTurn, result) and window.__coach (beginDraw, play, dashed, label, step, say) for drawing on the board. Also returns the rig version and the URL of the chess.com bot surface.

輸入結構描述

{
  "type": "object",
  "properties": {}
}
🟢chess_review(pgn, moves, colour, threshold)

Replays a finished game ply by ply with the engine and returns the moves where the evaluation swung by more than a threshold (default 1.5 pawns). Each entry gives the move number, the side that moved, the move played, the engine's preferred move, the size of the swing in pawns, the evaluation before and after, and the FEN of the resulting position. Accepts a PGN or a list of SAN moves, and can be filtered to one colour. Long games are truncated at 60 plies.

輸入結構描述

{
  "type": "object",
  "properties": {
    "pgn": {
      "type": "string",
      "description": "The finished game as PGN."
    },
    "moves": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Or SAN moves from the start."
    },
    "colour": {
      "type": "string",
      "description": "\"white\" or \"black\" — whose mistakes to report. Default both."
    },
    "threshold": {
      "type": "number",
      "description": "Swing in pawns that counts as a turning point. Default 1.5."
    }
  }
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本4 個工具
已驗證未記錄版本4 個工具