Skip to main content
Version: HER WAKA 2026

Set up your tools

Before we start summarising, let's get your tools connected to Slack. Choose the path that suits you best.

You will need: a laptop with internet access and a Slack workspace where you are a member. No coding experience is required — we will guide you through every step.

Choose your path

This path gives you a voice-first experience with more control. You will install Gemini CLI, create a Slack App, configure a Model Context Protocol (MCP) server, and optionally set up Wispr Flow for hands-free voice commands. This takes about 30 minutes.

  1. Install Node.js

    Already have Node.js? If you installed it for a previous tutorial, skip this step. Run node --version in your terminal to check — you should see a version number like v22.x.x.

    Node.js is a free tool that lets you run Gemini CLI on your computer.

    1. Go to nodejs.org
    2. Click the big green LTS button to download the installer
    3. Open the downloaded .msi file
    4. Click Next through all the screens — the default settings are fine
    5. Click Install, then Finish
    How do I know it worked?

    Open your terminal and type:

    node --version

    You should see a version number like v22.x.x. If you see an error, try closing and reopening your terminal, then run the command again.

  2. Install and test Gemini CLI

    Already have Gemini CLI? If you installed it for a previous tutorial, skip this step. Just run gemini in your terminal to check it still works.

    Gemini CLI is Google's free AI assistant. It runs in your terminal and helps you with tasks based on your descriptions.

    Open your terminal and type:

    npm install -g @google/gemini-cli

    Wait for the installation to finish. Then start it by typing:

    gemini

    The first time you run it, Gemini CLI will ask you to sign in:

    • Choose "Sign in with Google"
    • A browser window will open — sign in with your Google account
    • Come back to the terminal when it says you're connected

    Free tier: 60 requests per minute, 1,000 requests per day — more than enough for this tutorial and everyday use.

    'npm' is not recognised

    This means Node.js isn't installed correctly. Go back and reinstall Node.js. After reinstalling, close your terminal completely and open a new one before trying again.

    Permission denied error

    Windows: Close PowerShell and reopen it by right-clicking and choosing "Run as Administrator". Then try the install command again.

    macOS: Add sudo before the command:

    sudo npm install -g @google/gemini-cli

    Enter your computer password when prompted (you won't see characters as you type — that's normal).

    Type /quit to exit Gemini CLI for now. We will start it again after configuring the Slack connection.

  3. Create a Slack App

    A Slack App is how you give Gemini CLI permission to read messages from your workspace. The app you are creating will only have read-only access — it cannot post, delete, or change anything.

    1. Go to api.slack.com/apps and sign in
    2. Click Create New App
    3. Choose From scratch
    4. Enter a name — for example, Channel Summariser
    5. Select your Slack workspace from the dropdown
    6. Click Create App
    What is a Slack App?

    A Slack App is like giving a programme a key to your workspace. The key only opens the doors you choose — in this case, the ability to read messages in public channels. The app cannot see your direct messages, cannot post anything, and cannot change any settings.

  4. Add permissions (scopes)

    Now you need to tell Slack exactly what the app is allowed to do.

    1. In the left sidebar, click OAuth & Permissions
    2. Scroll down to the Scopes section
    3. Under Bot Token Scopes, click Add an OAuth Scope
    4. Add these two scopes:
      • channels:history — lets the app read messages in public channels
      • channels:read — lets the app see which public channels exist

    Only add these two scopes. They give the app read-only access to public channels. The app cannot read private channels, direct messages, or post anything.

    What are scopes?

    Scopes are permissions. They control exactly what your app is allowed to do. Think of them like keys — channels:history is the key that opens message history, and channels:read is the key that lets the app see channel names. Without these specific keys, the app cannot do anything.

  5. Install the app and get your bot token

    1. Scroll to the top of the OAuth & Permissions page
    2. Click Install to [Your Workspace Name]
    3. Review the permissions and click Allow
    4. You will see a Bot User OAuth Token that starts with xoxb-
    5. Copy this token and save it somewhere safe — you will need it in Step 7

    This token is like a password. Anyone who has it can read messages in your workspace. Do not share it publicly or post it online. Save it in a text file or password manager.

    How do I know it worked?

    You should see a long token starting with xoxb- on the OAuth & Permissions page. If you see an error, check that you added both scopes in Step 4, then try clicking Install to Workspace again.

  6. Get your Team ID

    The Team ID identifies your Slack workspace. You need it for the MCP configuration.

    1. Open Slack in your web browser (not the desktop app) at app.slack.com
    2. Sign in to your workspace
    3. Look at the URL in your browser — it will look like: https://app.slack.com/client/T01234567/...
    4. The Team ID is the part that starts with T — for example, T01234567
    5. Copy this ID and save it alongside your bot token
    I can't find the Team ID in the URL

    Another way: In Slack, click your workspace name in the top-left corner → Settings & administrationWorkspace settings. The Workspace ID (which is the same as Team ID) is usually shown on the settings page, or in the URL of the settings page.

  7. Configure Slack MCP in Gemini CLI

    Now you will connect Gemini CLI to Slack by configuring a Model Context Protocol (MCP) server. This tells Gemini CLI how to talk to Slack.

    1. Open File Explorer
    2. In the address bar, type %USERPROFILE%\.gemini and press Enter
    3. If you see a file called settings.json, open it with Notepad
    4. If the file does not exist, create a new text file and name it settings.json

    Paste the following into settings.json. Replace the two placeholders with your actual bot token and Team ID:

    ~/.gemini/settings.json — replace YOUR_BOT_TOKEN and YOUR_TEAM_ID
    {
    "mcpServers": {
    "slack": {
    "command": "npx",
    "args": ["-y", "@modelcontextprotocol/server-slack"],
    "env": {
    "SLACK_BOT_TOKEN": "xoxb-YOUR_BOT_TOKEN",
    "SLACK_TEAM_ID": "YOUR_TEAM_ID"
    }
    }
    }
    }

    Replace two things: xoxb-YOUR_BOT_TOKEN with your full bot token (e.g., xoxb-1234-5678-abcdef) and YOUR_TEAM_ID with your Team ID (e.g., T01234567). Keep the quotation marks.

    If settings.json already has content from a previous tutorial, you need to merge the configurations. Add the "slack" section inside the existing "mcpServers" block rather than replacing the entire file.

    Save the file.

    What is MCP?

    MCP stands for Model Context Protocol. It is a standard way for AI tools to connect to external services like Slack, GitHub, or databases. Think of it as a universal adapter — instead of each AI tool building its own Slack connection, they all use MCP. You configure it once, and the AI can read your Slack messages.

  8. Add the bot to a channel

    The bot needs to be a member of a channel before it can read messages from it.

    1. Open Slack (desktop app or browser)
    2. Go to the channel you want to summarise
    3. Type /invite @Channel Summariser (or whatever you named your app) and press Enter
    4. You should see a message confirming the bot has been added

    Choose an active channel with at least 10–20 recent messages. This gives the AI something meaningful to summarise. You can always add the bot to more channels later.

    The bot doesn't appear when I type /invite

    Make sure you spell the app name exactly as you created it. You can also add the bot by clicking the channel name at the top → IntegrationsAdd an App, then find your app in the list.

  9. Install Wispr Flow (optional)

    Wispr Flow lets you speak your prompts instead of typing them. It works in any application — including your terminal where Gemini CLI runs.

    This step is optional. Wispr Flow lets you speak instead of type — handy if you prefer talking over typing. Skip this step if you'd rather type your prompts.

    Sign up using this invite link to get a free month of Pro: https://wisprflow.ai/r?CHAN115

    Both you and the tutorial author benefit — you get a free month of Pro, and they get a free month when you dictate 2,000 words!

    1. Sign up at wisprflow.ai/r?CHAN115
    2. Download and install the app for your operating system
    3. Configure settings — enable these options for the best experience:
      • Experimental > Command Mode — Enable advanced voice commands
      • Press Enter Command — Automatically press enter when you say "press enter"
      • Bulk Import — Import snippets and dictionary items
    What is Wispr Flow?

    Wispr Flow is a voice-to-text tool that lets you dictate instead of type. It works in any application, including your terminal. Instead of typing a long prompt to Gemini CLI, you can just say it out loud. This is especially useful if you find typing slow or tiring.

  10. Test the connection

    Open your terminal and start Gemini CLI:

    gemini

    The first time Gemini CLI loads with MCP configured, it may take a moment to connect to the Slack server. Once it's ready, say (with Wispr Flow) or type this test prompt:

    Say this or copy this prompt
    Use the Slack tools to check how many messages are in the channel #general.

    You should see Gemini CLI access your Slack workspace and report the message count. If it works, everything is connected.

    Gemini says it has no Slack tools available

    Check your settings.json file for typos. The most common issues are:

    • Missing commas between fields
    • Incorrect quotation marks (use straight quotes ", not curly quotes)
    • Wrong file location — it must be in ~/.gemini/settings.json

    After fixing, close Gemini CLI (/quit) and start it again.

    Connection error or timeout

    Make sure Node.js is installed correctly (node --version should show a version number). The MCP server uses npx to run, which comes with Node.js. If npx is not found, reinstall Node.js.

    'invalid_auth' error

    Your bot token is incorrect. Go back to api.slack.com/apps, find your app, go to OAuth & Permissions, and copy the Bot User OAuth Token again. Update your settings.json with the correct token.

Verify your setup

Node.js installed

Run node --version in your terminal. You should see a version number.

Gemini CLI installed and signed in

Run gemini in your terminal. It starts up and shows a prompt where you can type.

Slack App created with correct scopes

Your app has channels:history and channels:read scopes.

Bot token saved

You have a token starting with xoxb- saved somewhere safe.

Team ID saved

You have an ID starting with T saved alongside your token.

MCP configured

Your settings.json file contains the Slack MCP server configuration.

Bot added to a channel

The bot is a member of at least one channel you want to summarise.

Wispr Flow installed (optional)

Wispr Flow is running and you can see the microphone indicator. If you skipped this step, that is perfectly fine — you can type all prompts instead.

Connection tested

Gemini CLI can access your Slack workspace when you ask.

All set? Head to Summarise your Slack channels to get your first AI-powered summary.