Connect Discord, Slack, Telegram, and more
manage_webhookCreate, update, delete, or test Minecraft server event webhooks that post joins, deaths, chat, and other activity to Discord, Slack, Telegram, Teams, Google Chat, or JSON endpoints.
Instructions
Connect the server to a chat: “send deaths to my Discord”, “post joins to Telegram in Russian”. action create makes one and sends a test message; update changes its events, language, own words, access, or pauses it (enabled false); delete removes it; test sends a test message; telegram_chats lists the chats a Telegram bot can write to. How the user gets what create needs:
discord: channel settings → Integrations → Webhooks → New Webhook → Copy Webhook URL.
slack: api.slack.com/apps → an app → Incoming Webhooks → Add New Webhook; Mattermost and Rocket.Chat take this format too.
teams: the channel → Workflows → “Post to a channel when a webhook request is received”, then its URL.
google_chat: the space → Apps & integrations → Webhooks.
telegram: make a bot with @BotFather and get its token; the user writes /start to the bot, or adds it to a group or channel; then telegram_chats with botToken lists chats, and one's id is chatId.
json: any HTTPS URL that takes the event as JSON; the answer holds a signing secret, shown once. These URLs and bot tokens are secrets: ask the user to paste them, never invent them, and don't repeat them back. topics are event ids,
player.*for a prefix, or*for every notable event (joins, leaves, deaths, advancements, chat, raids, bosses, the server starting and stopping). By default a webhook sees no coordinates and no chat; permissions widens that, but only up to this token's own. Addresses must be https://, and ones on the server's machine or private network are refused, unless the owner allows them in config.yml. test works once per webhook every 10 seconds. Webhooks in config.yml change only there. Needs webhooks:manage.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | For create, every format but telegram | |
| name | No | The webhook; for create, a new name such as discord-deaths | |
| action | Yes | What to do | |
| chatId | No | For create with telegram | |
| format | No | For create | |
| topics | No | Such as ["player.death"], ["player.*"], or ["*"] | |
| enabled | No | For update: false pauses it | |
| botToken | No | For create and telegram_chats, the Telegram bot's token | |
| language | No | Chat messages' language; English by default | |
| messages | No | Its own words by message key, such as {"player.death": "RIP: {message}"}; list_webhooks with options shows the keys and placeholders | |
| permissions | No | What it may see, such as ["events:read", "chat:read"]; default: no coordinates, no chat |