Agent skill
discord-send-message
Send messages to Discord channels via the Discord API. Use this skill when the user wants to send text messages, notifications, or formatted content to a Discord channel.
Install this agent skill to your Project
npx add-skill https://github.com/EvolutionAPI/evo-nexus/tree/main/.claude/skills/discord-send-message
SKILL.md
Discord Send Message
Send messages to Discord channels using the Discord API v10. This skill supports plain text messages, formatted markdown content, and embeds.
When to Use This Skill
Use this skill when the user wants to:
- Send a message to a Discord channel
- Post a notification or announcement
- Send formatted text with markdown
- Post embeds with rich content
- Reply to or interact with Discord programmatically
Prerequisites
DISCORD_BOT_TOKENenvironment variable must be set- Bot must be a member of the target server
- Bot must have "Send Messages" permission in the target channel
- Valid Discord channel ID (18-19 digit snowflake ID)
Instructions
When the user requests to send a Discord message:
-
Validate Requirements
- Confirm
DISCORD_BOT_TOKENis set in environment - Verify channel ID is provided (18-19 digit number)
- Check that message content is not empty
- Confirm
-
Prepare the Message
- Extract the message content from user request
- Format any markdown if needed (Discord supports markdown)
- For embeds, structure as JSON with title, description, color, fields, etc.
-
Make the API Request Use the following curl command structure:
bashcurl -X POST "https://discord.com/api/v10/channels/{CHANNEL_ID}/messages" \ -H "Authorization: Bot ${DISCORD_BOT_TOKEN}" \ -H "Content-Type: application/json" \ -d '{"content": "Your message here"}'Replace:
{CHANNEL_ID}with the actual channel ID"Your message here"with the actual message content
-
Handle Response
- Success (200): Message sent successfully, return message ID
- 401 Unauthorized: Invalid bot token
- 403 Forbidden: Missing permissions or bot not in server
- 404 Not Found: Channel doesn't exist or bot can't see it
- 400 Bad Request: Invalid message content
-
Report Results
- Confirm message was sent successfully
- Provide the message ID for reference
- If error occurs, explain the issue clearly
Message Format Options
Plain Text
{
"content": "Hello from Claude Code!"
}
Markdown Formatting
{
"content": "**Bold text** *Italic text* `code` [Link](https://example.com)"
}
Basic Embed
{
"embeds": [{
"title": "Notification",
"description": "This is an embed message",
"color": 3447003,
"fields": [
{
"name": "Field Name",
"value": "Field Value",
"inline": false
}
]
}]
}
Text + Embed
{
"content": "Check out this embed:",
"embeds": [{
"title": "Title",
"description": "Description"
}]
}
Validation Rules
Before sending:
- Message content must not exceed 2000 characters
- Embed description must not exceed 4096 characters
- Embed title must not exceed 256 characters
- Total embed size must not exceed 6000 characters
- Channel ID must be numeric (snowflake format)
Error Handling
Common Errors
401 Unauthorized
- Check that
DISCORD_BOT_TOKENis set correctly - Verify token hasn't expired or been regenerated
403 Forbidden
- Bot needs "Send Messages" permission in channel
- Bot must be added to the server
- Check channel permission overrides
404 Not Found
- Channel ID is incorrect
- Channel was deleted
- Bot doesn't have "View Channel" permission
400 Bad Request
- Message content is empty or too long
- Invalid JSON in embed structure
- Invalid embed field values
Security Notes
- Never expose the bot token in messages or logs
- Validate all user input before sending to Discord
- Don't send sensitive information unless channel is private
- Respect Discord's rate limits (5 messages per 5 seconds per channel)
Examples
See examples.md for detailed usage scenarios.
API Reference
- Endpoint:
POST /channels/{channel.id}/messages - Discord API Version: v10
- Documentation: https://discord.com/developers/docs/resources/channel#create-message
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
data-create-viz
Cria visualizações de dados de qualidade profissional com Python no tema Evolution (fundo escuro, acento
cs-customer-escalation
Empacota uma escalação para Devs, Produto ou Davidson com contexto completo. Use quando um bug precisa de atenção além do suporte normal, vários clientes reportam o mesmo problema, um cliente está ameaçando cancelar, ou um problema ficou sem resolução além do SLA. / Package an escalation for engineering, product, or leadership with full context. Use when a bug needs engineering attention beyond normal support, multiple customers report the same issue, a customer is threatening to churn, or an issue has sat unresolved past its SLA.
mkt-draft-content
Draft blog posts, social media, email newsletters, landing pages, press releases, and case studies with channel-specific formatting and SEO recommendations. Use when writing any marketing content, when you need headline or subject line options, or when adapting a message for a specific platform, audience, and brand voice.
gog-tasks
Create, manage, and prioritize tasks and todo items. Convert emails to tasks, set priorities (P0-P3) and categories (Work/Personal/Errands/Admin), review daily priorities, track blocked and overdue tasks. Use when user mentions tasks, todos, action items, or wants to convert emails to tasks. Requires confirmation before creating or deleting tasks.
discord-get-messages
Retrieve messages from Discord channels via the Discord API. Use this skill when the user wants to read, search, or analyze messages from a Discord channel.
cs-customer-research
Pesquisa multi-fonte sobre pergunta ou tópico de cliente com atribuição de fontes. Use quando um cliente pergunta algo que precisa ser verificado, investigando se um bug foi reportado antes, verificando o que foi dito anteriormente a uma conta específica, ou coletando contexto antes de redigir uma resposta. / Multi-source research on a customer question or topic with source attribution. Use when a customer asks something you need to look up, investigating whether a bug has been reported before, checking what was previously told to a specific account, or gathering background before drafting a response.
Didn't find tool you were looking for?