mirror of
https://github.com/open-webui/mcpo.git
synced 2026-11-05 01:27:39 +00:00
[GH-ISSUE #115] feat: Support OAuth Authorization #52
Labels
No labels
bug
can't reproduce
documentation
enhancement
good first issue
help wanted
invalid
pull-request
question
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
open-webui/mcpo#52
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @pew on GitHub (May 2, 2025).
Original GitHub issue: https://github.com/open-webui/mcpo/issues/115
Check Existing Issues
Problem Description
I tried adding an MCP Server which requires authentication via an OAuth flow to mcpo. When I started the container, it returned this error message and crashed:
This might be related to this question: https://github.com/open-webui/mcpo/issues/19
Desired Solution you'd like
Support OAuth authentication for MCP servers, ideally through the UI when it's been added to the mcpo config.
Alternatives Considered
No response
Additional Context
No response
@t-j-thomas commented on GitHub (May 14, 2025):
@tjbck Hoping we can start some discussion around this as there has been more & more remote mcp needs. I saw a similar past Issue (https://github.com/open-webui/mcpo/issues/19) where you responded, but I think there was some misunderstanding/missing context.
As of the latest MCP spec (3/26/2025) linked in the above post, remote MCP servers with auth (for ex hosted SaaS mcp like Confluence/Jira) require the MCP client to initiate an Oauth request with the MCP server, which then will redirect the end user (through the user agent/browser) to either their own auth server or delegate to an external auth provider.
Open WebUI (or another UI client) + mcpo does not currently seem to support this, or correct me if I'm mistaken.
Approximate Flow
My understanding is that both the WebUI & mcpo will need some changes to accommodate the new auth flows required by many remote MCP servers:
/authorizeendpointAlternatives:
But neither of these alternatives will allow custom user authorization for non admin users in Open WebUI. An admin could configure one instance of these remote MCP servers perhaps using a company wide shared user or something like that. However, if every user will need their own scoped auth permissions for tools like Jira/Confluence mcp access, this won't be possible. However, I see this being a very useful & important enterprise use case
@LukeScrewdriver commented on GitHub (May 18, 2025):
@pew I had the same error.
To get around it I used mcp-proxy.
Check issue #72 latest message
@tjbck commented on GitHub (Jun 6, 2025):
Custom header support has been added to mcpo with 0.0.15
@tjbck commented on GitHub (Jun 6, 2025):
@t-j-thomas do we have a screenrecording of implementations for what the workflow you've described?
@JorgeRuizITCL commented on GitHub (Jun 9, 2025):
Hi!
Does this new feature include the injection of the client headers?
Let's say i have an MCP SSE server that has JWT-based auth, and i want my client, Open WEB UI, to use one an api key that connects directly to the server.
Header A:
This Header is generated by OpenWeb UI / Client
{Authorization: Bearer my-secret-key}
And i want the header to be redirected to the MCP Server.
Like: OpenWebUI -> HTTP Req (Header A)-> MCPO -> HTTP SSE Req (Header A) -> MCP Server
Thanks!
@MBueschelberger commented on GitHub (Jun 22, 2025):
@JorgeRuizITCL , I am looking for the same solution but was not successful as well.
I openend an issues here: https://github.com/open-webui/mcpo/issues/182
@rkconsulting commented on GitHub (Sep 18, 2025):
@JorgeRuizITCL implemented tool-level client header forwarding in this PR: https://github.com/open-webui/mcpo/pull/251