We've implemented a complete OAuth 2.0 AuthProvider for direct SSE connections to MCP servers and would like to use it with https://mcp.atlassian.com/v1/sse.
Current Setup
✅ mcp-remote proxy works perfectly with our OAuth client
✅ AuthProvider loads same credentials from ~/.mcp-auth/mcp-remote-0.1.18/
✅ Implements full OAuth 2.0 flow with PKCE, token refresh, redirects
❌ Direct SSE connection returns HTTP 401 Unauthorized
Technical Details
Using the same OAuth client and tokens that work via mcp-remote proxy, but direct SSE connections fail with authentication errors.
Questions
1. Is the mcp-remote OAuth client restricted to proxy-only mode?
2. What's the process for direct SSE access approval?
3. Do we need different OAuth scopes/client configuration?
4. Is there a whitelist application process for enterprise integrations?
Could the Atlassian team provide guidance on enabling direct SSE access or point us toward the approval process?
Yes, I’ve implemented my custom OAuth2 flow.
You also need to open the Atlassian Rovo MCP server configuration page and add your domain to the list of allowed domains.
More details here: https://support.atlassian.com/security-and-access-policies/docs/control-atlassian-rovo-mcp-server-settings/#Add-domains
You should use it for standard OAuth2 client
authorize: https://mcp.atlassian.com/v1/authorize
token: https://cf.mcp.atlassian.com/v1/token
Hi @Sos Zakaryan !
I also tried implementing the OAuth2.1 Flow and connecting to mcp server using the token. And, I have already added my domain in the list of allowed domains.
But, still I am getting an error (401 Unauthorized) when trying to connect to MCP server using a valid MCP client with a valid token.
Could you please provide a detailed solution of your flow?
Thank you!
Hi @Akanksha Raj !
How did you pass the token? It should be sent in the Authorization header as Bearer <jwt_token>.
Note that this JWT is not the actual Jira token; it is a dynamically generated token created by MCP.