{"$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-06T00:07:50.288Z","url":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev","markdownUrl":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev.md","server":{"slug":"dev-homingpigeon-homingpigeondev","name":"Homing Pigeon","registryName":"dev.homingpigeon/homingpigeondev","description":"Homing Pigeon (homingpigeon.dev) sends text alerts from your code or agent to one phone: yours.","registryStatus":"active","deletedAt":null,"statusMessage":null,"liveness":"live","publisher":{"class":"unknown","claimed":false}},"component":{"slug":"homingpigeondev","type":"npm","identifier":"homingpigeondev","withdrawn":false,"url":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev","version":"0.1.2","transport":"stdio","scoredAt":"2026-11-05T06:40:35.377Z"},"score":{"total":72,"tier":"medium","status":"scored","weekDelta":null,"history":[{"date":"2026-11-05","total":72},{"date":"2026-11-04","total":72},{"date":"2026-11-03","total":71},{"date":"2026-11-02","total":56}]},"categories":[{"name":"Supply Chain Security","score":100,"verdict":"pass","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.","No production dependencies, so there is no dependency health to assess."],"codes":[{"code":"supplychain.malware_clean","args":{}},{"code":"cve.none","args":{}},{"code":"installscript.none","args":{}},{"code":"dephealth.no_dependencies","args":{"deps":"0","unhealthy":"0"}}]},{"name":"Provenance & Transparency","score":45,"verdict":"fail","reasons":["Source repository is publicly reachable at the declared URL.","Provenance check failed: no build-provenance attestation is published.","Clear OSI-approved license (MIT).","Actively maintained (last published 1 days ago).","Disclosure check failed: no security disclosure policy was found in the source repository."],"codes":[{"code":"provenance.repo_verified","args":{}},{"code":"provenance.none","args":{}},{"code":"license.osi","args":{"spdx":"MIT"}},{"code":"maintenance.recent","args":{"age_days":"1"}},{"code":"disclosure.absent","args":{}}]},{"name":"Schema Quality & AI Usability","score":76,"verdict":"fail","reasons":["AI-judged instruction clarity (good).","Tool/resource definitions use about 246 tokens (~82/item across 3 items; 3 tools + 0 resources), lean.","Usage-examples check failed: none of the tools include examples."],"codes":[{"code":"schema.ai_quality","args":{"band":"good"}},{"code":"schema.footprint_lean","args":{"avg":"82","items":"3","tools":"3","tokens":"246","resources":"0"}},{"code":"schema.examples_absent","args":{}}]},{"name":"Stability & Change Management","score":10,"verdict":"partial","reasons":["Stability observed for 3 of 30 days with no destabilising changes; credit accrues until the full window elapses."],"codes":[{"code":"stability.building_history","args":{"days":"3"}}]},{"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.","All 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.","An AI judge read all 4 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_declared","args":{"pct":"100","annotated":"1","destructive":"1"}},{"code":"toolsafety.manipulation_clean","args":{"units":"4","judged":"4"}}]},{"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":[],"malware":[],"components":[{"slug":"homingpigeon","type":"remote","identifier":"https://homingpigeon.dev/mcp","withdrawn":false,"score":36,"current":false,"url":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeon","markdownUrl":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeon.md"},{"slug":"homingpigeondev","type":"npm","identifier":"homingpigeondev","withdrawn":false,"score":72,"current":true,"url":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev","markdownUrl":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev.md"}],"facts":[{"label":"Registry","value":"npm"},{"label":"Package","value":"homingpigeondev"},{"label":"Version","value":"0.1.2"},{"label":"Transport","value":"stdio"}],"install":{"available":true,"bundleSha256":null},"tools":[{"name":"verify","title":null,"description":"Verify the user's own US mobile number for Homing Pigeon (homingpigeon.dev). Call with phone to text them a six-digit code, then call again with phone and the code they read back. It cannot verify anyone else's number.","inputs":[{"name":"code","type":"string","required":false,"description":"The six-digit code the user received. Omit on the first call."},{"name":"phone","type":"string","required":true,"description":"The user's own US mobile number."},{"name":"project","type":"string","required":false,"description":"Short name shown in front of each text."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":105},{"name":"send","title":null,"description":"Send a text message to the account owner's verified phone. The recipient is fixed; `message` is the only required field.","inputs":[{"name":"idempotency_key","type":"string","required":false,"description":"Reuse this on a retry so it cannot double-text."},{"name":"message","type":"string","required":true,"description":"The alert text, up to 480 characters."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":69},{"name":"status","title":null,"description":"Report whether the phone is verified or paused, how many messages remain, and what happened to the last send. It sends nothing.","inputs":[],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":33}],"toolsTruncatedAtCapture":false,"diagnostics":{"capturedAt":"2026-11-05T06:40:35.000Z","track":"package","endpoint":null,"declaredUrl":null,"truncated":false,"tls":null,"dnssec":null,"auth":null,"httpsRedirect":null,"transports":[],"provenance":{"outcome":"none","label":"No attestation","reason":null,"reasonLabel":null,"discovery":null,"discoveryLabel":null,"sourceRepo":null,"attestationSkipped":null,"attestationSkippedLabel":null},"installScripts":[],"installScriptsTotal":null,"vulnerabilities":[],"vulnerabilitiesTotal":null,"dependencies":{"nodes":0,"partial":false,"deprecated":null,"stale":null,"noRepo":null}},"mismatches":[],"changelog":{"trackingSince":"2026-11-02","recent":[{"id":"chg_01a1a50a-5d20-7707-8bd3-503d496c2306","kind":"score.total_changed","summary":"Trust score (57 → 72)","materiality":"functional","direction":"improvement","scoreDelta":15,"occurredOn":"2026-11-04","url":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev#chg-chg_01a1a50a-5d20-7707-8bd3-503d496c2306"},{"id":"chg_01a1a4ac-0aca-754c-9b4f-fb65d31ae431","kind":"check.unverifiable","summary":"Security disclosure (fail → unverified)","materiality":"functional","direction":"regression","scoreDelta":null,"occurredOn":"2026-11-04","url":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev#chg-chg_01a1a4ac-0aca-754c-9b4f-fb65d31ae431"},{"id":"chg_01a1a4ac-0acb-7219-a96a-0971704f13c3","kind":"check.reverified","summary":"Stability (unverified → 0.07)","materiality":"functional","direction":"improvement","scoreDelta":null,"occurredOn":"2026-11-04","url":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev#chg-chg_01a1a4ac-0acb-7219-a96a-0971704f13c3"},{"id":"chg_01a1a4ac-0acc-7e6c-bd1f-5f8f05a39c06","kind":"score.total_changed","summary":"Trust score (71 → 57)","materiality":"functional","direction":"regression","scoreDelta":-14,"occurredOn":"2026-11-04","url":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev#chg-chg_01a1a4ac-0acc-7e6c-bd1f-5f8f05a39c06"},{"id":"chg_01a1a4ac-0acb-7945-8525-500e0a377789","kind":"package.version_changed","summary":"Package version (0.1.1 → 0.1.2)","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-04","url":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev#chg-chg_01a1a4ac-0acb-7945-8525-500e0a377789"},{"id":"chg_01a1a4ac-0ac9-71b8-9233-66fcd5671e85","kind":"check.unverifiable","summary":"Malware scan (pass → unverified)","materiality":"security","direction":"regression","scoreDelta":null,"occurredOn":"2026-11-04","url":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev#chg-chg_01a1a4ac-0ac9-71b8-9233-66fcd5671e85"},{"id":"chg_01a1a01e-bb32-71f9-b80b-2cb5081d667a","kind":"check.reverified","summary":"Malware scan (unverified → pass)","materiality":"security","direction":"improvement","scoreDelta":null,"occurredOn":"2026-11-03","url":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev#chg-chg_01a1a01e-bb32-71f9-b80b-2cb5081d667a"},{"id":"chg_01a1a01e-bb32-7c2d-81f2-986e13decc9e","kind":"score.total_changed","summary":"Trust score (56 → 71)","materiality":"functional","direction":"improvement","scoreDelta":15,"occurredOn":"2026-11-03","url":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev#chg-chg_01a1a01e-bb32-7c2d-81f2-986e13decc9e"},{"id":"chg_01a19e32-62d3-731d-a4bf-7ec9ca70687c","kind":"score.first_scored","summary":"First indexed and scored","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-02","url":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev#chg-chg_01a19e32-62d3-731d-a4bf-7ec9ca70687c"}],"truncated":false,"feedUrl":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev/changelog.json"},"links":{"html":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev","markdown":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev.md","changelogJson":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev/changelog.json","changelogRss":"https://verifymcp.io/servers/dev-homingpigeon-homingpigeondev/homingpigeondev.xml","external":[{"label":"npm package","href":"https://www.npmjs.com/package/homingpigeondev"},{"label":"Socket report","href":"https://socket.dev/npm/package/homingpigeondev"},{"label":"Repository","href":"https://github.com/homingpigeondev/homingpigeondev"},{"label":"Website","href":"https://homingpigeon.dev/"}]}}