What problem does it solve? Posting to Mastodon programmatically requires handling OAuth tokens, multipart media uploads, URL-aware character counting, and thread chaining, which is error-prone when done with ad-hoc curl commands. ## Core Features & Use Cases - Full Posting API Coverage: Create text statuses, upload up to 4 media attachments with alt text, build polls, schedule posts, control visibility, add content warnings, and chain replies into threads. - Helper Script with Dry-Run: The mastodon_post.py CLI handles character normalization (URLs count as 23 chars), multipart uploads, and a preview mode before anything goes live. - OAuth Re-Authorization: A dedicated script re-registers the OAuth app to change the "via" client label, with documented scope requirements to avoid breaking admin tooling. - Use Case: Ask the agent to research a topic and post a summary to Mastodon; it drafts a plain-text post with hashtags and a source link, dry-runs it to verify the character count, posts it, and returns the live URL. ## Quick Start Post this message to my Mastodon account with two hashtags and confirm the live URL.