Skip to main content
Glama
scatjay

いらすとや MCP

by scatjay

いらすとや MCP

Helps helping professionals find images in the free Japanese illustration library "Irasutoya" for health education handouts, worksheets, and presentations.

Hospitals and clinics across Taiwan use this library heavily for health education handouts. The problem is it only accepts Japanese keywords — if you want an illustration for "inattention," the site requires you to type 集中 or 気が散る — and you have no way of knowing that.

This MCP's value isn't in connecting you to the network — it's in helping you cross that language barrier.

你說:幫我找「注意力不集中」的插圖
它做:認出「注意力」→ 展開成日文「集中」「気が散る」→ 去搜 → 回圖檔網址

Install in Five Minutes

1. Clone it

git clone https://github.com/scatjay/kxmind-irasutoya-mcp.git

2. Install dependencies

pip install -r requirements.txt

3. Connect it to Claude

Add this to Claude Desktop's config file claude_desktop_config.json:

{
  "mcpServers": {
    "irasutoya": {
      "command": "python",
      "args": ["C:/你的路徑/kxmind-irasutoya-mcp/server.py"]
    }
  }
}

Replace C:/你的路徑/ with the actual path where you just cloned it.

4. Restart Claude

No account to register, no API key to apply for, no environment variables to set. That's it.


How Big Is This Library

Measured (2026-08-27):

Total assets

25,419 images

Categories

239

Last updated

2026-08-25 (still growing)

You can check the latest numbers yourself anytime with library_stats.


Nine Tools

Search layer

Tool

What it does

search

The most-used one. Type Chinese, it auto-translates to Japanese and searches

search_ja

Search directly in Japanese (when you already know what to type)

list_topics

Lists common topics for helping professionals in Chinese-Japanese pairs; check this first if you don't know what to search for

browse_label

Browse by Irasutoya's own categories (e.g. 棒人間, 医療, 家族)

list_labels

Lists categories (by default only those useful to helping professionals, with Chinese translations)

library_stats

Library size, category count, last update time

Analysis layer

This layer is where the MCP truly differs from "opening a browser and searching yourself."

Tool

What it does

suggest_for_worksheet

Describe a situation, and it assembles the full set of illustrations for an entire handout in one go

license_check

Calculates whether your image count stays within the free quota

Output layer

Tool

What it does

worksheet_template

Generates a handout skeleton that is printable A4 + mobile-readable

inline_images

Embeds images in place, solving Artifact's blocking of external images


Full Workflow for Making a Handout

1. worksheet_template("我的衛教單.html")
      → A4 骨架,列印與手機的坑都填好了

2. search("讀字會跳行")  或  suggest_for_worksheet("…")
      → 拿到圖檔網址,貼進 HTML 的 <img src>
        (這一步刻意用真實網址,檔案才是人看得懂、改得動的)

3. inline_images("我的衛教單.html")
      → 把圖就地換成內嵌,檔案變成自包含

4. 發布成 Artifact
      → 有公開網址可以傳給家長,家長按 Ctrl+P 就能印

Why Steps 2 and 3 Are Separate

Artifact has a strict CSP that blocks images from all external hosts (the only exception is Google Fonts). Irasutoya's images live on blogger.googleusercontent.com, so direct linking will never load.

So why not embed from the start? Because a 400px image converted to base64 is about 148 KB; three images is 445 KB — if those characters pass through the conversation, they'll eat a huge chunk of your quota, and you can't read them at all.

So: use URLs while writing (readable), and only embed at the final step (self-contained). Those hundreds of thousands of characters live only in the file and never enter the conversation.

What the Layout Already Handles

The skeleton generated by worksheet_template has already filled in these pitfalls (tested at three widths):

Phone 375px

Desktop 1280px

Print

Layout

Full-bleed, zero horizontal scroll

Precise 210mm A4

A4 + 14mm margins

Image/text

Stacked vertically, image enlarged and centered

Side by side

Never split across two pages

Font size

17px

16px

12pt

Toolbar

Minimal

Full

Auto-hidden

Also: it automatically switches to a white background when printing (dark backgrounds waste toner and are hard for parents to read), and the footer links print with their URLs included (so people know where to go when they have the paper copy).

suggest_for_worksheet is the core of this tool. You don't need to break down keywords yourself — just describe the situation:

