fix(mcp): add Slack OAuth clientId to all role plugins

Slack's auth server does not support dynamic client registration, so a
bare {type, url} config fails in Claude Code with "Incompatible auth
server: does not support DCR" before the OAuth prompt appears.

Cowork/Desktop resolve these via the claude.ai connector directory and
don't hit this, but Claude Code does raw OAuth against the URL. The
broken entry also shadows the working claude.ai Slack passthrough
(manual > plugin > claude.ai dedup), so users lose Slack entirely.

Adds the same oauth.{clientId, callbackPort} block already present in
partner-built/slack/.mcp.json to all 12 role plugins.

Refs: anthropics/claude-code#38229
This commit is contained in:
Basil Hosmer
2026-04-23 11:54:32 -04:00
parent 3b505c1046
commit 39a57c5c8e
12 changed files with 60 additions and 12 deletions
+5 -1
View File
@@ -2,7 +2,11 @@
"mcpServers": {
"slack": {
"type": "http",
"url": "https://mcp.slack.com/mcp"
"url": "https://mcp.slack.com/mcp",
"oauth": {
"clientId": "1601185624273.8899143856786",
"callbackPort": 3118
}
},
"intercom": {
"type": "http",
+5 -1
View File
@@ -2,7 +2,11 @@
"mcpServers": {
"slack": {
"type": "http",
"url": "https://mcp.slack.com/mcp"
"url": "https://mcp.slack.com/mcp",
"oauth": {
"clientId": "1601185624273.8899143856786",
"callbackPort": 3118
}
},
"figma": {
"type": "http",
+5 -1
View File
@@ -2,7 +2,11 @@
"mcpServers": {
"slack": {
"type": "http",
"url": "https://mcp.slack.com/mcp"
"url": "https://mcp.slack.com/mcp",
"oauth": {
"clientId": "1601185624273.8899143856786",
"callbackPort": 3118
}
},
"linear": {
"type": "http",
+5 -1
View File
@@ -2,7 +2,11 @@
"mcpServers": {
"slack": {
"type": "http",
"url": "https://mcp.slack.com/mcp"
"url": "https://mcp.slack.com/mcp",
"oauth": {
"clientId": "1601185624273.8899143856786",
"callbackPort": 3118
}
},
"notion": {
"type": "http",
+5 -1
View File
@@ -14,7 +14,11 @@
},
"slack": {
"type": "http",
"url": "https://mcp.slack.com/mcp"
"url": "https://mcp.slack.com/mcp",
"oauth": {
"clientId": "1601185624273.8899143856786",
"callbackPort": 3118
}
},
"ms365": {
"type": "http",
+5 -1
View File
@@ -2,7 +2,11 @@
"mcpServers": {
"slack": {
"type": "http",
"url": "https://mcp.slack.com/mcp"
"url": "https://mcp.slack.com/mcp",
"oauth": {
"clientId": "1601185624273.8899143856786",
"callbackPort": 3118
}
},
"google calendar": {
"type": "http",
+5 -1
View File
@@ -2,7 +2,11 @@
"mcpServers": {
"slack": {
"type": "http",
"url": "https://mcp.slack.com/mcp"
"url": "https://mcp.slack.com/mcp",
"oauth": {
"clientId": "1601185624273.8899143856786",
"callbackPort": 3118
}
},
"box": {
"type": "http",
+5 -1
View File
@@ -2,7 +2,11 @@
"mcpServers": {
"slack": {
"type": "http",
"url": "https://mcp.slack.com/mcp"
"url": "https://mcp.slack.com/mcp",
"oauth": {
"clientId": "1601185624273.8899143856786",
"callbackPort": 3118
}
},
"canva": {
"type": "http",
+5 -1
View File
@@ -2,7 +2,11 @@
"mcpServers": {
"slack": {
"type": "http",
"url": "https://mcp.slack.com/mcp"
"url": "https://mcp.slack.com/mcp",
"oauth": {
"clientId": "1601185624273.8899143856786",
"callbackPort": 3118
}
},
"google calendar": {
"type": "http",
+5 -1
View File
@@ -2,7 +2,11 @@
"mcpServers": {
"slack": {
"type": "http",
"url": "https://mcp.slack.com/mcp"
"url": "https://mcp.slack.com/mcp",
"oauth": {
"clientId": "1601185624273.8899143856786",
"callbackPort": 3118
}
},
"linear": {
"type": "http",
+5 -1
View File
@@ -2,7 +2,11 @@
"mcpServers": {
"slack": {
"type": "http",
"url": "https://mcp.slack.com/mcp"
"url": "https://mcp.slack.com/mcp",
"oauth": {
"clientId": "1601185624273.8899143856786",
"callbackPort": 3118
}
},
"notion": {
"type": "http",
+5 -1
View File
@@ -2,7 +2,11 @@
"mcpServers": {
"slack": {
"type": "http",
"url": "https://mcp.slack.com/mcp"
"url": "https://mcp.slack.com/mcp",
"oauth": {
"clientId": "1601185624273.8899143856786",
"callbackPort": 3118
}
},
"hubspot": {
"type": "http",