Slack MCP plugin OAuth fails: redirect_uri not registered in Slack app configuration
Bug Description
The Slack MCP plugin OAuth authorization always fails with the following error from Slack:
为 Claude 授权时出错了。 redirect_uri did not match any configured URIs. Passed URI: http://localhost:3118/oauth/callback
Steps to Reproduce
- Enable the Slack plugin in Claude Code (
plugin:slack:slack) - Run
/mcpand attempt to authenticate with Slack - Browser opens and redirects to the Slack OAuth authorization page
- Slack immediately shows an authorization error
Error Details
Slack OAuth app (client_id: 1601185624273.8899143856786) has not registered http://localhost:3118/oauth/callback as a valid redirect URI. This causes every authorization attempt to fail on Slack's side before any user interaction.
Screenshot of error:
The Slack OAuth page shows:
redirect_uri did not match any configured URIs. Passed URI: http://localhost:3118/oauth/callback
Environment
- Claude Code version: 2.1.81
- OS: macOS
- Slack plugin config (
~/.claude/plugins/cache/claude-plugins-official/slack/1.0.0/.mcp.json):
{
"mcpServers": {
"slack": {
"type": "http",
"url": "https://mcp.slack.com/mcp",
"oauth": {
"clientId": "1601185624273.8899143856786",
"callbackPort": 3118
}
}
}
}
Expected Behavior
OAuth authorization should complete successfully and Claude Code should receive a valid Slack token.
Actual Behavior
Slack rejects the OAuth request because http://localhost:3118/oauth/callback is not registered as an allowed redirect URI in the Slack app settings for client_id: 1601185624273.8899143856786.
Fix Required
The Slack OAuth app (client_id: 1601185624273.8899143856786) needs to have http://localhost:3118/oauth/callback added as an allowed redirect URI in the Slack API app configuration.
18 Comments
Same issue here.
The redirect URI http://localhost:3118/callback needs to be registered in the Slack OAuth app config for client_id: 1601185624273.8899143856786.
Same issue on Windows
Same issue for me
<img width="1576" height="988" alt="Image" src="https://github.com/user-attachments/assets/f4fbdc94-6ab4-47a0-82cf-708e6c53d6b2" />
Same here - tried cleaning the cache and everything and nothing worked.
Same here
Same issue for me
Looks like the issue is resolved. Works for me now.
Hi all from the Slack Open Source team - this should be fixed now!
Getting the error. Could connect last week. Now I have the same: redirect_uri did not match any configured URIs. Passed URI: http://localhost:3118/callback
<img width="238" height="311" alt="Image" src="https://github.com/user-attachments/assets/9fe42aa4-c575-45d8-a9f6-a27403dfa804" />
working for me as of now!
This does not seem to work for Claude Desktop which redirects to port 53280 and uses
127.0.0.1instead oflocalhost. @hello-ashleyintech Is this something your team can help with or would the fix be needed at Claude Desktop's end?<img width="586" height="441" alt="Image" src="https://github.com/user-attachments/assets/6c4a6e85-5c1e-4094-ab2e-c10aad39da50" />
There was a new version released for Cowork which allows adjusting the
callbackPort.Still Slack MCP cannot be connected using port
3118since the host127.0.0.1does not seem to be whitelisted and127.0.0.1is hardcodedStuck here as well. This would be a huge win for our CoWork 3p rollout.
Yeah this is pretty frustrating considering how easy it would be to fix if only reaching the right person.
I already contacted both official Slack and Anthropic Support with 0 results (either stuck with the AI bot or a support engineer saying it's not in official scope and might arrive at some day).
@hello-ashleyintech, is this something you could help getting sorted out internally at Slack?
I don't know when callbackHost got added but this is working for me now.
That error is from Slack's OAuth
Fix:
Thanks for the report. The Slack team fixed the redirect_uri issue server-side on March 23, and two commenters in this thread confirmed it working since. Closing as resolved.
For the separate 127.0.0.1 reports in May: those are Cowork/Desktop scope, not the Claude Code plugin. The workaround there is
oauth.callbackHost: "localhost"per the May 13 comment. If that variant is still failing, please open a new issue against Cowork.