This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

Enable Mastodon Apps


Despite Mastodon implying that you would use this plugin for engaging on Mastodon (when you have enabled it for that, see below), the plugin is useful when installed on a plain WordPress.

When you use a Mastodon app, you’ll enter your own blog URL to connect and log in to your blog in the following screens.

You’ll then see just the posts on your blog which can already be useful in a multi-author environment (e.g. private blogs). You can also use that Mastodon app to create simple posts with a message + attachment(s) which can be better suited for your usecase than using the Gutenberg-capable WordPress mobile app.

When used in combination with the ActivityPub (for being followed via Mastodon) and Friends (for following people on Mastodon or via RSS) plugins, the Enable Mastodon Apps plugin will show you your feed of people you follow and you can follow and unfollow people from within the app.

Be aware that an app will have a post format associated (see the settings page). The plugin will check for the existance of the Friends plugin to find a resonable default (status with Friends plugin, standard otherwise). When you create a post with your Mastodon app, the post format that you selected for the app will be used.

The plugin has been tested with quite a number of Mastodon clients, among them are:

Many more, see the Third-party apps section on Each app might have its quirks, [please report an issue when you have troubles[( There is also a chance that the API has not been implemented yet (see below.)

Mastodon API Implementation

The plugin implements the Mastodon API as documented on The OAuth API for logging in (you will see your WordPress login screen when logging in to your Mastodon app, it also works with 2FA plugins) and the REST API for accessing your data.

Here is a list of endpoints and their implementation status:

Unmentioned endpoints are not implemented. Contributions welcome!

Endpoints around interacting with non-local users require the ActivityPub plugin. Following users requires the Friends plugin. Lists-related endpoints require the Friends Roles plugin.


  • You authorize Mastodon Apps through your own WordPress’s login UI.
  • The Mastodon Apps settings page.


September 13, 2023
Thank you so much for writing this , so useful for Status updates.
June 25, 2023 1 reply
The only functionality it seems to have working is log in via Mastodon app. Gives error message when uploading any content via my Mastodon apps (tried Icecube, Metatext and Mastoot). Checked the support forum and somebody else is having the same issue but has received no response so it doesn’t give me much hope. Look forward to one day seeing this working, but not worth installing right now.
Read all 3 reviews

Contributors & Developers

“Enable Mastodon Apps” is open source software. The following people have contributed to this plugin.


“Enable Mastodon Apps” has been translated into 1 locale. Thank you to the translators for their contributions.

Translate “Enable Mastodon Apps” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Implement Autoloader (#73)
  • Add scope adherence (#76)


  • Fix missing image attachments for WordPress posts, props @thatguygriff (#72)


  • Address an incompatibility with the IndieAuth plugin (#65)


  • Thanks @toolstack for lots of PRs with small fixes and enhancements!
  • Fixed compatibility with version 2.0.0 of the ActivityPub plugin (#60) thanks @toolstack!
  • Strip the protocol from the home_url (#52) props @toolstack
  • Add additional warning about changing the default post format (#53) props @toolstack
  • Make sure to decode html_entities for blog_info() (#51) props @toolstack
  • Enable local/public timeline (#62) props @toolstack
  • Check to make sure the current user has edit_post posting (#61) props @toolstack
  • Fix duplicate line generation in whitespace code (#55) props @toolstack


  • Add a setting to implicitly re-register the next unknown client (#48)
  • Add Instance-Endpoint Filters (#45) props @pfefferle


  • Communicate the current settings inside Mastodon using an Announcement (#44)
  • Bring back library adaptations which hopefully solves the “No client id supplied” problem


  • Use a Custom Post Type to for mapping post ids (#42)
  • Improve response time after transients expired (#41)


  • Major fixes for Ivory, now we’re fullfilling (most of?) their assumptions (#37)


  • Fix media upload in Ice Cubes and potentially other clients (#35)


  • Fix boost attribution (#33)


  • Improve notification pagination (#29)
  • Compatibility fixes for Friends 2.6.0 (#31)


  • Improve debug logging.


  • Fix little inconsistencies with min_id and max_id.
  • Add a debug mode (#23).


  • Implement min_id to avoid double postings in the IceCubes app.


  • Fixes for Mastodon for iOS and Mammoth.
  • Fix deleting of toots.


  • Ivory should work now.
  • Posting: wrap mentions and links in HTML tags
  • Attachments: try harder to deduplicate them, identify attachment types
  • Admin: More tools for cleaning out stale apps and tokens
  • Search: You can now search for URLs so that you can reply to them


  • Implemented: Attachment descriptions (and updates for it)
  • Use the first line of a post as the post title if we’re using a standard post format


  • Implemented: search for a specific remote account to follow it
  • Implemented: Notifications for mentions
  • Added: Option whether replies should be posted as comments on the messages or as new posts
  • Fixed: Ivory should now be able to connect


  • Improve compatibility of Swift based apps
  • Fix fatal error on admin page


  • Post replies as comments (#3)
  • Fix a fatal when saving the default post format