Slack Integration
Connect Slack to sync selected channels and threads into your ContextStream workspace as searchable memory events.
Per-Workspace Integration
The Slack integration is configured per workspace. Each ContextStream workspace can connect to a different Slack workspace or use different channel configurations. This allows teams to keep their contexts separate while sharing the same ContextStream organization.
What You Get
Once connected, your Slack conversations enrich AI interactions across ContextStream. Here's how it adds value:
Automatic Context Enrichment
When you call context_smart or session_smart_search, relevant Slack discussions and decisions are automatically included in AI responses. No extra tools needed — your existing prompts become smarter.
Example: Ask "What did the team discuss about the API redesign?" and get relevant threads surfaced without calling any Slack-specific tool.
Extracted Knowledge
ContextStream automatically distills decisions, lessons, and insights from high-engagement Slack threads. These become searchable memory that persists across sessions.
Example: Use integration(provider="slack", action="knowledge") to see "We agreed to deprecate the v1 API" extracted from #engineering discussions.
High-Signal Discussions
Important conversations are automatically identified based on reactions, replies, and participant count.
Example: Use integration(provider="slack", action="discussions") to find the most engaged threads.
Unified Memory
Slack messages become memory events alongside your manual captures. Use memory_search or session_recall to find Slack context mixed with your other decisions and notes.
Example: "What do we know about deployment process?" returns your captured decisions AND relevant Slack discussions.
Example Prompts
Try these prompts in your AI editor to see Slack integration in action:
Overview
The Slack integration brings your team conversations into ContextStream, making them searchable and available as context for your AI tools. Messages, threads, and reactions are synced as memory events that can be retrieved via MCP tools or the search API.
Real-Time Sync
Messages are captured via webhooks as they happen, with periodic syncs to catch missed updates.
Semantic Search
Find conversations by meaning, not just keywords. Search across all synced channels instantly.
Smart Distillation
High-engagement threads are scored and prioritized based on reactions and replies.
Setup Guide
1. Connect Your Slack Workspace
- 1Go to your ContextStream workspace settings and navigate to Integrations.
- 2Click Connect on the Slack card to start the OAuth flow.
- 3Authorize ContextStream to access your Slack workspace. You'll need workspace admin permissions.
- 4Once connected, the Slack card will show "Connected" status.
2. Select Channels to Sync
- 1Click Configure on the connected Slack integration.
- 2Browse available channels from your Slack workspace.
- 3Select the channels you want to sync. Important: The ContextStream bot must be invited to private channels to access them.
- 4Optionally, link channels to specific ContextStream projects for organized context retrieval.
3. Initial Sync & Backfill
After selecting channels, ContextStream will perform an initial sync to import recent messages. You can configure the backfill period (default: 30 days) in the integration settings.
Click Sync Now at any time to trigger an immediate sync of all configured channels.
What Gets Synced
| Content Type | Details | Metadata Captured |
|---|---|---|
| Messages | All messages from configured channels | Author, timestamp, channel, thread info |
| Threads | Full thread conversations with all replies | Reply count, participants, parent message |
| Reactions | Emoji reactions (aggregated count) | Total reaction count for engagement scoring |
| File Shares | File share events and metadata | File name, type, sharing user |
| User Profiles | Slack user info for attribution | Display name, avatar, email (for mapping) |
Smart Distillation
Not all Slack messages are equally important. ContextStream uses engagement signals to score and prioritize content, making high-value discussions easier to find.
Scoring Factors
- +Reactions: Messages with more reactions score higher
- +Replies: Threads with many replies indicate important discussions
- +Unique Participants: More people joining a thread = higher signal
- +Mentions: @channel, @here, and user mentions boost relevance
High-scoring threads are surfaced in the Key Discussions section of the Slack Dashboard and prioritized in search results.
MCP Tools (v0.4.x)
Access Slack data through the consolidated integration tool available in Claude Code, Cursor, Windsurf, and other MCP-compatible editors.
Use integration(provider="slack", action="...") for Slack-specific queries.
integration(provider="slack", action="stats")Get overview statistics: total messages, threads, active users, channel stats, and sync status.
integration(provider="slack", action="channels")List synced channels with message counts, thread counts, and last activity timestamps.
integration(provider="slack", action="search", query="...")Search Slack messages by content. Filter by channel and timeframe (days param). Sort by relevance, recent, or engagement.
integration(provider="slack", action="discussions")Get high-engagement threads sorted by reactions and reply counts. Filter by channel and timeframe (days param).
integration(provider="slack", action="contributors")Get top contributors by message count with user profiles.
integration(provider="slack", action="activity")Get recent activity feed, optionally filtered by channel and timeframe (days param).
integration(provider="slack", action="knowledge")Get decisions, lessons, and insights automatically extracted from Slack conversations. Filter by knowledge type (decision, lesson, fact, insight).
integration(provider="slack", action="summary")Get a high-level summary of Slack activity with trends, top discussions, and extracted knowledge. Customize timeframe with the days param.
integration(provider="all", action="search", query="...")Cross-SourceSearch across Slack and GitHub in a single query. Results ranked by relevance across sources. Sort by relevance, recent, or engagement.
integration(provider="all", action="summary")Cross-SourceGet a unified summary across Slack and GitHub with combined activity stats, highlights, and key topics. Great for understanding overall team activity.
integration(provider="all", action="knowledge")Cross-SourceGet decisions, lessons, facts, and insights from all connected integrations in a single query. Filter by knowledge type (decision, lesson, fact, insight) and optionally search by query.
Slack Dashboard
Access detailed analytics and insights from the Slack Dashboard in your workspace settings.
Overview Stats
Total messages, threads, active users, and channels synced at a glance.
Activity Chart
Visualize message and thread activity over time to spot trends.
Top Contributors
See who's most active with message counts and user profiles.
Key Discussions
High-engagement threads automatically surfaced for easy access.
Security & Privacy
OAuth 2.0 Authentication
ContextStream uses Slack's official OAuth v2 flow. Your credentials are never stored — only encrypted access tokens.
Minimal Scopes
We request only read-only scopes needed for syncing: channels:read, channels:history, users:read. No write access is requested.
Explicit Channel Selection
You choose exactly which channels to sync. No channels are synced by default. Private channels require explicit bot invitation.
Revoke Anytime
Disconnect the integration at any time from your workspace settings. This revokes access and stops all syncing.
Sync Behavior
Real-Time Webhooks
New messages are captured via Slack webhooks as they're posted. This provides near-instant sync for new content.
Periodic Polling
A background sync runs every 10 minutes to catch any missed events and update reaction counts.
Manual Sync
Click Sync Now in the integration settings to trigger an immediate full sync of all configured channels.
Backfill Period
Initial sync imports messages from the past 30 days by default. This can be adjusted in advanced settings.
Troubleshooting
Messages aren't syncing from a private channel
The ContextStream bot needs to be invited to private channels. In Slack, go to the channel and type /invite @ContextStream to add the bot.
Integration shows "Error" status
This usually means the OAuth token has expired or been revoked. Try disconnecting and reconnecting the integration. If the issue persists, check that the Slack app hasn't been removed from your Slack workspace.
User names showing as IDs
Click the Dashboard button on the Slack card, then use Sync Usersto fetch the latest user profiles from Slack. User mapping happens automatically by email when possible.
Search not finding recent messages
New messages may take a few minutes to be indexed and searchable. Try clicking Sync Nowto force an immediate sync, then search again.
Next Steps
Once connected, Slack messages become Memory Events (source: slack) and are available to your AI tools via MCP.
Back to integrations overview or see GitHub integration.
Slack is a trademark of Slack Technologies, LLC, a Salesforce company. ContextStream is not affiliated with, endorsed by, or sponsored by Slack Technologies, LLC or Salesforce, Inc.