How rate limiting has been going: how many times Discord asked Omnicord to slow down (the request layer waits automatically), and the invalid-request counter that matters because Discord temporarily bans an IP after 10,000 invalid responses in ten minutes. Useful when calls feel slow.
Identity and status of a connected Discord bot: bot user, application, guild count, enabled gateway intents, and the Omnicord version. With more than one bot configured, pass bot to pick which (list_servers shows the configured bots). Use run_setup_check for a full health check with fix instructions.
End-to-end health check of the Omnicord setup: token presence and validity, privileged gateway intent toggles, guild count against Discord's verification thresholds, and default guild membership. Every failed check comes with instructions for fixing it. With more than one bot configured, pass bot to check a specific one. Run this first when anything misbehaves.
Structured snapshot of a server: identity, member counts, boost status, channel outline grouped by category, and role count. The natural first call when starting work on a server.
All channels in a server grouped by category, with type and topic. Filter by type: text, voice, forum, stage, announcement, category.
All roles in a server, highest first, with color, position, and a plain-language digest of their key permissions.
Recent messages from a channel as a digest: author, time, content, attachments, reactions, and resolved reply references. Returns oldest first. Use next_before to page further back.
Search the server's message history through Discord's native search index. Covers every channel the bot can read, or one channel if you name it, and looks inside embeds and polls, not just plain text. Matching is whole-word full text, not substring, so search for words rather than fragments. Filter by author, by what a message carries (image, link, file, and so on), or by pinned state, and order by newest first or by relevance.
Find specific members by a name fragment, or list those holding a given role. For the whole roster use list_members; for one member's full profile use get_member; to turn a fuzzy name into an id use find. Name search uses Discord's member search; role filtering walks the member list and reports if it hit the paging cap.
One member in detail: identity, nickname, roles by name, join date, and timeout state. Accepts a user ID or a name.
Universal name resolver. Give it a name fragment and get ranked candidates across channels, roles, and members with their IDs. Use this when unsure what an entity is called or to grab an ID once and reuse it.
Send a message to a channel, optionally as a reply or with embeds. For a private message to one person use send_dm; to post under a custom name and avatar use send_webhook_message; to send later use schedule_message. Mentions are suppressed by default; raise the mentions mode only deliberately. Supports dry_run.
+143 more tools listed on main page