Skip to main content
Glama
farsght

slack-user-mcp-server

by farsght

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SLACK_USER_TOKENYesYour Slack User OAuth Token (starts with xoxp-)

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
slack_search_messagesA

Search for messages across your entire Slack workspace using the Slack search API. This uses YOUR user token, so it searches everything you have access to — channels, DMs, group messages.

Supports Slack search modifiers:

  • from:@username — messages from a specific user

  • in:#channel — messages in a specific channel

  • has:link / has:reaction / has:star — filter by attributes

  • before:YYYY-MM-DD / after:YYYY-MM-DD — date filters

  • is:thread — only threaded messages , Args:

  • query (string): Slack search query (supports search modifiers)

  • sort (string): Sort by "timestamp" or "score" (default: timestamp)

  • sort_dir (string): Sort direction "asc" or "desc" (default: desc)

  • count (number): Number of results to return, 1-100 (default: 20)

  • page (number): Page number for pagination (default: 1)

Returns: List of matching messages with text, author, channel, timestamp, and permalink.

Examples:

  • "from:me" — your own recent messages

  • "from:@scott.jensen after:2026-03-01" — your messages this month

  • "in:#general budget" — messages about "budget" in #general

slack_list_channelsA

List Slack channels you have access to. Can filter to only channels you've joined.

Args:

  • types (string): Comma-separated channel types: public_channel, private_channel, mpim, im (default: public_channel,private_channel)

  • exclude_archived (boolean): Exclude archived channels (default: true)

  • limit (number): Max channels to return, 1-200 (default: 100)

  • cursor (string): Pagination cursor from a previous response

Returns: List of channels with id, name, topic, purpose, and member count.

slack_get_channel_historyA

Fetch recent messages from a Slack channel, DM, or group message. Uses your user token so you can access any channel you're a member of.

Args:

  • channel (string): Channel ID (e.g. C012AB3CD) or name (e.g. #general)

  • limit (number): Number of messages to return, 1-200 (default: 50)

  • oldest (string): Start of time range as Unix timestamp (optional)

  • latest (string): End of time range as Unix timestamp (optional)

  • inclusive (boolean): Include messages with oldest/latest timestamps (default: true)

Returns: List of messages with text, author, timestamp, reactions, and thread info.

slack_post_messageA

Post a message to a Slack channel or DM as YOU (your user account).

Args:

  • channel (string): Channel ID or name (e.g. C012AB3CD or #general)

  • text (string): Message text (supports Slack mrkdwn formatting)

  • thread_ts (string): If provided, post as a reply in this thread

Returns: Confirmation with message timestamp and channel.

slack_lookup_userA

Search for Slack users by name or email address.

Args:

  • query (string): Name or email to search for

Returns: List of matching users with id, name, email, title, and status.

slack_get_user_infoA

Get detailed profile information for a specific Slack user by their user ID.

Args:

  • user_id (string): Slack user ID (e.g. U012AB3CD)

Returns: User profile with id, name, email, title, timezone, and status.

slack_auth_testA

Check which Slack user this token belongs to and verify the connection is working.

Takes no arguments. Returns your user ID, username, team name, and team ID.

slack_get_threadB

Fetch all replies in a Slack thread.

Args:

  • channel (string): Channel ID where the thread exists

  • thread_ts (string): Timestamp of the parent message

Returns: List of all messages in the thread.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4/5.0

Scored across 8 tools

Disambiguation5/5

Each tool targets a distinct Slack operation: searching messages, listing channels, fetching channel history, posting messages, looking up users, getting user details, testing auth, and fetching thread replies. There is no overlap that would confuse an agent.

Naming Consistency5/5

All tool names follow the consistent pattern 'slack_<verb>_<noun>', with clear verbs like search, list, get, post, lookup, and auth_test. This provides a predictable and readable naming convention.

Tool Count5/5

With 8 tools, the server is well-scoped for its purpose. It covers the essential Slack operations without unnecessary bloat or missing critical functions.

Completeness4/5

The tool set covers core workflows: searching, reading history, posting messages, handling threads, and user operations. Minor gaps exist, such as message editing/deleting or adding reactions, but these are not critical for typical Slack automation and can be worked around.

Maintenance

ActivityInactive
ResponsivenessNo issues