Why? WHY??? Well, because there’s the Mastodon API, there’s the ActivityPub backend spec, and there’s a ActivityPub Client spec.
Mastodon is widely deployed and “easy” to check for, so that will work most reliably.
And, every client app dev writes their own link checker code: different programming languages and licenses is one reason that it can’t be re-used directly, although documenting how to fingerprint different types would be a good first step.
🧵/4