{"$schema":"https://verifymcp.io/schemas/trust-report.json","schemaVersion":1,"license":{"name":"CC BY-NC 4.0","url":"https://creativecommons.org/licenses/by-nc/4.0/"},"generatedAt":"2026-11-05T16:39:16.530Z","url":"https://verifymcp.io/servers/hosshan-harie/harie-mcp","markdownUrl":"https://verifymcp.io/servers/hosshan-harie/harie-mcp.md","server":{"slug":"hosshan-harie","name":"Harie","registryName":"io.github.hosshan/harie","description":"Annotate screenshots for user guides. Saved as plain JPEG/PNG whose annotations stay editable.","registryStatus":"active","deletedAt":null,"statusMessage":null,"liveness":"live","publisher":{"class":"unknown","claimed":false}},"component":{"slug":"harie-mcp","type":"npm","identifier":"@harie/mcp","withdrawn":false,"url":"https://verifymcp.io/servers/hosshan-harie/harie-mcp","version":"0.5.0","transport":"stdio","scoredAt":"2026-11-05T04:20:45.543Z"},"score":{"total":80,"tier":"high trust","status":"scored","weekDelta":null,"history":[{"date":"2026-11-05","total":80},{"date":"2026-11-04","total":80},{"date":"2026-11-03","total":80},{"date":"2026-11-02","total":80},{"date":"2026-11-01","total":80},{"date":"2026-10-31","total":80},{"date":"2026-10-30","total":80}]},"categories":[{"name":"Supply Chain Security","score":98,"verdict":"partial","reasons":["No malware found by supply-chain analysis.","No known CVEs affecting this package version or its production dependencies.","No install/post-install scripts declared.","30 of 94 dependencies flagged as unhealthy."],"codes":[{"code":"supplychain.malware_clean","args":{}},{"code":"cve.none","args":{}},{"code":"installscript.none","args":{}},{"code":"dephealth.assessed","args":{"deps":"94","unhealthy":"30"}}]},{"name":"Provenance & Transparency","score":97,"verdict":"fail","reasons":["Source repository is publicly reachable at the declared URL.","Cryptographically verified build provenance (signed, bound to hosshan/harie).","Clear OSI-approved license (MIT).","Actively maintained (last published 6 days ago).","Disclosure check failed: no security disclosure policy was found in the source repository."],"codes":[{"code":"provenance.repo_verified","args":{}},{"code":"provenance.verified","args":{"repo":"hosshan/harie"}},{"code":"license.osi","args":{"spdx":"MIT"}},{"code":"maintenance.recent","args":{"age_days":"6"}},{"code":"disclosure.absent","args":{}}]},{"name":"Schema Quality & AI Usability","score":74,"verdict":"fail","reasons":["100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).","AI-judged instruction clarity (good).","Context-footprint check failed: tool/resource definitions use about 2043 tokens (~291/item across 7 items; 7 tools + 0 resources), over budget; trim descriptions and params.","Usage-examples check failed: none of the tools include examples."],"codes":[{"code":"schema.descriptions","args":{"pct":"100"}},{"code":"schema.ai_quality","args":{"band":"good"}},{"code":"schema.footprint_heavy","args":{"avg":"291","items":"7","tools":"7","tokens":"2043","resources":"0"}},{"code":"schema.examples_absent","args":{}}]},{"name":"Stability & Change Management","score":0,"verdict":"unverified","reasons":["Stability not yet verified: not enough scan history yet (needs a 30-day window)."],"codes":[{"code":"stability.insufficient_history","args":{}}]},{"name":"Tool Coverage","score":100,"verdict":"pass","reasons":["100% of tools have a non-trivial description (not blank, and not just the tool's name).","100% of tool parameters carry a description."],"codes":[{"code":"toolquality.descriptions","args":{"pct":"100"}},{"code":"toolquality.param_docs","args":{"pct":"100"}}]},{"name":"Tool Safety","score":100,"verdict":"pass","reasons":["No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.","We read all 7 captured tool definition(s), and no name or description among them implies an irreversible operation.","An AI judge read all 8 captured unit(s) of tool text and found none that tries to manipulate the model reading it."],"codes":[{"code":"toolsafety.injection_clean","args":{}},{"code":"toolsafety.destructive_none","args":{"tools":"7"}},{"code":"toolsafety.manipulation_clean","args":{"units":"8","judged":"8"}}]},{"name":"Capabilities","score":100,"verdict":"pass","reasons":["Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28."],"codes":[{"code":"protocol.supported","args":{"latest":"2026-07-28","version":"2025-11-25"}}]}],"inconclusive":["Stability not yet verified: not enough scan history yet (needs a 30-day window)."],"malware":[],"components":[{"slug":"harie-mcp","type":"npm","identifier":"@harie/mcp","withdrawn":false,"score":80,"current":true,"url":"https://verifymcp.io/servers/hosshan-harie/harie-mcp","markdownUrl":"https://verifymcp.io/servers/hosshan-harie/harie-mcp.md"}],"facts":[{"label":"Registry","value":"npm"},{"label":"Package","value":"@harie/mcp"},{"label":"Version","value":"0.5.0"},{"label":"Transport","value":"stdio"}],"install":{"available":true,"bundleSha256":null},"tools":[{"name":"harie_open","title":"Harie ファイルを開く","description":"Harie ファイル（注釈を再編集できる JPEG/PNG）を開き、注釈の一覧と画像を返す。注釈の文言や位置は JSON で読めるので、画像が要らなければ image: false。普通の画像なら status: plain を返す","inputs":[{"name":"image","type":"boolean","required":false,"description":"false で画像を返さず、注釈の JSON だけを返す（既定 true）。文言だけを読む・直すとき"},{"name":"path","type":"string","required":true,"description":"ファイルのパス（/workdir からの相対パスか絶対パス）"}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":149},{"name":"harie_create","title":"画像から Harie ファイルを作る","description":"普通の JPEG/PNG から注釈のない Harie ファイルを作る。元の画像はそのまま残し、既定では <名前>.harie.<拡張子> に保存する。以後の保存もこの形式になる","inputs":[{"name":"format","type":"string","required":false,"description":"保存形式。省略時は outPath の拡張子、なければ元画像と同じ。文字の多い画面は png"},{"name":"imagePath","type":"string","required":true,"description":"ファイルのパス（/workdir からの相対パスか絶対パス）"},{"name":"outPath","type":"string","required":false,"description":"保存先。省略時は <名前>.harie.<拡張子>"},{"name":"title","type":"string","required":false,"description":"画像のタイトル（例: 通知設定の画面）"}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":180},{"name":"harie_edit","title":"注釈を変更して保存する","description":"注釈を追加・更新・削除し、画像を描き直して上書き保存する。保存後の画像を返す。先に harie_preview で確認するとよい","inputs":[{"name":"expectedRevision","type":"integer","required":false,"description":"harie_open で得た revision。他で先に保存されていたら失敗させる"},{"name":"image","type":"boolean","required":false,"description":"false で画像を返さず、注釈の JSON だけを返す（既定 true）。文言だけを読む・直すとき"},{"name":"ops","type":"array","required":true,"description":"ops は操作の配列。座標はベース画像のピクセル（canvas.width × canvas.height）で、左上が原点。\n例: [{\"op\":\"add\",\"annotation\":{\"id\":\"r1\",\"type\":\"rect\",\"x\":40,\"y\":40,\"w\":200,\"h\":80}},\n     {\"op\":\"add\",\"annotation\":{\"id\":\"c1\",\"type\":\"c…"},{"name":"path","type":"string","required":true,"description":"ファイルのパス（/workdir からの相対パスか絶対パス）"}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":459},{"name":"harie_preview","title":"注釈の変更を保存せずに確認する","description":"ops を適用した結果の画像を返す。ファイルは変更しない","inputs":[{"name":"ops","type":"array","required":true,"description":"harie_edit の ops と同じ形式"},{"name":"path","type":"string","required":true,"description":"ファイルのパス（/workdir からの相対パスか絶対パス）"}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":72},{"name":"harie_mask","title":"個人情報をマスクする（元に戻せない）","description":"画像内の個人情報（氏名・メール・電話番号など）を、ベース画像を書き換えて隠す。保存すると元に戻せず、ファイルのどこにも元の情報は残らない。\nまず confirm を付けずに呼ぶと、保存せずに加工後の画像を返す。範囲と方法を確かめてから、同じ masks に confirm: true を付けて保存する。\nmethod: replace（ダミー文字列に置き換える。replacement に同じ種類のダミー値を渡す。例: 山田 花子 / hanako@example.com）/ fill（塗りつぶし）/ mosaic / blur。文字は replace か fill を使う。\nrect はベース画像のピクセル（左上原点）で、文字より少し広めに取る。注釈の blur とは別物で、個人情報にはこちらを使う。","inputs":[{"name":"confirm","type":"boolean","required":false,"description":"true で保存する（元に戻せない）。省略時は保存せずに結果だけ返す"},{"name":"expectedRevision","type":"integer","required":false,"description":"harie_open で得た revision。他で先に保存されていたら失敗させる"},{"name":"masks","type":"array","required":true,"description":"隠す範囲と方法"},{"name":"outPath","type":"string","required":false,"description":"別のファイルとして保存する場合の保存先。省略時は上書き"},{"name":"path","type":"string","required":true,"description":"ファイルのパス（/workdir からの相対パスか絶対パス）"}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":355},{"name":"harie_replace_base","title":"注釈を残して画像を差し替える","description":"Harie ファイルの注釈を残したまま、画像だけを新しいスクリーンショットに差し替えて保存する（画面が変わったときのガイドの更新）。大きさが違えば注釈を比率で拡大縮小する。位置がずれた注釈は保存後の画像を見て harie_edit で直す","inputs":[{"name":"expectedRevision","type":"integer","required":false,"description":"harie_open で得た revision。他で先に保存されていたら失敗させる"},{"name":"image","type":"boolean","required":false,"description":"false で画像を返さず、注釈の JSON だけを返す（既定 true）。文言だけを読む・直すとき"},{"name":"imagePath","type":"string","required":true,"description":"新しい画像（JPEG/PNG）のパス"},{"name":"outPath","type":"string","required":false,"description":"別のファイルとして保存する場合の保存先。省略時は上書き"},{"name":"path","type":"string","required":true,"description":"ファイルのパス（/workdir からの相対パスか絶対パス）"}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":245},{"name":"harie_list","title":"Harie ファイルを一覧する","description":"ディレクトリ内の Harie ファイルを、タイトル・リビジョン・注釈数とともに一覧する","inputs":[{"name":"dir","type":"string","required":false,"description":"探すディレクトリ。省略時は許可されたディレクトリ全体"},{"name":"recursive","type":"boolean","required":false,"description":"サブディレクトリも探すか（既定 true）"}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":88}],"toolsTruncatedAtCapture":false,"diagnostics":{"capturedAt":"2026-11-05T04:20:45.000Z","track":"package","endpoint":null,"declaredUrl":null,"truncated":false,"tls":null,"dnssec":null,"auth":null,"httpsRedirect":null,"transports":[],"provenance":{"outcome":"verified","label":"Verified","reason":"verified","reasonLabel":"Verified","discovery":"attestation_endpoint","discoveryLabel":"Registry attestation endpoint","sourceRepo":null,"attestationSkipped":null,"attestationSkippedLabel":null},"installScripts":[],"installScriptsTotal":null,"vulnerabilities":[],"vulnerabilitiesTotal":null,"dependencies":{"nodes":94,"partial":false,"deprecated":null,"stale":30,"noRepo":null}},"mismatches":[],"changelog":{"trackingSince":"2026-10-30","recent":[{"id":"chg_01a19022-5231-77e1-8c81-d5f19c4cc61a","kind":"check.reverified","summary":"Security disclosure (unverified → fail)","materiality":"functional","direction":"regression","scoreDelta":null,"occurredOn":"2026-10-31","url":"https://verifymcp.io/servers/hosshan-harie/harie-mcp#chg-chg_01a19022-5231-77e1-8c81-d5f19c4cc61a"},{"id":"chg_01a18ae6-ea39-794b-acbe-b84df9586ccd","kind":"score.first_scored","summary":"First indexed and scored","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-10-30","url":"https://verifymcp.io/servers/hosshan-harie/harie-mcp#chg-chg_01a18ae6-ea39-794b-acbe-b84df9586ccd"}],"truncated":false,"feedUrl":"https://verifymcp.io/servers/hosshan-harie/harie-mcp/changelog.json"},"links":{"html":"https://verifymcp.io/servers/hosshan-harie/harie-mcp","markdown":"https://verifymcp.io/servers/hosshan-harie/harie-mcp.md","changelogJson":"https://verifymcp.io/servers/hosshan-harie/harie-mcp/changelog.json","changelogRss":"https://verifymcp.io/servers/hosshan-harie/harie-mcp.xml","external":[{"label":"npm package","href":"https://www.npmjs.com/package/@harie/mcp"},{"label":"Socket report","href":"https://socket.dev/npm/package/@harie/mcp"},{"label":"Repository","href":"https://github.com/hosshan/harie"},{"label":"Website","href":"https://harie.studio/en/"}]}}