Skip to content

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

Description

@ercquest

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: anthropics/claude-code#64492 (comment)

Metadata

Metadata

Assignees

No one assigned

    Labels

    discussionM-T: An issue where more input is needed to reach a decisionenhancementNew feature or request

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions