# `com.deducepuzzles/daily-puzzle` 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/com.deducepuzzles/daily-puzzle
- JSON: https://anlyon.dev/api/v1/servers/com.deducepuzzles/daily-puzzle
- Version: 1.0.0 (active)
- Publisher: com.deducepuzzles (domain proven to the MCP Registry)
- Runs: remote (streamable-http)
- Sign-in to list tools: none
- Metadata from the official MCP Registry, synced 2026-10-30T04:17:36.710Z

Title and description, as the publisher wrote them:

```untrusted-server-text
DeducePuzzles
Daily verified seating and arrangement logic puzzle for IBPS, SBI and SSC reasoning practice.
```

Scanned 2026-10-30T04:17:49.539Z over streamable-http.

**3 tools: 3 change things.**

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

## Exfil surface

No private-data -> untrusted-input -> outbound path in this server alone: no tool is tagged private-data or untrusted-input or outbound.

| Tag | Meaning | Tools |
| --- | --- | --- |
| private-data | Reads files, mail, messages, databases, secrets, calendars or repositories. | none |
| untrusted-input | Brings in text someone else can write: web pages, inbound email, messages, issues and comments. | none |
| outbound | Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL. | none |

## Findings

- **warn** Annotations that disagree with the tool in `get_daily_puzzle` ([annotation-conflict](https://anlyon.dev/methodology#annotation-conflict))

```untrusted-server-text
The server marks "get_daily_puzzle" as not read-only (readOnlyHint: false), and its words say it reads.

annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}; The name "get_daily_puzzle" says "get": a word for reading.
```

- **warn** Annotations that disagree with the tool in `get_hint` ([annotation-conflict](https://anlyon.dev/methodology#annotation-conflict))

```untrusted-server-text
The server marks "get_hint" as not read-only (readOnlyHint: false), and its words say it reads.

annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false}; The name "get_hint" says "get": a word for reading.
```


## Changes things (3)

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

### `get_daily_puzzle`

- The name "get_daily_puzzle" says "get": a word for reading.
- The server marks it as not read-only (readOnlyHint: false).
- Findings: warn annotation-conflict

Description, as the server wrote it:

```untrusted-server-text
Use this when the user wants to play today's DeducePuzzles board or a daily bank-exam arrangement puzzle. Returns a verified single-solution puzzle at medium difficulty from a daily rotation of seating, floor, box, scheduling, and ranking. Patterns follow IBPS, SBI, and RRB PO/Clerk; circular, row, box, and ranking also follow SSC. For a specific supported type, pass kind: if it is not today's type, the tool reports that limitation without starting a round. Do not use for syllogism, blood relations, quant, English, general awareness, general exam advice, product comparisons, billing or account support, or solving a puzzle supplied by the user. Not for planning real seating, seating charts, or schedules for an event, classroom, office, or exam hall. Attempts are counted per conversation, not per person. Omit attemptId to start; pass the returned attemptId and playerToken on later calls. Starting stores an anonymous round; it does not sign the user into the website.
```

### `get_hint`

- The name "get_hint" says "get": a word for reading.
- The server marks it as not read-only (readOnlyHint: false).
- Findings: warn annotation-conflict

Description, as the server wrote it:

```untrusted-server-text
Use this when the user asks for a hint on today's DeducePuzzles board. Names one clue to re-read, by number only. Does not reveal a person, a seat, a floor, or a rank. Do not use for a solution or a walkthrough. Attempts are counted per conversation, not per person.
```

### `submit_attempt`

- The name "submit_attempt" says "submit": a word for a change.

Description, as the server wrote it:

```untrusted-server-text
Use this when the user submits an order for today's DeducePuzzles board (seating, floor, box, scheduling, or order and ranking). Grades that one arrangement: right or wrong, attempts left, and whether the round is finished. A wrong guess does not say which clues it broke. The solution is included only once the round is finished. A percentile is included only when the arrangement is right, this is the player's first completed round today, the solve took at least five seconds, and at least five ranked solves of today's board exist here. A replay, a round that already saw the solution, or a solve under five seconds states no percentile. A placement exists only in this result. Do not use to grade a puzzle this server did not serve. Attempts are counted per conversation, not per person.
```

## Claude Code permissions

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

```json
{
  "permissions": {
    "allow": [],
    "ask": [
      "mcp__daily-puzzle__get_daily_puzzle",
      "mcp__daily-puzzle__submit_attempt",
      "mcp__daily-puzzle__get_hint"
    ],
    "deny": []
  }
}
```
