MXcatch
Use case

Send email to a Slack channel

Give your team a real address on your domain — support@, billing@, alerts@ — and have everything it receives land in the channel that already has their attention.

Why not a shared mailbox

The default answer to "we need an address the whole team can see" is a shared mailbox, and it is a bad one. Somebody has to own the password, a seat gets billed, and nobody actually checks it — mail sits unread in a place that is nobody's first tab.

Slack's own email-to-channel feature solves the visibility problem, but it sits behind a paid plan and it gives you an address on Slack's domain rather than your own. Handing customers acme-support-aaa1bb@slack-mail.example is not the look you want on an invoice.

MXcatch gives you support@your-domain.com, posts everything it receives into the channel, and does not care which Slack plan you are on.

Setting it up

  1. Create an incoming webhook in Slack. In your workspace's app settings, add an Incoming Webhook and pick the destination channel. Slack gives you a URL — that URL is bound to that one channel.
  2. Add your domain to MXcatch and point its MX records at us. Per-provider instructions.
  3. Create the aliassupport, alerts, whatever you want before the @.
  4. Add a Slack action to that alias and paste the webhook URL.

Send a test message. It shows up in the channel with the sender, the recipient address, the subject, and a preview of the body.

Useful arrangements

One address per channel

Because each incoming webhook URL is bound to a single channel, routing by address is just a matter of which alias holds which action. billing@ to #finance, support@ to #support, security@ to #security-alerts.

Slack plus your inbox

Actions are independent. Add a forward action next to the Slack one and the message goes to the channel and to a real mailbox, so there is a searchable copy and a repliable thread.

Vendor alerts you cannot configure

Plenty of services only notify by email. Give each one its own address on a catch-all domainvendor-uptime@, vendor-billing@ — and route each to the channel that should see it. As a bonus, you learn immediately which vendor leaked your address when spam starts arriving at one of them.

Filtering the noise

Posting every message to a channel is how channels get muted. Use routing rules to match only what matters — subject contains failed, sender ends with your monitoring vendor's domain — and let the rest go quietly to the inbox.

When you need more than a post

The Slack action formats a message for humans. If you want the mail as structured data — to open a ticket, extract a PDF, or feed a pipeline — use a webhook action instead, or alongside it. Same message, one goes to the channel and one to your code.

Frequently asked questions

How do I forward emails to a Slack channel?

+
Create an incoming webhook in your Slack workspace, then add a Slack action to any MXcatch alias and paste the URL. Every message that arrives at that address is posted to the channel.

Do I need a paid Slack plan?

+
No. Incoming webhooks are available on the free Slack plan. Slack's own email-to-channel integration is the one that requires a paid plan — this replaces it.

Do teammates need MXcatch accounts?

+
No. They read the mail in Slack. Only the person configuring the domain and aliases needs an account, which is why one free plan often covers a whole team.

Can I post different addresses to different channels?

+
Yes. Each alias has its own actions, so support@ can post to #support and billing@ to #finance. Each incoming webhook URL is bound to one channel.

Does this work with Discord?

+
Yes. Discord incoming webhooks have their own action type and are configured the same way.

Can I still get the mail in my normal inbox?

+
Yes. Add a forward action alongside the Slack one. Actions run independently, so the message lands in Slack and in your mailbox.

Give your team an address they will actually read.

One domain and ten aliases are free forever — enough for most teams.

Create your free account