A third-grader who skips lines when reading and can't finish copying the homework notebook; the parents are very anxious

It automatically breaks this into threads like "child / learning disability / homework notebook / anxiety / parents," assigns one image per thread, and assembles a combination that actually fits the layout — rather than stuffing five images of the same concept.

⚠️ You're describing a situation, not a case. No names, no medical records, no identifiable information — this is de-identified by design, no additional compliance steps needed.


🔴 License: Please Read This Section Carefully

Irasutoya's official terms:

商用目的の場合、一つの作成物の中に 20点まで は無料でご利用いただけます。 それ以上の点数をご希望される場合は 有償 となります。

【English】 For commercial use, up to 20 images per single work are free; beyond that you must pay, 1,100 JPY (tax included) per image.

There's another equally important rule:

素材そのものの販売・再配布は禁止。

【English】 The assets themselves may not be sold or redistributed.

What This Means for You in Practice

What you want to do

Result

1–3 images in one handout

Completely free — this is exactly what hospitals and clinics do

10 images in one presentation

✅ Free

A series of teaching materials with 20+ images

⚠️ Must pay, and the entire set is counted

Repackaging image files to share with others

Prohibited

"Embedding in a Work" and "Redistribution" Are Two Different Things

This distinction matters because inline_images does download images:

Action

What it is

Putting illustrations into your own handout (whether Word, PPT, or embedded as a data: URI)

Normal use — exactly what the library is intended for, governed by the 20-image rule

Repackaging the image files themselves and distributing them as an asset pack

Redistribution — this is prohibited

inline_images does the former — the same thing as pasting images into Word, just expressed in HTML.

Design Decisions This Program Makes for This Reason

  • Search tools only return URLs — they download nothing

  • inline_images only downloads when you explicitly ask, and it only processes images already present in your own HTML file

  • Default cap of 20 images — exactly matching the license's free limit. This isn't a technical constraint; it's deliberately placed here

  • The repo itself contains no asset files

  • Every search and embed result ends with a reminder of the remaining quota

⚠️ Whether handouts distributed free by clinics count as "commercial use" is a gray area. The author is not a lawyer. A practical safety line: single sheets are fine; series require caution. For heavy use, contact Irasutoya directly.

Official terms: https://www.irasutoya.com/p/terms.html


Technical Notes

Irasutoya runs on Blogger and has a standard feed API — no HTML scraping needed:

GET https://www.irasutoya.com/feeds/posts/default?alt=json&q=<日文關鍵字>&max-results=N

Each returned entry has:

  • title.$t — title (Japanese)

  • link[rel=alternate].href — page URL

  • content.$t — contains the <img src> for the image

  • category[].term — tags

robots.txt is empty (0 bytes) — no crawling restrictions at all. Even so, this tool adds a 0.8-second request interval and serial, non-concurrent requests — this is a free resource; don't take it down.


Chinese-Japanese Lookup Table

Currently includes 167 Chinese terms, covering:

Emotions (including fine-grained versions) / Children and development / School / Family / Psychology and helping / Medical / Long-term care and aging / Daily life and 3C / Layout decoration / The helping professional's own situation / Clinical topics / Interventions and techniques

Of these, 65 terms have been verified against the actual API — every candidate was really searched once, and anything that returned nothing was dropped. "選擇性緘默" (selective mutism) was dropped this way: the concept exists, but the library has no matching assets.

Unexpected finds: 沙盤→箱庭 (sand tray), 桌遊→ボードゲーム (board games), 繪本→絵本 (picture books), 藝術治療→お絵かき (art therapy), 代幣→シール (token/sticker), 耗竭→燃え尽き症候群 (burnout).

One Chinese term maps to multiple Japanese terms, because the same concept in Japanese often has kanji, kana, and loanword forms — searching only one form misses a large portion of the assets.

"注意力": ["集中", "気が散る"],
"諮商":   ["カウンセリング", "相談"],
"放鬆":   ["リラックス", "深呼吸", "瞑想"],

If you think a term is missing, just edit ZH_TO_JA in server.py — that's what it's there for.


License

Code: MIT (see LICENSE) Illustrations: Copyright belongs to Irasutoya. This project owns and distributes no assets. When using them, please follow the license terms above.

-
license - not tested
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/scatjay/kxmind-irasutoya-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server