Read Discord messages
TL;DR
About
Point it at any Discord channel, DM, group DM or thread your account can open and you get its latest messages back, newest first, as many as you ask for. Discord's own API route is a bot that a server admin has to add, and that bot also needs the Message Content intent before it sees any text. This reads as the account you are already signed in with, so it sees what you see in the app and nothing more. A typical run: a volunteer mod on a 3,000-member indie game server pulls the last 150 messages from a bug reports channel each morning, has Claude group the repeated crash reports, then works through the worst ones by hand. Text arrives as Discord stores it, so mentions stay as <@id>. Image-only posts come back with empty text, and reactions and reply links are not returned.
Input
channelUrl requiredFull channel URL: https://discord.com/channels/<guildId>/<channelId> for a server channel, or https://discord.com/channels/@me/<channelId> for a direct message (from discord.com/list_dms).
limit optionalHow many messages to return, newest first. Fewer come back when the channel is shorter.
Default: 20Output
count requiredmessages requiredNewest first.
channelId requiredExample output
Shape only: placeholder values generated from the output schema, not a real run.
{
"count": 3,
"messages": [
{
"author": "…",
"content": "…",
"messageId": "abc123",
"timestamp": "…",
"authorDisplayName": "…"
}
],
"channelId": "abc123"
}