WIA Code & WIA Pin Code
by wiacode.com · remote · no sign-in to list tools · v1.0.0 · published by com.wiacode
Make shape-free 2D codes (WIA Code) and convert coordinates to and from WIA Pin Codes.
8 tools: 7 change things and 1 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things7Claude Code: ask: see these tools
- Only reads1Claude Code: allow: see these tools
7 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http wiacode https://mcp.wiacode.com/mcpFindings
Matches of fixed checks, with the text they matched.
The server marks "generate_wia_code_wifi" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "generate_wia_code_wifi" says "generate": a word for a change.
The server marks "generate_wia_code_card" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "generate_wia_code_card" says "generate": a word for a change.
The server marks "generate_wia_code_event" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "generate_wia_code_event" says "generate": a word for a change.
The server marks "generate_wia_code" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "generate_wia_code" says "generate": a word for a change.
- Warnpin_code_encode
The server marks "pin_code_encode" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "pin_code_encode" says "pin": a word for a change.
- Warnpin_code_decode
The server marks "pin_code_decode" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "pin_code_decode" says "pin": a word for a change.
Show 1 more findingShow fewer
- Warnpin_code_nearby
The server marks "pin_code_nearby" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "pin_code_nearby" says "pin": a word for a change.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
8 tools
Changes things 7Claude Code: ask
generate_wia_code텍스트나 링크를 WIA Code 이미지(PNG)로 만든다.1 finding
Why it is in this group
- The name "generate_wia_code" says "generate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "generate_wia_code" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "generate_wia_code" says "generate": a word for a change.
Description, as the server wrote it 텍스트나 링크를 WIA Code 이미지(PNG)로 만든다. 실루엣마다 용량이 다르므로 긴 내용은 square(가장 큼) 를, 짧은 링크는 아무 실루엣이나 쓰면 된다. 용량을 넘으면 어떤 실루엣이 가능한지 알려준다.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Generate a WIA Code
generate_wia_code_card연락처(명함)를 표준 vCard 로 담은 WIA Code 를 만든다.1 finding
Why it is in this group
- The name "generate_wia_code_card" says "generate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "generate_wia_code_card" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "generate_wia_code_card" says "generate": a word for a change.
Description, as the server wrote it 연락처(명함)를 표준 vCard 로 담은 WIA Code 를 만든다. 스캔하면 폰이 연락처 저장을 제안한다.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Generate a contact-card WIA Code
generate_wia_code_event일정을 표준 iCalendar 로 담은 WIA Code 를 만든다.1 finding
Why it is in this group
- The name "generate_wia_code_event" says "generate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "generate_wia_code_event" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "generate_wia_code_event" says "generate": a word for a change.
Description, as the server wrote it 일정을 표준 iCalendar 로 담은 WIA Code 를 만든다. 스캔하면 캘린더에 추가된다. 시각은 "2026-09-01 19:00" 형식으로 준다.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Generate a calendar-event WIA Code
generate_wia_code_wifi와이파이 접속 정보를 WIA Code 로 만든다.1 finding
Why it is in this group
- The name "generate_wia_code_wifi" says "generate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "generate_wia_code_wifi" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "generate_wia_code_wifi" says "generate": a word for a change.
Description, as the server wrote it 와이파이 접속 정보를 WIA Code 로 만든다. 스캔하면 비밀번호를 입력하지 않고 바로 접속된다. 카페·사무실·숙소 안내에 쓴다. 개방망이면 security 를 nopass 로 준다.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: Generate a Wi-Fi WIA Code
pin_code_decodeTurn a WIA Pin Code (12-digit v2 or 9-digit v1, dashes optional, a leading country calling code such as 082- is ignored) into latitude/longitude.1 finding
Why it is in this group
- The name "pin_code_decode" says "pin": a word for a change.
- The input takes a statement or command to run (input.code), which can change anything it can reach.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "pin_code_decode" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "pin_code_decode" says "pin": a word for a change.
Description, as the server wrote it Turn a WIA Pin Code (12-digit v2 or 9-digit v1, dashes optional, a leading country calling code such as 082- is ignored) into latitude/longitude. v2 returns the cell centre (error within about ±10 m lat / ±20 m lng); v1 is a coarser legacy code.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: WIA Pin Code: code → coordinates
pin_code_encodeTurn a latitude/longitude into a WIA Pin Code (12 digits, e.g.1 finding
Why it is in this group
- The name "pin_code_encode" says "pin": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "pin_code_encode" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "pin_code_encode" says "pin": a word for a change.
Description, as the server wrote it Turn a latitude/longitude into a WIA Pin Code (12 digits, e.g. 708-702-851-863 for central Seoul). Also returns the 9-digit v1 code, which is always the first 9 digits of the v2 code. Works offline-style: pure calculation, no lookup.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: WIA Pin Code: coordinates → code
pin_code_nearbyList the WIA Pin Code cells around a point or a code, nearest first, with distance and direction.1 finding
Why it is in this group
- The name "pin_code_nearby" says "pin": a word for a change.
- The input takes a statement or command to run (input.code), which can change anything it can reach.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "pin_code_nearby" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "pin_code_nearby" says "pin": a word for a change.
Description, as the server wrote it List the WIA Pin Code cells around a point or a code, nearest first, with distance and direction. Useful for "which codes cover this building/plaza". Give either code, or lat+lng. Radius 10–200 m.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: WIA Pin Code: neighbouring cells
Only reads 1Claude Code: allow
get_wia_code_infoWIA Code 가 무엇이고 QR 과 어떻게 다른지, 어떤 실루엣과 용량이 있는지 알려준다.No findings
Why it is in this group
- The name "get_wia_code_info" says "get": a word for reading.
Description, as the server wrote it WIA Code 가 무엇이고 QR 과 어떻게 다른지, 어떤 실루엣과 용량이 있는지 알려준다. 코드를 만들기 전에 이걸 먼저 불러 실루엣과 용량을 확인하면 실패를 줄일 수 있다.
Annotations the server declares
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
- title: About WIA Code
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 wiacode https://mcp.wiacode.com/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__wiacode__get_wia_code_info"
],
"ask": [
"mcp__wiacode__generate_wia_code_wifi",
"mcp__wiacode__generate_wia_code_card",
"mcp__wiacode__generate_wia_code_event",
"mcp__wiacode__generate_wia_code",
"mcp__wiacode__pin_code_encode",
"mcp__wiacode__pin_code_decode",
"mcp__wiacode__pin_code_nearby"
],
"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 wiacode. Review it before you use it.