harie_open
Harie ファイルを開く
Harie ファイル(注釈を再編集できる JPEG/PNG)を開き、注釈の一覧と画像を返す。注釈の文言や位置は JSON で読めるので、画像が要らなければ image: false。普通の画像なら status: plain を返す
pathrequiredimage
io.github.hosshanPublished by GitHub account hosshanv0.5.0Updated Oct 30, 2026
Annotate screenshots for user guides. Saved as plain JPEG/PNG whose annotations stay editable.
Local MCP server for annotating screenshots into editable Harie files saved as ordinary JPEG/PNG, so an assistant can add boxes, numbers and callouts for user…
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Follow the launch instructions in the repository.
English | 日本語
A local MCP server (stdio) for reading and writing Harie files: screenshots saved as ordinary JPEG / PNG images whose annotations (boxes, arrows, callouts, text) stay editable after saving. It lets MCP clients such as Claude handle requests like "put a red box around the save button" or "fix the wording of this callout".
Harie is a tool for annotating screenshots in SaaS user guides. A Harie file opens in any image viewer as a normal picture, and Harie can reopen it to edit the annotations again and again.
The server never calls an LLM. The client's LLM looks at the image and decides what to annotate; the server only reads, writes and renders files.
harie_open, harie_edit and harie_replace_base accept image: false to skip the image and return only the JSON. Images take up much of the client's context, so use it when you only read or rewrite text.
The server can only access files under the directory given by --root (default: the current directory). harie_mask rewrites the base image, so the change cannot be undone once saved. To keep the original, save to another file with outPath.
Requires Node.js 22 or later. Launch @harie/mcp from npm with npx.
claude_desktop_config.json)harie_guide)The server ships a prompt, harie_guide (arguments: path, optional intent), with the same rules the web editor's AI suggestions use: which UI elements to highlight (only what the explanation needs, at most 8, in the order of operation), how to write each callout (1–2 sentences saying what the reader does; never invent features or copy personal data), the layout rules (each step gets a box, a number badge and a callout whose arrow points at the box; badges always sit outside the top-left corner of their box and never cover UI elements; a badge with an anchor to its box is placed there automatically), and the steps with these tools (open → mask personal data → add box + number badge + anchored callout → preview → save). In Claude Code it appears as /mcp__harie__harie_guide. A short version of the same rules is also sent as the server's instructions, so clients that read them follow the rules even without the prompt.
settings.png into a Harie file, draw a red box around the save button, and add a callout saying 'Click here to save'."guides/ and add a title to any that don't have one."Tool descriptions are currently Japanese-first. Annotation text can be written in Japanese, English, Korean, Chinese (Simplified and Traditional) and other languages the bundled fonts cover.
src/tools.ts: tool implementations. src/server.ts: MCP registration and input validation. src/paths.ts: prevents access outside the root.pnpm test) connect a client through the SDK's InMemoryTransport and call the tools for real.scripts/copy-assets.mjs; license in dist/fonts/OFL.txt).MIT. The bundled fonts (Noto Sans JP / KR / SC, Regular / Bold) are licensed under the SIL Open Font License 1.1 (dist/fonts/OFL.txt).
Source: apps/mcp/README.md at commit d53ba9e
Harie ファイルを開く
Harie ファイル(注釈を再編集できる JPEG/PNG)を開き、注釈の一覧と画像を返す。注釈の文言や位置は JSON で読めるので、画像が要らなければ image: false。普通の画像なら status: plain を返す
pathrequiredimage画像から Harie ファイルを作る
普通の JPEG/PNG から注釈のない Harie ファイルを作る。元の画像はそのまま残し、既定では <名前>.harie.<拡張子> に保存する。以後の保存もこの形式になる
titleformatoutPathimagePathrequired注釈を変更して保存する
注釈を追加・更新・削除し、画像を描き直して上書き保存する。保存後の画像を返す。先に harie_preview で確認するとよい
opsrequiredpathrequiredimageexpectedRevision注釈の変更を保存せずに確認する
ops を適用した結果の画像を返す。ファイルは変更しない
opsrequiredpathrequired個人情報をマスクする(元に戻せない)
画像内の個人情報(氏名・メール・電話番号など)を、ベース画像を書き換えて隠す。保存すると元に戻せず、ファイルのどこにも元の情報は残らない。 まず confirm を付けずに呼ぶと、保存せずに加工後の画像を返す。範囲と方法を確かめてから、同じ masks に confirm: true を付けて保存する。 method: replace(ダミー文字列に置き換える。replacement に同じ種類のダミー値を渡す。例: 山田 花子 / [email protected])/ fill(塗りつぶし)/ mosaic / blur。文字は replace か fill を使う。 rect はベース画像のピクセル(左上原点)で、文字より少し広めに取る。注釈の blur とは別物で、個人情報にはこちらを使う。
pathrequiredmasksrequiredconfirmoutPathexpectedRevision注釈を残して画像を差し替える
Harie ファイルの注釈を残したまま、画像だけを新しいスクリーンショットに差し替えて保存する(画面が変わったときのガイドの更新)。大きさが違えば注釈を比率で拡大縮小する。位置がずれた注釈は保存後の画像を見て harie_edit で直す
pathrequiredimageoutPathimagePathrequiredexpectedRevisionHarie ファイルを一覧する
ディレクトリ内の Harie ファイルを、タイトル・リビジョン・注釈数とともに一覧する
dirrecursive90% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
claude mcp add harie -- npx -y @harie/mcp --root ~/Pictures/guides{ "mcpServers": { "harie": { "command": "npx", "args": ["-y", "@harie/mcp", "--root", "/Users/you/Pictures/guides"] } }}pnpm installpnpm build # produces apps/mcp/dist/index.mjs and dist/fonts/claude mcp add harie -- node /path/to/harie/apps/mcp/dist/index.mjs --root ~/Pictures/guides