For Agents
Post and edit Mastodon statuses, boost or favourite posts, manage bookmarks and pins, translate content, and walk thread context — all against any Mastodon instance the user authenticates against.
Get started with Mastodon API in minutes using your preferred integration method.
# Add to your MCP client config (Claude Desktop, Cursor, Windsurf)
{
"jentic": {
"url": "https://api.jentic.com/mcp",
"auth": "oauth"
}
}
# Then ask your agent:
"post to Mastodon"
# → Jentic returns the GET /events tool with parameter schema, agent executes.What an agent can do with Mastodon API API.
Post a new status to a Mastodon instance with visibility and language settings
Edit or delete a previously published status and inspect its edit history
Boost (reblog) and unboost a status to amplify it on the user's timeline
Favourite, bookmark, or pin a status, with matching undo operations
GET STARTED
Use for: I need to post a status to my Mastodon account about a product launch, Edit my last Mastodon post to fix a typo, Delete the Mastodon status with ID 12345, Boost the Mastodon post linked in this message
Not supported: Does not handle account follow management, direct messages, instance administration, or media upload — use for status-level publishing, interactions, and thread retrieval only.
Mastodon is a federated, open-source social network where each instance hosts its own users while interoperating across the wider fediverse. This subset of the Mastodon API focuses on the statuses surface — posting, editing, deleting, boosting, favouriting, bookmarking, pinning, and translating posts, plus retrieving conversation context and edit history. It is the right toolkit when an agent needs to publish to a Mastodon instance or moderate a thread on behalf of a user.
Mute a conversation thread to suppress notifications without leaving it
Retrieve a status's parent and child context to walk a full thread
Translate a status into another language using the instance's translation backend
Patterns agents use Mastodon API API for, with concrete tasks.
★ Cross-post to Mastodon from a content workflow
Marketing or community teams publishing on multiple networks can mirror posts to Mastodon by calling POST /statuses with the rendered text, visibility, and language. The endpoint returns the new status's ID, which can be stored alongside cross-post metadata for later editing or deletion. This works against any Mastodon instance, so brands hosted on their own servers and those on mastodon.social use the same call.
Call POST /statuses with status text 'New release shipped today — details on the blog' and visibility 'public' to publish to the user's instance
Walk a thread and summarise the conversation
Researchers and community managers can pull the full context around a status — both ancestors and descendants — using GET /statuses/{id}/context. The response groups parents and children separately, making it straightforward to render a threaded view or feed an LLM a complete conversation for summarisation. Pair this with the source endpoint to inspect the original markdown of the focal post.
Call GET /statuses/{id}/context for the focal status, concatenate ancestor and descendant statuses, and feed the joined text to the assistant for summarisation
Curate a personal bookmark and pin set
Power users who treat their Mastodon profile as a curated feed can manage pins and bookmarks programmatically. POST /statuses/{id}/bookmark saves a post for later, POST /statuses/{id}/pin highlights it on the profile, and the matching unpin and unbookmark endpoints reverse the action cleanly. This is useful for daily-digest bots that pin a featured post each morning.
Call POST /statuses/{id}/pin to feature the morning announcement, then POST /statuses/{previous_id}/unpin to remove yesterday's pinned status
Agent-driven Mastodon posting via Jentic
An AI assistant can be granted scoped Mastodon access through Jentic so it can publish on behalf of a user without ever holding the access token in memory. The agent expresses intent ('post my weekly update to Mastodon'), Jentic resolves to POST /statuses, injects the bearer token, and returns the new status URL. Multi-instance support is handled through the {instance} server template.
Use Jentic to search 'post to Mastodon', load POST /statuses, and execute it with the user's stored bearer token to publish a weekly update
22 endpoints — mastodon is a federated, open-source social network where each instance hosts its own users while interoperating across the wider fediverse.
METHOD
PATH
DESCRIPTION
/statuses
Post a new status
/statuses/{id}
View a single status
/statuses/{id}
Edit a status
/statuses/{id}
Delete a status
/statuses/{id}/context
Get parent and child statuses
/statuses/{id}/favourite
Favourite a status
/statuses/{id}/reblog
Boost a status
/statuses/{id}/translate
Translate a status
/statuses
Post a new status
/statuses/{id}
View a single status
/statuses/{id}
Edit a status
/statuses/{id}
Delete a status
/statuses/{id}/context
Get parent and child statuses
Three things that make agents converge on Jentic-routed access.
Credential isolation
Mastodon bearer tokens are scoped per instance and stored encrypted in the Jentic vault. Tokens are injected as Authorization: Bearer headers at call time and never enter the agent's prompt or transcript.
Intent-based discovery
Agents search Jentic with intents like 'post to Mastodon' or 'boost a status' and Jentic returns the matching operation with its input schema, so the agent doesn't have to read docs.joinmastodon.org.
Time to first call
Direct Mastodon integration: 1-2 days to handle the per-instance OAuth dance, token storage, and error handling. Through Jentic: under 1 hour once the user has authenticated their instance once.
Alternatives and complements available in the Jentic catalogue.
Bluesky API
AT Protocol-based decentralised microblog with overlapping feature surface
Choose Bluesky for an alternative decentralised network when the user community lives there instead of the fediverse
X (Twitter) API
Centralised microblog network — broader reach, paid API tiers
Pick X when the audience requires the centralised network's reach and the user has paid API access
Slack API
Cross-post Mastodon updates into a Slack channel for internal awareness
Use Slack alongside Mastodon when public posts also need to be mirrored into team channels
Specific to using Mastodon API API through Jentic.
What authentication does the Mastodon API use?
The Mastodon API uses HTTP bearer authentication — an Authorization: Bearer {access_token} header obtained via the OAuth flow on the user's instance. Jentic stores tokens encrypted per-user and injects them at call time, keeping them out of the agent's context.
Can I post a status with the Mastodon API?
Yes. POST /statuses creates a new status with parameters for status text, visibility (public, unlisted, private, direct), and language. The response returns the new status's ID, URL, and account details, which you can use for subsequent edits or deletes.
How do I work with multiple Mastodon instances?
The base URL uses an {instance} template — every Mastodon server (mastodon.social, hachyderm.io, your self-hosted instance) implements the same endpoints. Configure the instance hostname per credential and the same operations apply across the fediverse.
How do I post to Mastodon through Jentic?
Search Jentic for 'post to Mastodon', load POST /statuses, and execute it with the user's instance bearer token. Jentic returns the created status, including its URL. Sign up at https://app.jentic.com/sign-up.
Can the Mastodon API translate a post into another language?
Yes. POST /statuses/{id}/translate asks the instance's configured translation backend to translate a status. Availability depends on the instance — admins can enable or disable the feature, so check the response status before relying on it.
How do I retrieve the full context of a Mastodon thread?
Call GET /statuses/{id}/context for the focal status. The response contains an 'ancestors' array (parents) and 'descendants' array (replies), letting you reconstruct the full conversation in a single call.
/statuses/{id}/favourite
Favourite a status
/statuses/{id}/reblog
Boost a status
/statuses/{id}/translate
Translate a status