Build an AI Assistant in Slack That Can Actually Do Things
The assistant should come to where work happens
Your team lives in Slack. A separate "AI portal" they must remember to visit will be ignored by week two. The pattern that sticks: an assistant that sits in Slack channels, answers when mentioned, and executes real tasks — because Slack is already open.
What "actually do things" means
The difference between a toy and a tool is system access. A useful Slack assistant can:
- Answer from real data: "@oido how many open orders for Customer X?" hits your database, not the model's imagination.
- Create and update records: file the Linear ticket, update the CRM stage, schedule the report.
- Run scheduled work: post the Monday morning sales summary at 8am without being asked, and flag anomalies in it.
- Escalate properly: when unsure, ask in-thread instead of acting — the thread itself becomes the approval trail.
Each capability is a tool connection. We wire these over MCP, which means the same agent that answers in Slack can use GitHub, Postgres, Notion, Linear, or any MCP server — see the full integrations list.
Guardrails that make it deployable
An assistant with database access needs rules, not vibes:
- Read-broad, write-narrow. Answering questions from any table is low-risk. Writing is allowlisted per action, per channel.
- Approval for consequences. Actions that touch customers or money post a summary and wait for a 👍 from a named role.
- Channel scoping. The assistant in #support sees support tooling; it doesn't answer payroll questions there.
- Every action logged with who asked, what ran, what changed. When someone asks "why did the CRM update?", there's an answer.
Slack-specific details worth knowing
Use a proper Slack app with granular bot scopes (not a user token), respond in threads to keep channels readable, and use ephemeral messages for "only you can see this" answers like personal reminders. Rate-limit outbound messages — an agent stuck in a loop posting to #general is a memorable way to lose organizational trust.
Where teams start
The first week's killer feature is almost always plain questions against internal data — the thing that previously required asking a colleague and waiting. Action-taking follows once the team trusts the answers. That trust curve is why we deploy read-only first, always.
This is the core of what our platform does across Slack, WhatsApp, and other channels — the same agent, wherever your team and customers already are.