Soduku Solver MCP Server
# sodukusolver MCP server
A MCP server project
## Components
### Resources
The server implements a simple note storage system with:
- Custom note:// URI scheme for accessing individual notes
- Each note resource has a name, description and text/plain mimetype
### Prompts
The server provides a single prompt:
- summarize-notes: Creates summaries of all stored notes
- Optional "style" argument to control detail level (brief/detailed)
- Generates prompt combining all current notes with style preference
### Tools
The server implements one tool:
- add-note: Adds a new note to the server
- Takes "name" and "content" as required string arguments
- Updates server state and notifies clients of resource changes
## Configuration
[TODO: Add configuration details specific to your implementation]
## Quickstart
### Install
#### Claude Desktop
On MacOS: `~/Library/Application\ Support/Claude/claude_desktop_config.json`
On Windows: `%APPDATA%/Claude/claude_desktop_config.json`
<details>
<summary>Development/Unpublished Servers Configuration</summary>
```
"mcpServers": {
"sodukusolver": {
"command": "uv",
"args": [
"--directory",
"/Users/harrisonliang/research/fun/soduku",
"run",
"sodukusolver"
]
}
}
```
</details>
<details>
<summary>Published Servers Configuration</summary>
```
"mcpServers": {
"sodukusolver": {
"command": "uvx",
"args": [
"sodukusolver"
]
}
}
```
</details>
## Development
### Building and Publishing
To prepare the package for distribution:
1. Sync dependencies and update lockfile:
```bash
uv sync
```
2. Build package distributions:
```bash
uv build
```
This will create source and wheel distributions in the `dist/` directory.
3. Publish to PyPI:
```bash
uv publish
```
Note: You'll need to set PyPI credentials via environment variables or command flags:
- Token: `--token` or `UV_PUBLISH_TOKEN`
- Or username/password: `--username`/`UV_PUBLISH_USERNAME` and `--password`/`UV_PUBLISH_PASSWORD`
### Debugging
Since MCP servers run over stdio, debugging can be challenging. For the best debugging
experience, we strongly recommend using the [MCP Inspector](https://github.com/modelcontextprotocol/inspector).
You can launch the MCP Inspector via [`npm`](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) with this command:
```bash
npx @modelcontextprotocol/inspector uv --directory /Users/harrisonliang/research/fun/soduku run sodukusolver
```
Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.TDQS
Scored across 4 tools
There is significant overlap between 'solve-sudoku' and 'solve-sudoku-text' as both solve puzzles, though the input method differs. 'add-note' and 'add-sudoku' are distinct, but the overall set has ambiguity in solving tools that could cause misselection.
Tools follow a consistent verb-noun pattern with hyphens (e.g., add-note, solve-sudoku). All names are clear and readable, with only minor deviation in 'solve-sudoku-text' being slightly longer but still adhering to the pattern.
Four tools are reasonable for a Sudoku solver server, covering core operations like adding puzzles and solving. It's slightly thin but functional, with no obvious bloat or extreme mismatch for the domain.
The server covers adding and solving puzzles, but lacks operations for managing or viewing existing puzzles (e.g., list, update, delete). This creates notable gaps that agents might need to work around, though basic solving workflows are supported.