mcpField
C
channelchat

channelchat

Local
github.com/CloudCorpRecordsCommunication0Updated 2w ago

About channelchat

channelchat is an MCP server for interacting with Slack workspaces through the Slack Web API. It provides eight tools for channels, messages, threads, reactions, and user information, using bot-token and workspace-ID environment variables.

Key features

  1. 01List Slack channels
  2. 02Post messages and reply in threads
  3. 03Read channel history and thread replies
  4. 04Add message reactions
  5. 05List users and view profiles
  6. 06Surface Slack API errors

Use cases

  1. 01Posting a workspace message
  2. 02Continuing a conversation in a thread
  3. 03Checking channel history or member details
  4. 04Adding a reaction to a Slack message

MCP support

Exposes eight Slack tools to MCP clients, covering channels, messages, threads, reactions, and users. Calls use `SLACK_BOT_TOKEN` and `SLACK_TEAM_ID`.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"cloudcorprecords-channelchat": {
"command": "npx",
"args": [
"-y",
"@reneturcios/channelchat"
]
}
}
}
Run commandnpx -y @reneturcios/channelchat

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@reneturcios/channelchat0.1.0
ocighcr.io/cloudcorprecords/channelchat:0.1.0

Tools

8

Saved tool list · updated 1w ago

ParameterTypeRequiredDescription
limitnumberNoMaximum number of channels to return.
typesstringNoComma-separated channel types to list, such as public_channel or private_channel.
exclude_archivedbooleanNoWhether to exclude archived channels from the results.

Details

From the project README

channelchat

channelchat gives an MCP client a working presence in a Slack workspace: list the channels, post a message, carry on a thread, drop a reaction, and look back over history or up at the member list. It implements the full documented server-slack tool set — all eight tools — against the Slack Web API.

Two environment variables are required, exactly as in the original server: SLACK_BOT_TOKEN (the bot user OAuth token, sent as a Bearer token) and SLACK_TEAM_ID (the workspace id, passed to the methods that accept one). If either is missing, every call fails with an error naming the missing variable instead of failing the handshake.

Slack's Web API answers HTTP 200 even when a call fails, with an ok: false body; channelchat surfaces that body's error string as the tool error, so channel_not_found and friends reach the caller verbatim.

Install

npx @reneturcios/channelchat slack_list_channels
docker run -i -e SLACK_BOT_TOKEN -e SLACK_TEAM_ID ghcr.io/cloudcorprecords/channelchat

CLI

channelchat slack_list_channels --limit 20
channelchat slack_post_message --channel-id C0123 --text "deploy finished"
channelchat slack_reply_to_thread --channel-id C0123 --thread-ts 1700000000.000100 --text "looking into it"
channelchat slack_add_reaction --channel-id C0123 --timestamp 1700000000.000100 --reaction thumbsup
channelchat slack_get_user_profile --user-id U0123
channelchat --version

Exit codes: 0 success, 1 API error, 2 usage error.

MCP server

npx -y @reneturcios/channelchat mcp
{
  "mcpServers": {
    "channelchat": {
      "command": "npx",
      "args": ["-y", "@reneturcios/channelchat", "mcp"],
      "env": { "SLACK_BOT_TOKEN": "xoxb-...", "SLACK_TEAM_ID": "T0123" }
    }
  }
}
Tools
ToolRequiredOptional
slack_list_channels—types, exclude_archived, limit
slack_post_messagechannel_id, text—
slack_reply_to_threadchannel_id, thread_ts, text—
slack_add_reactionchannel_id, timestamp, reaction—
slack_get_channel_historychannel_idlimit
slack_get_thread_replieschannel_id, thread_ts—
slack_get_users—cursor, limit
slack_get_user_profileuser_id—

Tool arguments use the caller-facing names from the documented surface (channel_id, thread_ts, reaction, user_id); the core maps them onto the Web API's parameter names (channel, ts, name, user) when it builds each request.

Development

npm install
npm run build
npm test
npm run dev

Tests run entirely on fake-fetch fixtures, including Slack's HTTP-200-with-ok: false error shape; no network is used.

License

MIT — see LICENSE.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.