# `com.wiabraille/wiabraille` 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.wiabraille/wiabraille
- JSON: https://anlyon.dev/api/v1/servers/com.wiabraille/wiabraille
- Version: 1.0.0 (active)
- Publisher: com.wiabraille (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-21T18:11:07.184Z

Title and description, as the publisher wrote them:

```untrusted-server-text
WIA Braille + WIA Talk
Text to WIA Braille (pronunciation-based, not a national code), BRF output and checks, Nemeth math.
```

Scanned 2026-10-21T18:57:56.257Z over streamable-http.

**9 tools: 5 change things and 4 only read.**

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

## Findings

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

```untrusted-server-text
The server marks "braille_convert" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "braille_convert" says "convert": a word for a change.
```

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

```untrusted-server-text
The server marks "braille_to_brf" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "convert": a word for a change.
```

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

```untrusted-server-text
The server marks "braille_verify_brf" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "run": a word for a change.
```

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

```untrusted-server-text
The server marks "braille_math_nemeth" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "convert": a word for a change.
```

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

```untrusted-server-text
The server marks "talk_codes_to_text" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "convert": a word for a change.
```


## Changes things (5)

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

### `braille_convert`

- The name "braille_convert" says "convert": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
- Findings: warn annotation-conflict

Description, as the server wrote it:

```untrusted-server-text
Converts text to WIA Braille, a pronunciation-based common braille (NOT an official national braille code). Returns IPA and braille cells (6-dot paper form or 8-dot canonical form), plus quality/confidence. Low-quality results are flagged, not hidden.
한국어: 텍스트를 발음 기반 WIA 점자로 변환합니다(국가 공식 점자 아님).
```

### `braille_math_nemeth`

- The description's first verb is "convert": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
- Findings: warn annotation-conflict

Description, as the server wrote it:

```untrusted-server-text
Converts a linear math expression (e.g. x^2+1=5) to Nemeth-code braille cells. Note the surrounding engine is pronunciation-based, NOT an official national braille code. Best for linear expressions; complex 2D layouts need reviewer post-processing.
한국어: 한 줄 수식을 네메스 점자로 변환합니다.
```

### `braille_to_brf`

- The description's first verb is "convert": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
- Findings: warn annotation-conflict

Description, as the server wrote it:

```untrusted-server-text
Converts Unicode braille cells to BRF (NABCC 6-dot ASCII braille, the text format embossers read), with line/page wrapping (pronunciation-based, NOT an official national braille code.). 8-dot cells are converted to 6-dot by the engine and reported.
한국어: 유니코드 점자를 엠보서용 BRF 텍스트로 변환합니다.
```

### `braille_verify_brf`

- The description's first verb is "run": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
- Findings: warn annotation-conflict

Description, as the server wrote it:

```untrusted-server-text
Runs 9 automatic checks on BRF text (mapping, line length, page length, CRLF, form feed, round trip, ...). Does not check paper quality or dot depth (pronunciation-based, NOT an official national braille code.).
한국어: BRF 텍스트를 9개 항목으로 자동 검증합니다.
```

### `talk_codes_to_text`

- The description's first verb is "convert": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
- Findings: warn annotation-conflict

Description, as the server wrote it:

```untrusted-server-text
Converts WIA Talk ISP codes (e.g. HS02-LC07-MV01-OR03-MM07) back to IPA and WIA Braille. Unknown codes are listed as missing, never invented. Sound-unit codes, not sign language. (pronunciation-based, NOT an official national braille code.)
한국어: ISP 코드를 IPA·점자로 되돌립니다.
```

## Only reads (4)

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

### `braille_engine_info`

- The description's first verb is "return": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
Returns the WIA Braille engine version and language coverage counts (pronunciation-based, NOT an official national braille code.).
한국어: 엔진 버전과 지원 언어 규모를 보여줍니다.
```

### `braille_languages`

- The description's first verb is "list": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
Lists or searches the languages the WIA Braille engine can convert (pronunciation-based, NOT an official national braille code.). Shows the conversion sources per language (rules, dictionary, espeak).
한국어: 지원 언어를 목록·검색합니다.
```

### `talk_coverage`

- The description's first verb is "list": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
Lists which braille/IPA segments currently have a WIA Talk ISP code. Sound-unit codes, not sign language. (pronunciation-based, NOT an official national braille code.)
한국어: ISP 코드가 있는 소리 목록을 보여줍니다.
```

### `talk_text_to_gesture_codes`

- The description's first verb is "return": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
Returns WIA Talk ISP codes for the SOUNDS of a text (handshape-location-movement-orientation codes). These are sound-unit codes, NOT a translation into any real sign language such as KSL or ASL. Underlying text-to-IPA is pronunciation-based WIA Braille (pronunciation-based, NOT an official national braille code.)
한국어: 소리 단위 제스처 코드이며 실제 수어 번역이 아닙니다.
```

## Claude Code permissions

For `.claude/settings.json`, assuming the server is installed as `wiabraille`:

```json
{
  "permissions": {
    "allow": [
      "mcp__wiabraille__braille_languages",
      "mcp__wiabraille__braille_engine_info",
      "mcp__wiabraille__talk_text_to_gesture_codes",
      "mcp__wiabraille__talk_coverage"
    ],
    "ask": [
      "mcp__wiabraille__braille_convert",
      "mcp__wiabraille__braille_to_brf",
      "mcp__wiabraille__braille_verify_brf",
      "mcp__wiabraille__braille_math_nemeth",
      "mcp__wiabraille__talk_codes_to_text"
    ],
    "deny": []
  }
}
```
