slackapi / slackapi/slack-skills-plugin

Hardcoded OAuth callback port 3118 prevents authentication when multiple Claude Code sessions run in parallel

Open
#46 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

discussion enhancement
Dominant language
Python
Stars
132
Forks
34
Avg merge
1d 6h
Merged PRs (30d)
16

Description

The Slack MCP plugin's OAuth config hardcodes callbackPort: 3118. Because the OAuth callback server binds to this single fixed port, only one Claude Code session on the machine can complete Slack OAuth at a time. Users running multiple parallel sessions (per-project, cmux-managed, detached terminals) hit unrecoverable auth failures whenever another session is already listening on 3118.

This is a particularly major issue if you are using devcontainers. I have to bind the port in order to use the Slack MCP. If I want to run multiple devcontainers in different repos (which is something I frequently do), then having the port hardcoded to 3118 means the port binding fails and the container will not build. This makes it not just impossible to use the Slack MCP in multiple Claude sessions, but actually impossible to run two containers which are configured to run the MCP. The only way to start the other container is to remove the port binding, otherwise you get this error on build:

Bind for 127.0.0.1:3118 failed: port is already allocated

I posted originally to Anthropic but I believe this is a Slack issue.

See the Anthropic post for more details: https://github.com/anthropics/claude-code/issues/64492#issuecomment-4594024212

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Locate the Slack MCP OAuth configuration and the callback server that uses callbackPort: 3118; first reproduce authentication with two parallel sessions or containers. Trace how the callback port is selected and verify that multiple sessions can authenticate without the 127.0.0.1:3118 allocation failure.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
authentication
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.