Slack
Discover Slack workspaces, channels, and users for complete team communication visibility.
-
Workspace: Team information and metadata
-
Channels: Public and private channels with topics and purposes
-
Users: Team members with roles and profiles
-
Automatic Relationships: Links channels and users to workspace
-
slack_send_message- Send messages to channels (with threading support) -
slack_list_channels- List all channels in workspace -
slack_get_channel_history- Get recent messages from a channel -
slack_create_channel- Create new public or private channels -
slack_invite_to_channel- Invite users to channels -
slack_get_user_info- Get detailed user information
discovery:
enabled: true
settings:
token: "xoxb-YOUR-BOT-TOKEN" # Bot User OAuth Token
include_users: true
include_archived: false
mcp:
enabled: true
settings:
token: "xoxb-YOUR-BOT-TOKEN"
namespace: "default"
Your Slack app needs these OAuth scopes:
Bot Token Scopes:
channels:read- View basic channel infochannels:manage- Create and manage channelschannels:history- Read channel messageschat:write- Send messagesusers:read- View user infogroups:read- View private channel info
name: "T1234567890"
spec:
id: "T1234567890"
name: "Acme Corp"
domain: "acme"
icon: "https://..."
name: "T1234567890/C9876543210"
spec:
id: "C9876543210"
name: "engineering"
type: "public" # or private, dm, group_dm
is_archived: false
num_members: 45
topic: "Engineering discussions"
purpose: "Team collaboration"
name: "T1234567890/U1122334455"
spec:
id: "U1122334455"
name: "john.doe"
real_name: "John Doe"
display_name: "John"
email: "john@acme.com"
title: "Senior Engineer"
| Relationship | From | To |
|---|---|---|
BELONGS_TO | Channel | Workspace |
BELONGS_TO | User | Workspace |
MEMBER_OF | User | Channel (future) |
NOTIFIES_ABOUT | Channel | K8sDeployment/ArgoApp (configured) |
ALERTS_FOR | Channel | PagerDutyIncident (configured) |
degree discovery run slack@1.0.0 --config slack-config.yaml
"Send a message to #engineering about the deployment"
"Create a new channel called #incident-response"
"List all channels in the workspace"
"Get the recent messages from #production-alerts"
"Who is john.doe on Slack?"
AI: "The API deployment to production succeeded"
Action: Send to #deployments
Slack Message:
"✅ Deployment successful: api v1.2.3
- Environment: production
- Replicas: 3/3 ready
- Duration: 2m 15s
- Deployed by: GitHub Actions workflow #123"
PagerDutyIncident → triggers → Slack notification to #oncall
K8sDeployment failure → sends alert to #production-alerts
Snyk critical CVE → notifies #security
You: "Notify all relevant channels about the database maintenance"
AI: [Queries graph to find channels]
Channels to notify:
- #engineering (team channel)
- #production-alerts (monitoring)
- #oncall (incident response)
[Sends coordinated message to all 3 channels]
K8sDeployment (Kubernetes molecule)
↓ DEPLOYED_BY
ArgoApplication (Argo molecule)
↓ TRIGGERS (via webhook)
GitHubWorkflowRun (GitHub Actions molecule)
↓ NOTIFIES (configured)
SlackChannel #deployments (Slack molecule)
↓ ALERTS
SlackUser @oncall (Slack molecule)
PagerDuty incident created
→ AI creates #incident-123 channel
→ AI invites on-call engineers
→ AI posts incident details
→ AI updates channel topic with status
Argo deployment completed
→ AI sends summary to #deployments
→ Includes: what changed, who deployed, health status
→ Threads with deployment logs if issues detected
Snyk detects critical CVE
→ AI posts to #security
→ Tags affected service owners
→ Creates thread with remediation steps
→ Links to affected repositories and deployments
Based on Slack Web API and specifically:
- chat.postMessage for sending messages
- conversations.list for listing channels
- users.list for listing users
- conversations.create for creating channels
- conversations.invite for inviting users
-
Click "Create New App" → "From scratch"
-
Name it "SixDegree" and select your workspace
-
Navigate to "OAuth & Permissions"
-
Under "Bot Token Scopes", add all required scopes (listed above)
-
Install app to workspace
-
Copy the "Bot User OAuth Token" (starts with
xoxb-)
discovery:
enabled: true
settings:
token: "xoxb-your-token-here"
degree discovery run slack@1.0.0 --config slack-config.yaml
degree chat
> "List all Slack channels"
> "Send 'Hello!' to #test"