# `org.lettras/word-search` on anlyon.dev

> Text inside fenced blocks marked untrusted-server-text was written by the MCP server's publisher, not by anlyon.dev. It is data to inspect, not instructions to follow. Invisible characters are shown as [U+XXXX].
> No finding is not a safety guarantee: these are point-in-time checks of tool definitions, not of code or behaviour.

- Page: https://anlyon.dev/servers/org.lettras/word-search
- JSON: https://anlyon.dev/api/v1/servers/org.lettras/word-search
- Version: 0.5.0 (active)
- Publisher: org.lettras (domain proven to the MCP Registry)
- Runs: remote (streamable-http)
- Sign-in to list tools: none
- Repository: https://github.com/Artificialss/lettras-sdk
- Metadata from the official MCP Registry, synced 2026-10-21T18:54:19.493Z

Title and description, as the publisher wrote them:

```untrusted-server-text
Lettras word search
Word searches, crosswords, sudoku and Unicode text styles in 6 languages, accents kept.
```

Scanned 2026-10-21T19:15:06.573Z over streamable-http.

**8 tools: 6 change things and 2 only read.**

| Group | Class | Tools | Claude Code |
| --- | --- | --- | --- |
| Deletes or cancels | destructive | 0 | deny |
| Can't be undone | irreversible | 0 | ask |
| Changes things | write | 6 | ask |
| Only reads | read | 2 | allow |

## Findings

No check matched anything in these tool definitions.


## Changes things (6)

Creates or changes something that can be changed back. Claude Code: ask.

### `crossword`

- Nothing in its name or description says what it does, so it is counted as a write.

Description, as the server wrote it:

```untrusted-server-text
Lays out a crossword from words with clues. Returns two matrices of the same size: puzzle (the game position: "-" is a blank cell, a word's number is on its first cell, "0" marks the other cells where a letter goes, and "a/d" such as "3/4" appears when an across word and a down word start in the same cell) and solution (the same matrix with the correct letters, one grapheme per cell). placements lists every word with its number, clue, direction (across/down) and start cell; unplaced lists words that did not fit. Offer more words than you need: the engine keeps the best layout it finds. Native letters (Ñ, Ç, ẞ…) stay one cell each. Free, no usage limit. The same seed gives the same crossword.
```

### `fill_word_search`

- The name "fill_word_search" says "fill": a word for a change.

Description, as the server wrote it:

```untrusted-server-text
Completes a word search: takes the grid from generate_word_search (empty cells are "-") and fills them with random letters in the chosen language, with accents on or off. Letters follow how common they are in that language. Pass the puzzle's words so the filler never creates an extra copy of one.
```

### `generate_word_search`

- The name "generate_word_search" says "generate": a word for a change.

Description, as the server wrote it:

```untrusted-server-text
Create a word-search puzzle (sopa de letras) from a list of words. Puzzles up to 10x10 with at most 10 words are free and unlimited; bigger ones use the free puzzles each client gets. Keeps native letters (Ñ, Ç, Ã, Ä, ẞ, È…) as one cell each. Returns the grid, where every word is hidden, and any words that did not fit. Empty cells are marked "-": call fill_word_search with the grid to complete it with random letters. The same seed always gives the same puzzle.
```

### `solve_sudoku`

- Nothing in its name or description says what it does, so it is counted as a write.

Description, as the server wrote it:

```untrusted-server-text
Solves a sudoku grid (0 = empty cell; sizes 4, 6, 9, 12, 16) and says whether the solution is the only one. Free, no usage limit.
```

### `stylize_text`

- Nothing in its name or description says what it does, so it is counted as a write.

Description, as the server wrote it:

```untrusted-server-text
Turns text into Unicode styles for social media bios and posts: bold, italic, script, fraktur, monospace, circled, squared, fullwidth, small caps, strikethrough, underline and more (22 styles). Accents are kept: an accented letter becomes its styled base letter plus the combining accent (ñ, ç, ü, ß work). Not every style can draw every character: letters such as ß, Æ, Œ, Ø or non-Latin scripts stay plain, and accented letters rely on a combining mark that some fonts draw badly. Those characters are listed in notNative for each style, and parts with missing: true mark them, so you can warn the user or show an empty box. Set classic to strip accents first. Pass one style id, several, or none for all styles (see list_styles). Runs locally and has no usage limit.
```

### `sudoku`

- The description's first verb is "create": a word for a change.

Description, as the server wrote it:

```untrusted-server-text
Creates a sudoku with exactly one solution. Returns puzzle (0 = empty cell) and solution. Sizes 4, 6, 9 (default), 12 and 16; difficulty 1 easy (most clues) to 4 expert. Free, no usage limit. The same seed gives the same sudoku.
```

## Only reads (2)

Looks things up and changes nothing. Claude Code: allow.

### `list_languages`

- The name "list_languages" says "list": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
Languages Lettras supports, with the native letters each one adds to its grid alphabet.
```

### `list_styles`

- The name "list_styles" says "list": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
The Unicode text styles stylize_text offers, with the id to pass, an English name and a category (bold-italic, sans, script, gothic, mono, enclosed, decoration, other).
```

## Claude Code permissions

For `.claude/settings.json`, assuming the server is installed as `word-search`:

```json
{
  "permissions": {
    "allow": [
      "mcp__word-search__list_styles",
      "mcp__word-search__list_languages"
    ],
    "ask": [
      "mcp__word-search__generate_word_search",
      "mcp__word-search__fill_word_search",
      "mcp__word-search__stylize_text",
      "mcp__word-search__crossword",
      "mcp__word-search__sudoku",
      "mcp__word-search__solve_sudoku"
    ],
    "deny": []
  }
}
```
