Prerequisites

  • Slack Account

Step 1: Create Slack Developer Account & App

  1. Visit https://api.slack.com/apps
  2. On the Your Apps page, select Create New App.
  3. Select From Scratch.
  4. Enter your App Name.
  5. Select the Workspace where you’ll be developing your app. You’ll be able to distribute your app to other workspaces later if you choose.
  6. Select Create App.
Slack App Creation Form

Step 2: Configure OAuth Settings

  1. Go to the “OAuth & Permissions” tab in your application dashboard
  2. Add redirect URLs: https://api.klavis.ai/oauth/slack/callback
  3. Click “Save URLs”
Here is an example of Klavis AI OAuth app configuration: OAuth Settings Configuration

Step 3: Request Scopes

Klavis Slack MCP Server uses the following OAuth scopes:Bot Scopes: app_mentions:read, channels:history, channels:read, chat:write, chat:write.customize, commands, files:read, groups:read, groups:write, im:history, im:read, mpim:read, reactions:read, reactions:write, team:read, users:read User Scopes: channels:history ,channels:read, channels:write, chat:write, groups:history, groups:read, groups:write, im:history, im:read, im:write, mpim:history, mpim:read, users:read, users:write, search:read
  1. Go to the “OAuth & Permissions” tab in your application dashboard.
  2. Scroll Down to “Scopes”, and add scopes
Scopes Settings Configuration
You have successfully created a Slack OAuth application! You now have your Client ID and Client Secret ready for integration with Klavis AI.

(Optional) Step 4: White Labeling

White labeling allows you to customize the OAuth experience with your own branding instead of Klavis AI’s.
If you want to use your own Slack OAuth application with custom branding:
  1. Configure White Labeling: Go to https://www.klavis.ai/home/white-label
  2. Add Your Credentials: Enter your Slack Client ID and Client Secret.
  3. Set Redirect URI: Use https://api.klavis.ai/oauth/slack/callback or your custom callback URL
  4. Initiate OAuth: Use your client ID when starting the OAuth flow:
    const authUrl = `https://api.klavis.ai/oauth/slack/authorize?instance_id=${instanceId}&client_id=${yourClientId}`;
    
For detailed white labeling implementation and code examples, see our OAuth & White Labeling guide.

Resources