Skip to content

Conversation

@xav-ie
Copy link
Contributor

@xav-ie xav-ie commented Dec 19, 2025

You can now add emoji reaction through MCP 👍

I consider emoji as a message, so I leverage the existing env var. Please let me know if I should have instead created a new one.

  • feat: add reaction tool

@korotovsky
Copy link
Owner

korotovsky commented Jan 5, 2026

Hi @xav-ie, thanks for the PR!

There is somehow a demand for this feature, so that's why I come here across. Could you please confirm that this functionality works on all three types of tokes? xoxc/xoxd, xoxp and xoxb ? Which one have you tested so far?

@ZihaoZhou
Copy link

ZihaoZhou commented Jan 7, 2026

image image

Tested. Working perfectly with xoxp. Needs reactions.write permission.

@xav-ie
Copy link
Contributor Author

xav-ie commented Jan 8, 2026

Hello, I use xoxc and xoxd. I am glad to hear others who use got it working with xoxp, too. I think it is sufficient to take Zihao at their word for the xoxp functioning.

For xoxb, I see that Slack apps have this permission:
image

I see no reason why the API call would fail.

@korotovsky
Copy link
Owner

I'd appreciate that before we merge @xav-ie or @ZihaoZhou will do one more test with xoxb as well, because this MCP has lots of users, and since this PR comes without extra integration tests, then in my opinion at least full manual testing must be done beforehand.

@xav-ie
Copy link
Contributor Author

xav-ie commented Jan 8, 2026

Yes ok. That is reasonable. It would be cool to fully automate the testing. Like have a ci and functions to test things. I might make one after I verify this works with xoxb.... verifying all three for api changes is quite a bit of work.

@korotovsky
Copy link
Owner

@xav-ie please have a look an existing implementation of integration tests i.e. how MCP server is bootstrapped, tools registered and how we verify that using real OpenAI API this MCP is truly working https://github.com/korotovsky/slack-mcp-server/blob/master/pkg/handler/channels_test.go#L31. I might need then to add a new xoxb secret variable from my workspace into this repository, but we will get there later. At the current point would be nice it you would setup entire integration stack locally if you are planning to improve it.

@Flare576
Copy link
Contributor

Flare576 commented Jan 29, 2026

✅ Tested with xoxb (Bot Token) - Works!

I set up a test workspace specifically to verify this PR with bot tokens. Full test results:

Test Environment

  • Workspace: flare-testgrounds.slack.com (created for this test)
  • Token type: xoxb-* (Bot OAuth Token)
  • MCP Server: Built from this branch via Docker
  • Transport: stdio

Test Procedure

  1. Built Docker image from feat-add-reactions branch
  2. Initialized MCP server with SLACK_MCP_XOXB_TOKEN
  3. Posted a test message via conversations_add_message
  4. Called reactions_add with 3 different emojis

Results

Emoji Result
:rocket: ✅ Success
:tada: ✅ Success
:white_check_mark: ✅ Success

MCP Response Examples

{"result": {"content": [{"type": "text", "text": "Successfully added :rocket: reaction to message 1769718633.771359 in channel C0ABNAGCV19"}]}}
{"result": {"content": [{"type": "text", "text": "Successfully added :tada: reaction to message 1769718633.771359 in channel C0ABNAGCV19"}]}}
{"result": {"content": [{"type": "text", "text": "Successfully added :white_check_mark: reaction to message 1769718633.771359 in channel C0ABNAGCV19"}]}}

Slack Verification

Verified reactions appear correctly in Slack UI:

Screenshot 2026-01-29 at 2 31 31 PM

This completes testing for all three token types:

  • xoxc + xoxd (browser tokens) - tested by @xav-ie
  • xoxp (user token) - tested by @xav-ie
  • xoxb (bot token) - tested here

Ready to merge! 🚀

@korotovsky
Copy link
Owner

This is the way to go! 🚀 Thank you @Flare576!

Thank you @ZihaoZhou for testing xoxp and @xav-ie for PR itself.

@korotovsky korotovsky merged commit 9844d5b into korotovsky:master Jan 29, 2026
2 checks passed
Flare576 added a commit to Flare576/slack-mcp-server that referenced this pull request Jan 29, 2026
Companion to reactions_add (merged in korotovsky#141). Allows removing emoji
reactions from messages using the same channel/timestamp/emoji params.

Tested with xoxb, xoxc/xoxd token types.
aron-muon pushed a commit to aron-muon/slack-mcp-server that referenced this pull request Jan 30, 2026
Companion to reactions_add (merged in korotovsky#141). Allows removing emoji
reactions from messages using the same channel/timestamp/emoji params.

Tested with xoxb, xoxc/xoxd token types.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants