About Mr. Morning
Everything the bot offers, how to use it, and answers to common questions.
Features
CoreGreeting windows
Greetings are counted within time windows using your server's configured timezone. All triggers are case insensitive.
/settings triggerwordsTime windows are also adjustable with /settings timewindow Streaks & chains
Days in a row your community hits at least one greeting window. Miss a day and the streak resets to zero.
How many unique members join each daily greeting before it resets. Chains reset per type every day, the longest is tracked on leaderboards.
Leaderboards
Top contributors in your server across greeting types. Use /leaderboard in Discord.
Top streaks across all public servers. Compete with communities worldwide at mrmorning.xyz/leaderboard.
mrmorning.xyz/leaderboard?guild=YOUR_IDAnonymous servers use a short hash instead of their ID.
Downtime streak protection
If the bot is offline for 10+ minutes (e.g. power or internet loss), that period is recorded. Any greeting window that fell during the outage is excused and does not break your streak. Say the greeting in the next window after the bot is back and the streak continues; if you miss that next window too, the streak breaks as normal. Your progress is protected from outages and incidents, not from missing a day.
Commands
ReferenceUser commands
( ) = Optional · [ ] = Required
Data & privacy
Users can choose to show their real username or appear as Anonymous#hash on leaderboards and in chains. Servers can hide their name on the global leaderboard (by-hash links for anonymous guilds). For data access and deletion we follow a GDPR-style flow: you can request a copy of your data or schedule removal, with a 24h delay and option to cancel.
Settings
Requires Admin, Manage Server, or a configured manager role.
America/New_YorkQuick start
Add Mr. Morning to your server
Click "Add to Discord" and authorize the bot. It only requests the permissions it actually needs.
Set your timezone with /settings
Run /settings timezone so greeting windows match your community's day, not UTC.
Say good morning and watch it grow
The streak starts automatically. Use /streak to check progress and /leaderboard to compete with other servers.
Frequently asked questions
Do not grant Administrator. This is bad practice for any bot as if a bot's token is ever compromised, Administrator access allows maximum damage to your server.
/settings timezone and provide a timezone string like America/New_York or Europe/London. All greeting windows will use that timezone.Full list of supported timezones: Wikipedia — tz database time zones
/leaderboard in Discord for in-server results, or visit mrmorning.xyz/leaderboard for the global view. Share your server's public page at mrmorning.xyz/leaderboard?guild=YOUR_SERVER_ID. Anonymous servers use a short hash in place of the ID.
/data request to get a copy of your data (ephemeral reply). Use /data delete to see what will be removed, then the confirm option to schedule deletion (24h delay) or cancel to undo; you can optionally include guild data for servers you own.
/privacy show or /privacy hide to show your real username or appear as Anonymous#hash. Servers can hide their name on the global leaderboard (by-hash links for anonymous guilds) via /settings privacy.
Widgets
EmbedEmbed a live widget on your website to show your server's streak, chain, greetings, and contributor count. You must use your server's Discord guild ID (a long numeric ID, e.g. 18–20 digits).
See what each style looks like
View the widget demo page to see the compact, tall, and banner styles side by side.
Widget URL
Use your server's Discord guild ID in the query string:
To get your guild ID: enable Developer Mode in Discord (Settings → App Settings → Advanced), then right‑click your server icon and choose Copy Server ID.
Widget styles
Add style to the URL to choose the layout:
Embed on your site
Add an iframe to your page. Replace YOUR_GUILD_ID with your server's Discord guild ID:
<iframe
src="https://mrmorning.xyz/widget?guild=YOUR_GUILD_ID"
width="320"
height="180"
frameborder="0"
title="Mr. Morning server widget"
></iframe>
Adjust width and height as needed. For style=tall use around 220×320; for style=banner use around 480×100.