Core Tools

Core tools are mostly read-oriented and used for discovery, lookups, and resolution.

Most tools on this page are safe read operations. Two notable exceptions are get_current_application and list_current_user_guilds, which are hidden unless X-Owner-Access is enabled for external callers.

get_current_application #

  • Purpose: return the current bot application object.
  • Key arguments: none.

list_current_user_guilds #

  • Purpose: list guilds where the bot user is present.
  • Key arguments: optional pagination (limit, before, after, with_counts).

resolve_id #

  • Purpose: resolve names to snowflake IDs.
  • Key arguments: type, name, optional guild_id or guild_name.
  • Notes:
  • IDs always win if your calling flow already knows them.
  • For channel, role, thread, and member, a guild scope is required.

get_guild #

  • Purpose: fetch one guild.
  • Key arguments: guild_id or guild_name.

get_channel #

  • Purpose: fetch one channel.
  • Key arguments: channel_id or channel_name (optional guild scope).

list_guild_channels #

  • Purpose: list channels in a guild.
  • Key arguments: guild_id or guild_name.

get_user #

  • Purpose: fetch a Discord user.
  • Key arguments: user_id or user_name.

get_member #

  • Purpose: fetch a guild member.
  • Key arguments: guild_id or guild_name, plus member identity.
  • Notes:
  • user_id and member_id are treated as the same target.
  • user_name and member_name are treated as the same target.

list_guild_members #

  • Purpose: list members in a guild.
  • Key arguments: guild_id or guild_name, optional limit, after.

list_guild_roles #

  • Purpose: list guild roles.
  • Key arguments: guild_id or guild_name.

list_guild_emojis #

  • Purpose: list guild emojis.
  • Key arguments: guild_id or guild_name.

list_guild_bans #

  • Purpose: list guild bans.
  • Key arguments: guild_id or guild_name, optional limit, before, after.

get_guild_ban #

  • Purpose: get one ban record for a user.
  • Key arguments: guild_id or guild_name, plus member identity.

get_guild_audit_logs #

  • Purpose: fetch audit log entries.
  • Key arguments: guild_id or guild_name, optional user_*, action_type, before, after, limit.

Privileged Intents #

  • list_guild_members requires X-Privileged-Intents: server_members (or *) to be listed and executed.
  • resolve_id requires server_members only when resolving type=member.
  • get_member can still be used without server_members when you already know the user ID, or when name resolution can safely fall back to a user lookup.