Unofficial Chiikawa episode guide: search episodes, characters and story arcs in 5 languages.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Step 1 of 2 for privately telling the site operator about a factual error in one episode's page (one point per report). Fill only the fields for the part you choose: title / summary / translation → the exact wrong text copied from get_episode in that language (checked against the page) and the corrected text; characters → the add/remove lists; arc → an arc id from list_arcs; number → the correct episode number; other → one neutral sentence. This only makes a draft. It returns the draft, the terms and a token; show both to the user and call send_confirmed_error_report only if they say yes.
Post id (X status id) or manga episode number.
Language version of the page the wrong text is on. Default ja. translation needs a language other than ja.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http chiikawa https://wakidokoro.party/mcp
Step 1 of 2 for privately telling the site operator about a factual error in one episode's page (one point per report). Fill only the fields for the part you choose: title / summary / translation → the exact wrong text copied from get_episode in that language (checked against the page) and the corrected text; characters → the add/remove lists; arc → an arc id from list_arcs; number → the correct episode number; other → one neutral sentence. This only makes a draft. It returns the draft, the terms and a token; show both to the user and call send_confirmed_error_report only if they say yes.
| Argument | Type | Description |
|---|---|---|
| which_part_is_wrong* | string | |
| episode_id_or_number* | string | Post id (X status id) or manga episode number. |
| language_of_the_page | string | Language version of the page the wrong text is on. Default ja. translation needs a language other than ja. |
| correct_episode_number | integer | |
| correct_arc_id_from_list_arcs | string | |
| characters_to_add_from_this_list | array | |
| characters_to_remove_from_this_list | array | |
| panel_number_only_if_the_user_said_it | integer | |
| wrong_text_copied_exactly_from_the_page | string | |
| i_rewrote_it_factual_polite_without_insults_pii_urls_or_ads* | boolean | |
| corrected_text_only_no_insults_no_personal_data_no_urls_no_ads | string | |
| other_issue_in_one_neutral_sentence_no_insults_pii_urls_or_ads | string |
{
"type": "object",
"required": [
"episode_id_or_number",
"which_part_is_wrong",
"i_rewrote_it_factual_polite_without_insults_pii_urls_or_ads"
],
"properties": {
"which_part_is_wrong": {
"enum": [
"title",
"summary",
"translation",
"characters",
"arc",
"number",
"other"
],
"type": "string"
},
"episode_id_or_number": {
"type": "string",
"pattern": "^\\d{1,25}$",
"description": "Post id (X status id) or manga episode number."
},
"language_of_the_page": {
"enum": [
"ja",
"en",
"zh-hans",
"zh-hant",
"ko"
],
"type": "string",
"description": "Language version of the page the wrong text is on. Default ja. translation needs a language other than ja."
},
"correct_episode_number": {
"type": "integer",
"maximum": 100000,
"minimum": 1
},
"correct_arc_id_from_list_arcs": {
"type": "string",
"pattern": "^\\d{1,25}$"
},
"characters_to_add_from_this_list": {
"type": "array",
"items": {
"enum": [
"ちいかわ",
"ハチワレ",
"うさぎ",
"モモンガ",
"ラッコ先生",
"シーサー",
"くりまんじゅう",
"古本屋(カニ)",
"ポシェットの鎧さん",
"労働の鎧さん",
"あのこ",
"でかつよ",
"怪異",
"ナガノのくま"
],
"type": "string"
},
"maxItems": 5,
"uniqueItems": true
},
"characters_to_remove_from_this_list": {
"type": "array",
"items": {
"enum": [
"ちいかわ",
"ハチワレ",
"うさぎ",
"モモンガ",
"ラッコ先生",
"シーサー",
"くりまんじゅう",
"古本屋(カニ)",
"ポシェットの鎧さん",
"労働の鎧さん",
"あのこ",
"でかつよ",
"怪異",
"ナガノのくま"
],
"type": "string"
},
"maxItems": 5,
"uniqueItems": true
},
"panel_number_only_if_the_user_said_it": {
"type": "integer",
"maximum": 30,
"minimum": 1
},
"wrong_text_copied_exactly_from_the_page": {
"type": "string",
"maxLength": 200,
"minLength": 2
},
"i_rewrote_it_factual_polite_without_insults_pii_urls_or_ads": {
"type": "boolean",
"const": true
},
"corrected_text_only_no_insults_no_personal_data_no_urls_no_ads": {
"type": "string",
"pattern": "^(?![\\s\\S]*(?:https?://|www\\.))[\\s\\S]*$",
"maxLength": 200,
"minLength": 1
},
"other_issue_in_one_neutral_sentence_no_insults_pii_urls_or_ads": {
"type": "string",
"pattern": "^(?![\\s\\S]*(?:https?://|www\\.))[\\s\\S]*$",
"maxLength": 200,
"minLength": 10
}
},
"additionalProperties": false
}One story arc: its chapters and episodes in order.
| Argument | Type | Description |
|---|---|---|
| id* | string | Arc id from list_arcs. |
| locale | string | Language of titles, summaries and names. ja is the original; other languages only include translated episodes. Default ja. |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Arc id from list_arcs."
},
"locale": {
"enum": [
"ja",
"en",
"zh-hans",
"zh-hant",
"ko"
],
"type": "string",
"description": "Language of titles, summaries and names. ja is the original; other languages only include translated episodes. Default ja."
}
}
}A character's profile in the catalog: number of posts, first and latest appearance, who they appear with most, and their most typical episodes. The name may be in any language (e.g. ハチワレ, Hachiware, 小八).
| Argument | Type | Description |
|---|---|---|
| name* | string | |
| locale | string | Language of titles, summaries and names. ja is the original; other languages only include translated episodes. Default ja. |
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"locale": {
"enum": [
"ja",
"en",
"zh-hans",
"zh-hant",
"ko"
],
"type": "string",
"description": "Language of titles, summaries and names. ja is the original; other languages only include translated episodes. Default ja."
}
}
}Get one episode by its post id or its manga episode number: title, date, summary, characters, arc and links.
| Argument | Type | Description |
|---|---|---|
| id | string | Post id (the X status id). |
| locale | string | Language of titles, summaries and names. ja is the original; other languages only include translated episodes. Default ja. |
| number | integer | Manga episode number. |
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Post id (the X status id)."
},
"locale": {
"enum": [
"ja",
"en",
"zh-hans",
"zh-hant",
"ko"
],
"type": "string",
"description": "Language of titles, summaries and names. ja is the original; other languages only include translated episodes. Default ja."
},
"number": {
"type": "integer",
"description": "Manga episode number."
}
}
}The newest episodes, newest first.
| Argument | Type | Description |
|---|---|---|
| limit | integer | How many to return (default 10, max 20). |
| locale | string | Language of titles, summaries and names. ja is the original; other languages only include translated episodes. Default ja. |
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "How many to return (default 10, max 20)."
},
"locale": {
"enum": [
"ja",
"en",
"zh-hans",
"zh-hant",
"ko"
],
"type": "string",
"description": "Language of titles, summaries and names. ja is the original; other languages only include translated episodes. Default ja."
}
}
}All multi-part story arcs with their number of episodes.
| Argument | Type | Description |
|---|---|---|
| locale | string | Language of titles, summaries and names. ja is the original; other languages only include translated episodes. Default ja. |
{
"type": "object",
"properties": {
"locale": {
"enum": [
"ja",
"en",
"zh-hans",
"zh-hant",
"ko"
],
"type": "string",
"description": "Language of titles, summaries and names. ja is the original; other languages only include translated episodes. Default ja."
}
}
}Search Chiikawa episodes by words, scenes or feelings in any language (e.g. 'Hachiware cries', '草むしり検定'). Episodes whose title or summary contains the words come first, then ones close in meaning.
| Argument | Type | Description |
|---|---|---|
| limit | integer | How many to return (default 10, max 20). |
| query* | string | What to look for. |
| locale | string | Language of titles, summaries and names. ja is the original; other languages only include translated episodes. Default ja. |
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 20,
"minimum": 1,
"description": "How many to return (default 10, max 20)."
},
"query": {
"type": "string",
"description": "What to look for."
},
"locale": {
"enum": [
"ja",
"en",
"zh-hans",
"zh-hant",
"ko"
],
"type": "string",
"description": "Language of titles, summaries and names. ja is the original; other languages only include translated episodes. Default ja."
}
}
}Step 2 of 2: send a draft from draft_error_report after the user has seen that exact draft and the terms, said to send it, and agreed to the terms. Never call it on your own.
| Argument | Type | Description |
|---|---|---|
| draft_token_from_draft_error_report* | string | |
| user_saw_this_exact_draft_and_said_send_it* | boolean | |
| user_agreed_to_terms_version_shown_with_the_draft* | string | |
| user_assigns_copyright_to_wakidokoro_and_waives_moral_rights* | boolean |
{
"type": "object",
"required": [
"draft_token_from_draft_error_report",
"user_saw_this_exact_draft_and_said_send_it",
"user_agreed_to_terms_version_shown_with_the_draft",
"user_assigns_copyright_to_wakidokoro_and_waives_moral_rights"
],
"properties": {
"draft_token_from_draft_error_report": {
"type": "string",
"pattern": "^[0-9a-f]{32}$"
},
"user_saw_this_exact_draft_and_said_send_it": {
"type": "boolean",
"const": true
},
"user_agreed_to_terms_version_shown_with_the_draft": {
"type": "string",
"const": "2026-11-05"
},
"user_assigns_copyright_to_wakidokoro_and_waives_moral_rights": {
"type": "boolean",
"const": true
}
},
"additionalProperties": false
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 5, 2026.
No readOnlyHint / destructiveHint annotations, so clients can't tell a read from a write without asking.
Fix: Add annotations to each tool, e.g. { readOnlyHint: true } for tools that only read.