The Slack connector.
Channels, messages, and users from the workspace install. Slack is the core surface: it mounts from the workspace install itself, with no key to paste. Every agent your team runs reads the same 8 tools under one permission model.
How access is governed
5
Read tools
Open by default. They run when called, and every call is logged with the endpoint, tool and capability.
3
Write tools
Available through governed Slack workflows. MCP endpoints do not expose write tools.
0
Destructive tools
Slack defines no destructive tools. Nothing here deletes data.
Defaults come from the capability on each tool definition, and an admin can tighten or open any tool individually. The endpoint's capability ceiling can only tighten that policy. An endpoint scoped to read never surfaces a write tool.
Every Slack tool
8 tools, named as the agent sees them.
- send_slack_messagewrite
Send a message to a Slack channel or thread. Supports Slack mrkdwn: *bold*, _italic_, `code`, > blockquote. The response includes `timestamp` (the Slack ts of the posted message) — pass that value as `thread_ts` on subsequent calls to reply in a thread. Threading pattern for multi-item reports: 1) post a short summary to the channel, 2) take the returned `timestamp`, 3) post each item as a separate call with `thread_ts` set to that timestamp.
- search_slack_messagesread
Search for messages in Slack. Supports Slack search syntax: from:@user, in:#channel, etc.
- get_channel_inforead
Get information about a Slack channel including members and recent activity.
- list_channelsread
List available Slack channels the bot has access to.
- get_channel_historyread
Read recent messages from a Slack channel. Use this to summarize a channel, extract info posted there, or get conversation context. Paginated — pass the returned `next_cursor` back as `cursor` to fetch older messages. Use `oldest`/`latest` (Slack ts, unix seconds as a string e.g. "1704067200") to bound a time range and avoid pulling the full channel. Messages with `reply_count > 0` have threaded replies — call `get_thread_replies` to read those.
- get_thread_repliesread
Get all replies in a Slack thread for conversation context.
- add_reactionwrite
Add an emoji reaction to a message.
- upload_filewrite
Upload a file or text content to a Slack channel.
Use it from any agent
The same Slack tools reach Claude Code, Cursor, Claude Desktop or your own agent through one MCP endpoint. The endpoint is scoped to a group, the token is issued per group and revocable from the dashboard, and an allowed-tool list and capability ceiling limit what it exposes. Reads run. Gated writes refuse unless an admin opens them. Destructive tools remain unavailable over MCP.
{
"mcpServers": {
"growth": {
"type": "http",
"url": "https://app.notara.ai/mcp/g/acme/growth",
"headers": {
"Authorization": "Bearer ntr_mcp_xxxxxxxxxxxxxxxxxxxx"
}
}
}
}The URL and token are placeholders. Real endpoints are issued per group from the dashboard.
Setup
- 01
Install Notara in your Slack workspace. The Slack connector mounts from the install itself. There is no key to create and nothing to paste.
- 02
The tools appear with their capability defaults already set. Tighten or open any of them per tool, then invite the agent to a channel or issue an MCP token.
Connect Slack once. Use it everywhere.
Use Notara directly, or bring us the workflow that needs to be redesigned and built.

