Запуск создания аккаунта/входа во внешнем сервисе при входе пользователя в Discourse

Мой ответ исходит из предположения, что вы используете Discourse в качестве провайдера идентификации (с его интерфейсами входа/регистрации), и хотите оставить всё именно так.

На стороне Discourse его включение так же просто, как

Однако вы упомянули, что создаёте плагин.

Если вы реализуете «путь на сервере» как новое действие контроллера в плагине Discourse, вы сможете получить пользователя из сессии, вызвать сторонние сервисы и вернуть JWT вашему клиенту.