Chessigma

Chess opening guides and names, FEN and PGN checks, the daily chess puzzle and Elo estimates.

사용해야 할까요

품질 및 안전성

A
설명 품질
100%
스키마 완전성
96%
이름 품질
97%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~2,795토큰 (도구 정의)
~2.8 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 2.18%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "chessigma": {
      "url": "https://www.chessigma.com/api/mcp"
    }
  }
}

원격 엔드포인트

https://www.chessigma.com/api/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (7)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢get_opening_guide(opening)

Look up a chess opening by name or slug (for example "London System", "Caro-Kann" or "sicilian-defense") and return Chessigma's guide to it: the main line in SAN, a short summary, up to four key variations with the idea behind each, the strategy for each side, strengths and weaknesses. Full guides exist for 18 popular openings; any of about 3,700 catalogued opening names returns its name, ECO code and moves. When nothing matches, found is false and suggestions lists close names. Links open the opening's trainer and the analysis board on chessigma.com.

입력 스키마

{
  "type": "object",
  "properties": {
    "opening": {
      "type": "string",
      "minLength": 2,
      "maxLength": 80,
      "description": "Opening name or slug, e.g. \"London System\", \"caro-kann\", \"Sicilian Najdorf\"."
    }
  },
  "required": [
    "opening"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "found": {
      "type": "boolean"
    },
    "name": {
      "type": [
        "string",
        "null"
      ]
    },
    "eco": {
      "type": [
        "string",
        "null"
      ]
    },
    "mainLine": {
      "type": [
        "string",
        "null"
      ]
    },
    "summary": {
      "type": [
        "string",
        "null"
      ]
    },
    "variations": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "moves": {
            "type": "string"
          },
          "idea": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "moves",
          "idea"
        ],
        "additionalProperties": false
      }
    },
    "ideas": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "white": {
              "type": "string"
            },
            "black": {
              "type": "string"
            }
          },
          "required": [
            "white",
            "black"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "strengths": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "weaknesses": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "trainerUrl": {
      "type": [
        "string",
        "null"
      ]
    },
    "analysisUrl": {
      "type": [
        "string",
        "null"
      ]
    },
    "suggestions": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "found",
    "name",
    "eco",
    "mainLine",
    "summary",
    "variations",
    "ideas",
    "strengths",
    "weaknesses",
    "trainerUrl",
    "analysisUrl",
    "suggestions"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢identify_opening(moves)

Identify the chess opening of a move sequence, given as SAN movetext ("1. e4 c5 2. Nf3 d6") or a full PGN. Returns the ECO code and name from a catalogue of about 3,700 named lines, how many half-moves (plies) followed known theory from move one, the first move that left it, a link to Chessigma's trainer when the opening has one, and a link that opens the moves on the chessigma.com analysis board.

입력 스키마

{
  "type": "object",
  "properties": {
    "moves": {
      "type": "string",
      "minLength": 1,
      "maxLength": 20000,
      "description": "SAN movetext or a PGN; tags are optional."
    }
  },
  "required": [
    "moves"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "found": {
      "type": "boolean"
    },
    "eco": {
      "type": [
        "string",
        "null"
      ]
    },
    "name": {
      "type": [
        "string",
        "null"
      ]
    },
    "bookPlies": {
      "type": "integer"
    },
    "leftBookAt": {
      "type": [
        "string",
        "null"
      ]
    },
    "trainerUrl": {
      "type": [
        "string",
        "null"
      ]
    },
    "analysisUrl": {
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "found",
    "eco",
    "name",
    "bookPlies",
    "leftBookAt",
    "trainerUrl",
    "analysisUrl"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢analyze_position(fen)

Read a chess position from a FEN and return facts computed by the rules alone: side to move, status (normal, check, checkmate, stalemate or insufficient material), every legal move in SAN, the material count (pawn 1, knight 3, bishop 3, rook 5, queen 9) and the opening name when the position is a catalogued opening. This tool does not evaluate the position and does not choose a best move: the Stockfish engine runs in the user's browser at the returned analysisUrl (full analysis board) and bestMoveUrl (best move finder) on chessigma.com.

입력 스키마

{
  "type": "object",
  "properties": {
    "fen": {
      "type": "string",
      "minLength": 10,
      "maxLength": 100,
      "description": "The position in FEN. The two move counters may be omitted."
    }
  },
  "required": [
    "fen"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "fen": {
      "type": "string"
    },
    "sideToMove": {
      "type": "string",
      "enum": [
        "white",
        "black"
      ]
    },
    "status": {
      "type": "string",
      "enum": [
        "normal",
        "check",
        "checkmate",
        "stalemate",
        "insufficient_material"
      ]
    },
    "legalMoves": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "material": {
      "type": "object",
      "properties": {
        "white": {
          "type": "number"
        },
        "black": {
          "type": "number"
        },
        "balance": {
          "type": "number"
        }
      },
      "required": [
        "white",
        "black",
        "balance"
      ],
      "additionalProperties": false
    },
    "opening": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "eco": {
              "type": "string"
            },
            "name": {
              "type": "string"
            }
          },
          "required": [
            "eco",
            "name"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "analysisUrl": {
      "type": "string"
    },
    "bestMoveUrl": {
      "type": "string"
    }
  },
  "required": [
    "fen",
    "sideToMove",
    "status",
    "legalMoves",
    "material",
    "opening",
    "analysisUrl",
    "bestMoveUrl"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢analyze_game(pgn)

Summarize a chess game given as a PGN or as plain SAN movetext: players, result, number of plies, the opening and how long it followed theory, how the game ended (checkmate, stalemate, draw by rule, or unfinished or resigned) and the final position. Returns a link that opens the whole game on the chessigma.com analysis board, where the Stockfish engine runs in the user's browser, and, when the PGN's Link or Site tag is a Chess.com live game or a Lichess game, a link to that game's move-by-move review. It never evaluates moves itself and stores nothing.

입력 스키마

{
  "type": "object",
  "properties": {
    "pgn": {
      "type": "string",
      "minLength": 1,
      "maxLength": 20000,
      "description": "The game as PGN, or SAN movetext such as \"1. e4 e5 2. Nf3\"."
    }
  },
  "required": [
    "pgn"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "white": {
      "type": [
        "string",
        "null"
      ]
    },
    "black": {
      "type": [
        "string",
        "null"
      ]
    },
    "result": {
      "type": "string"
    },
    "plies": {
      "type": "integer"
    },
    "opening": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "eco": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "bookPlies": {
              "type": "integer"
            }
          },
          "required": [
            "eco",
            "name",
            "bookPlies"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "ending": {
      "type": "string",
      "enum": [
        "checkmate",
        "stalemate",
        "draw_by_rule",
        "unfinished_or_resigned"
      ]
    },
    "finalFen": {
      "type": "string"
    },
    "analysisUrl": {
      "type": [
        "string",
        "null"
      ]
    },
    "reviewUrl": {
      "type": [
        "string",
        "null"
      ]
    },
    "note": {
      "type": "string"
    }
  },
  "required": [
    "white",
    "black",
    "result",
    "plies",
    "opening",
    "ending",
    "finalFen",
    "analysisUrl",
    "reviewUrl",
    "note"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢review_online_game(url)

Turn the link of a public Chess.com live game or a Lichess game into a chessigma.com link that imports the game and opens a move-by-move review, computed by Stockfish in the user's browser. Nothing is fetched when this tool runs: the game is read from Chess.com or Lichess only when the user opens the link. Chess.com daily (correspondence) games are not supported; ask for the PGN instead.

입력 스키마

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "minLength": 10,
      "maxLength": 300,
      "description": "A Chess.com live game link or a Lichess game link."
    }
  },
  "required": [
    "url"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "platform": {
      "type": "string",
      "enum": [
        "chesscom",
        "lichess"
      ]
    },
    "reviewUrl": {
      "type": "string"
    },
    "note": {
      "type": "string"
    }
  },
  "required": [
    "platform",
    "reviewUrl",
    "note"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_daily_puzzle(date)

Get Chessigma's daily chess puzzle: today's by default, or a past day's via date (YYYY-MM-DD, from 2024-01-01 to today in UTC). The position (fen) is given with the solver to move, after the opponent's last move. The solution is in SAN, with the solver's moves at even indexes and the opponent's replies at odd ones. Do not reveal the solution unless the user asks for it. If today's puzzle is not out yet, the latest one is returned: check date. playUrl opens the puzzle on chessigma.com.

입력 스키마

{
  "type": "object",
  "properties": {
    "date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "A day from 2024-01-01 to today (UTC). Omit for today."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "date": {
      "type": "string"
    },
    "puzzleId": {
      "type": "string"
    },
    "fen": {
      "type": "string"
    },
    "sideToMove": {
      "type": "string",
      "enum": [
        "white",
        "black"
      ]
    },
    "opponentLastMove": {
      "type": "string"
    },
    "rating": {
      "type": "number"
    },
    "themes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "solution": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "playUrl": {
      "type": "string"
    }
  },
  "required": [
    "date",
    "puzzleId",
    "fen",
    "sideToMove",
    "opponentLastMove",
    "rating",
    "themes",
    "solution",
    "playUrl"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢calculate_elo(yourRating, opponentRating, result, system, kFactor)

Estimate a player's new Elo rating after a single game with the Elo formula. Pure arithmetic, no chess engine. The system field picks a K-factor default for FIDE, Chess.com or Lichess, but the result is an Elo estimate: Chess.com and Lichess use Glicko ratings, so their real rating changes differ.

입력 스키마

{
  "type": "object",
  "properties": {
    "yourRating": {
      "type": "integer",
      "minimum": 100,
      "maximum": 4000
    },
    "opponentRating": {
      "type": "integer",
      "minimum": 100,
      "maximum": 4000
    },
    "result": {
      "type": "string",
      "enum": [
        "win",
        "draw",
        "loss"
      ]
    },
    "system": {
      "type": "string",
      "enum": [
        "fide",
        "chesscom",
        "lichess"
      ],
      "default": "fide"
    },
    "kFactor": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "required": [
    "yourRating",
    "opponentRating",
    "result"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

출력 스키마

{
  "type": "object",
  "properties": {
    "yourRating": {
      "type": "number"
    },
    "opponentRating": {
      "type": "number"
    },
    "result": {
      "type": "string",
      "enum": [
        "win",
        "draw",
        "loss"
      ]
    },
    "system": {
      "type": "string",
      "enum": [
        "fide",
        "chesscom",
        "lichess"
      ]
    },
    "kFactor": {
      "type": "number"
    },
    "expectedScore": {
      "type": "number"
    },
    "newRating": {
      "type": "number"
    },
    "change": {
      "type": "number"
    },
    "calculatorUrl": {
      "type": "string"
    }
  },
  "required": [
    "yourRating",
    "opponentRating",
    "result",
    "system",
    "kFactor",
    "expectedScore",
    "newRating",
    "change",
    "calculatorUrl"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 7개