2 min read
Slack MCP Server

The Problem

AI assistants are blind to workplace communication. They can write code and answer questions, but they can’t see what your team discussed on Slack, find that link someone shared last week, or check if a decision was already made in a channel.

Context switching between Slack and your AI tool wastes time and breaks flow.

The Approach

Build a Model Context Protocol (MCP) server that exposes Slack as a first-class data source for AI assistants. Not a chatbot that lives in Slack — a bridge that lets your AI read and interact with Slack on your behalf.

What I Built

A Python MCP server with tools for:

  • Search — Full Slack search syntax (from:@user, in:#channel, has:link)
  • Channel History — Read any channel or DM by name or ID
  • Thread Reading — Follow conversation threads
  • Send Messages — Post to channels and DMs (with safety confirmation)
  • Link Resolution — Parse Slack permalinks into full message + thread context
  • User Lookup — Find people by name
  • Batch History — Fetch multiple channels in parallel for morning briefings
  • Starred Items & Saved Items — Access bookmarked content

Tech Stack

  • Runtime: Python with uv package management
  • Protocol: Model Context Protocol (MCP) via mcp SDK
  • API: Slack Web API with OAuth tokens
  • Distribution: Installable via uv tool install

How It Fits

This is one of three MCP servers (alongside Microsoft 365 and Confluence/Jira) that form the communication layer of The Product Kitchen. Together, they give Claude Code full awareness of workplace context — no more “let me check Slack for that.”