Run your first Discord tools
This is the shortest verified path from a local install to a real Discord tool call. You will first prove the connection with a read-only request, then send one message to a test channel.
Before you begin
- Keep the bot installed in your private test server.
- Confirm that your restarted MCP client lists discord-mcp’s tools.
- Have the bot token and test server ID available privately.
-
Validate the token against Discord.
doctorreads the current terminal environment, not the client config. Set the token only for this terminal and run the online checks:Terminal window read -rsp 'Discord bot token: ' DISCORD_TOKEN && printf '\n'export DISCORD_TOKENdiscord-mcp doctor --onlineunset DISCORD_TOKENTerminal window $env:DISCORD_TOKEN = Read-Host 'Discord bot token' -MaskInputdiscord-mcp doctor --onlineRemove-Item Env:DISCORD_TOKENThe first example requires Bash; the second requires PowerShell 7. If neither is available, skip this optional diagnostic rather than placing the token in a command or shell history.
Find the
token-onlinerow with statusOKand the messageDiscord accepted tokenin the report. Exit1can still mean the online token check passed with another warning; inspect every line. Fix failures on exit2. -
Prove the client connection read-only.
In the MCP client you restarted during Unit 2, ask:
Use
users_get_currentand tell me the bot username and ID. Do not call any other tool.The tool needs no arguments. A successful result identifies the same bot you created in the Developer Portal.
-
Discover the channel ID.
Replace the example with your copied server ID:
Use
channels_listwithguild_id999000999000999000. Return the ID forgeneral.The result includes
channels[].id. Keep the ID for the next step. -
Send one test message.
Use
messages_sendwithchannel_id112233445566778899and contenthello from discord-mcp.A successful result contains
message_id,channel_id,jump_url, andtimestamp. Openjump_urlto verify the message in Discord.
Checklist for moving on
Section titled “Checklist for moving on”-
users_get_currentreturned the bot account I created. -
channels_listreturned the channel ID from my private test server. -
messages_sendreturnedmessage_id,channel_id,jump_url, andtimestamp. - I opened
jump_urland verified the test message in Discord.
Next, read How a tool call works or open the tool reference.