PlaySudoku
by vincentping · remote · no sign-in to list tools · v1.0.0 · published by GitHub user vincentping
Deterministic Sudoku puzzles, progress checks, logical hints, and step-by-step solutions.
4 tools: 2 change things and 2 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things2Claude Code: ask: see these tools
- Only reads2Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http playsudoku https://mcp.playsudoku.us/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
4 tools
Changes things 2Claude Code: ask
check_progressCheck a user's current progress against the correct solution.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Check a user's current progress against the correct solution. Returns factual information only: whether the puzzle is complete, whether all filled cells are correct, which cells are incorrect (with the entered digit), and how many cells remain empty. Does not give hints or coaching — use explain_next_step for that. Use this when the user asks "am I done?" or "did I make any mistakes?" Every response includes a solve_url where the same puzzle can be continued in the interactive solver.
Annotations the server declares
- title: Check Sudoku Progress
- readOnlyHint: true
solve_sudokuSolve a sudoku puzzle completely with step-by-step logical deduction.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Solve a sudoku puzzle completely with step-by-step logical deduction. Input: 81-character string of digits (0 or . for empty cells). Whitespace is tolerated. Returns: every solving step with technique name + human-readable explanation + action, the final solution string, a technique summary (counts), and tutorial links. Only uses logical techniques — never guesses. If the puzzle cannot be solved logically, the steps will end before completion. Use this when the user wants to understand how to solve a puzzle from scratch. The response includes a solve_url for continuing the same board interactively and tutorial_links for techniques used in the solution.
Annotations the server declares
- title: Solve a Sudoku Puzzle
- readOnlyHint: true
Only reads 2Claude Code: allow
explain_next_stepGet the next logical solving step for a sudoku puzzle, optionally from a partially-filled state.No findings
Why it is in this group
- The name "explain_next_step" says "explain": a word for reading.
Description, as the server wrote it Get the next logical solving step for a sudoku puzzle, optionally from a partially-filled state. TWO-BOARD MODE (puzzle + progress) — use when you know both the original clue grid and the user's current work: puzzle: the original 81-char clue string (the given digits only, 0/. for empty cells). progress: the user's current 81-char board — must keep all original clue digits in place. This mode detects incorrect entries: if any user-filled cell contradicts the solution, the tool returns incorrect_cells instead of a step hint, so the user can correct errors before continuing. Use this when the user is solving a puzzle they received from get_sudoku_puzzle (puzzle is known). SINGLE-BOARD MODE (puzzle only, no progress) — use when the original clue grid is unknown (e.g. photo OCR): Pass the user's current full board as puzzle with no progress argument. The tool treats the board as both the clue grid and the current state, so it will not perform error checking (it cannot distinguish given digits from user entries). It simply returns the next logical step. Use this when you cannot separate the original clues from the user's entries. Returns: { technique, explanation, action, tutorial_links } on success, or { incorrect_cells, message } if errors found. Use this for step-by-step coaching — one hint at a time. Every response includes a solve_url for continuing the same board interactively and, on success, tutorial_links for the named technique.
Annotations the server declares
- title: Explain the Next Sudoku Step
- readOnlyHint: true
get_sudoku_puzzleGet a random sudoku puzzle from the PlaySudoku.us collection.No findings
Why it is in this group
- The name "get_sudoku_puzzle" says "get": a word for reading.
Description, as the server wrote it Get a random sudoku puzzle from the PlaySudoku.us collection. Puzzle is returned as an 81-character string: digits 1–9 for given cells, 0 for empty cells. The response includes the techniques required to solve the puzzle and a solve_url to the interactive solver. Difficulties: easy (30–38 givens), medium (44–50), hard (50–55), expert (56–62), evil (56–62). Optional: pass a technique name (e.g. "X-Wing", "Hidden Pair") to get a puzzle that specifically requires that technique — useful when the user wants to practice a particular solving method. If no puzzle at the requested difficulty uses that technique, the error message lists which difficulties do have it. Use solve_sudoku for a full step-by-step solution, or explain_next_step to get one hint at a time. Every response includes a solve_url where the same puzzle can be continued in the interactive solver.
Annotations the server declares
- title: Get a Sudoku Puzzle
- readOnlyHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http playsudoku https://mcp.playsudoku.us/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__playsudoku__get_sudoku_puzzle",
"mcp__playsudoku__explain_next_step"
],
"ask": [
"mcp__playsudoku__solve_sudoku",
"mcp__playsudoku__check_progress"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as playsudoku. Review it before you use it.
