[GH-ISSUE #24001] issue: MCP connection with bearer failed #74751

Closed
opened 2026-05-13 07:35:22 -05:00 by GiteaMirror · 6 comments
Owner

Originally created by @samuixx on GitHub (Apr 22, 2026).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/24001

Check Existing Issues

  • I have searched for any existing and/or related issues.
  • I have searched for any existing and/or related discussions.
  • I have also searched in the CLOSED issues AND CLOSED discussions and found no related items (your issue might already be addressed on the development branch!).
  • I am using the latest version of Open WebUI.

Installation Method

Docker

Open WebUI Version

V08.12

Ollama Version (if applicable)

0.21.0

Operating System

debian

Browser (if applicable)

Chrome

Confirmation

  • I have read and followed all instructions in README.md.
  • I am using the latest version of both Open WebUI and Ollama.
  • I have included the browser console logs.
  • I have included the Docker container logs.
  • I have provided every relevant configuration, setting, and environment variable used in my setup.
  • I have clearly listed every relevant configuration, custom setting, environment variable, and command-line option that influences my setup (such as Docker Compose overrides, .env values, browser settings, authentication configurations, etc).
  • I have documented step-by-step reproduction instructions that are precise, sequential, and leave nothing to interpretation. My steps:
  • Start with the initial platform/version/OS and dependencies used,
  • Specify exact install/launch/configure commands,
  • List URLs visited, user input (incl. example values/emails/passwords if needed),
  • Describe all options and toggles enabled or changed,
  • Include any files or environmental changes,
  • Identify the expected and actual result at each stage,
  • Ensure any reasonably skilled user can follow and hit the same issue.

Expected Behavior

I'm trying to integrate the Home Assistant MCP server via the OpenWebUI interface. /admin/settings/integrations
URL: http://xx.xx.xx:8123/api/mcp
Authentication:
Bearer: xxxxxxxxxxxxxxxxxxx
I expect a successful connection test and a tool selection in the chat

Actual Behavior

The connection test returns no result, but the following logs appear in the Docker container:

2026-04-22 12:31:30.201 | INFO     | uvicorn.protocols.http.httptools_impl:send:483 - yy.yy.yy.yy:53960 - "POST /api/v1/configs/tool_servers/verify HTTP/1.1" 500
Exception in ASGI application

Steps to Reproduce

Config:

[
    {
        "type": "mcp",
        "url": "http://xx.xx.xx:8123/api/mcp",
        "spec_type": "url",
        "spec": "",
        "path": "openapi.json",
        "auth_type": "bearer",
        "key": "token",
        "info": {
            "id": "Castlehome",
            "name": "HA",
            "description": "Castlehome"
        }
    }
]

Logs & Screenshots

Relevant part of the log:

2026-04-22 12:31:30.178 | INFO     | httpx._client:_send_single_request:1740 - HTTP Request: POST http://homeassistant.zuhause.xx:8123/api/mcp "HTTP/1.1 200 OK"
2026-04-22 12:31:30.179 | INFO     | mcp.client.streamable_http:_maybe_extract_protocol_version_from_message:193 - Negotiated protocol version: 2025-11-25
2026-04-22 12:31:30.180 | INFO     | httpx._client:_send_single_request:1740 - HTTP Request: POST http://xx.xx.xx:8123/api/mcp "HTTP/1.1 202 Accepted"
2026-04-22 12:31:30.200 | INFO     | httpx._client:_send_single_request:1740 - HTTP Request: POST http://xx.xx.xx:8123/api/mcp "HTTP/1.1 200 OK"
2026-04-22 12:31:30.201 | INFO     | uvicorn.protocols.http.httptools_impl:send:483 - yy.yy.yy.yy:53960 - "POST /api/v1/configs/tool_servers/verify HTTP/1.1" 500
Exception in ASGI application
  + Exception Group Traceback (most recent call last):
  |   File "/usr/local/lib/python3.11/site-packages/starlette/_utils.py", line 81, in collapse_excgroups
  |     yield
  |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 192, in __call__
  |     async with anyio.create_task_group() as task_group:
  |   File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 799, in __aexit__
  |     raise BaseExceptionGroup(
  | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception)
  +-+---------------- 1 ----------------
    | Traceback (most recent call last):
    |   File "/usr/local/lib/python3.11/site-packages/uvicorn/protocols/http/httptools_impl.py", line 416, in run_asgi
    |     result = await app(  # type: ignore[func-returns-value]
    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/usr/local/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 60, in __call__
    |     return await self.app(scope, receive, send)
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/usr/local/lib/python3.11/site-packages/fastapi/applications.py", line 1160, in __call__
    |     await super().__call__(scope, receive, send)
    |   File "/usr/local/lib/python3.11/site-packages/starlette/applications.py", line 90, in __call__
    |     await self.middleware_stack(scope, receive, send)
    |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 186, in __call__
    |     raise exc
    |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 164, in __call__
    |     await self.app(scope, receive, _send)
    |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/sessions.py", line 88, in __call__
    |     await self.app(scope, receive, send_wrapper)
    |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/cors.py", line 96, in __call__
    |     await self.simple_response(scope, receive, send, request_headers=headers)
    |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/cors.py", line 154, in simple_response
    |     await self.app(scope, receive, send)
    |   File "/app/backend/open_webui/utils/asgi_middleware.py", line 199, in __call__
    |     await self.app(scope, receive, send)
    |   File "/app/backend/open_webui/utils/asgi_middleware.py", line 163, in __call__
    |     await self.app(scope, receive, send_with_timing)
    |   File "/app/backend/open_webui/utils/asgi_middleware.py", line 91, in __call__
    |     await self.app(scope, receive, send)
    |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 191, in __call__
    |     with recv_stream, send_stream, collapse_excgroups():
    |   File "/usr/local/lib/python3.11/contextlib.py", line 158, in __exit__
    |     self.gen.throw(typ, value, traceback)
    |   File "/usr/local/lib/python3.11/site-packages/starlette/_utils.py", line 87, in collapse_excgroups
    |     raise exc
    |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 193, in __call__
    |     response = await self.dispatch_func(request, call_next)
    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/app/backend/open_webui/utils/security_headers.py", line 11, in dispatch
    |     response = await call_next(request)
    |                ^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 169, in call_next
    |     raise RuntimeError("No response returned.")
    | RuntimeError: No response returned.
    +------------------------------------
During handling of the above exception, another exception occurred:

Additional Information

No response

Originally created by @samuixx on GitHub (Apr 22, 2026). Original GitHub issue: https://github.com/open-webui/open-webui/issues/24001 ### Check Existing Issues - [x] I have searched for any existing and/or related issues. - [x] I have searched for any existing and/or related discussions. - [x] I have also searched in the CLOSED issues AND CLOSED discussions and found no related items (your issue might already be addressed on the development branch!). - [x] I am using the latest version of Open WebUI. ### Installation Method Docker ### Open WebUI Version V08.12 ### Ollama Version (if applicable) 0.21.0 ### Operating System debian ### Browser (if applicable) Chrome ### Confirmation - [x] I have read and followed all instructions in `README.md`. - [x] I am using the latest version of **both** Open WebUI and Ollama. - [x] I have included the browser console logs. - [x] I have included the Docker container logs. - [x] I have **provided every relevant configuration, setting, and environment variable used in my setup.** - [x] I have clearly **listed every relevant configuration, custom setting, environment variable, and command-line option that influences my setup** (such as Docker Compose overrides, .env values, browser settings, authentication configurations, etc). - [x] I have documented **step-by-step reproduction instructions that are precise, sequential, and leave nothing to interpretation**. My steps: - Start with the initial platform/version/OS and dependencies used, - Specify exact install/launch/configure commands, - List URLs visited, user input (incl. example values/emails/passwords if needed), - Describe all options and toggles enabled or changed, - Include any files or environmental changes, - Identify the expected and actual result at each stage, - Ensure any reasonably skilled user can follow and hit the same issue. ### Expected Behavior I'm trying to integrate the Home Assistant MCP server via the OpenWebUI interface. /admin/settings/integrations URL: http://xx.xx.xx:8123/api/mcp Authentication: Bearer: xxxxxxxxxxxxxxxxxxx I expect a successful connection test and a tool selection in the chat ### Actual Behavior The connection test returns no result, but the following logs appear in the Docker container: ``` 2026-04-22 12:31:30.201 | INFO | uvicorn.protocols.http.httptools_impl:send:483 - yy.yy.yy.yy:53960 - "POST /api/v1/configs/tool_servers/verify HTTP/1.1" 500 Exception in ASGI application ``` ### Steps to Reproduce Config: ``` [ { "type": "mcp", "url": "http://xx.xx.xx:8123/api/mcp", "spec_type": "url", "spec": "", "path": "openapi.json", "auth_type": "bearer", "key": "token", "info": { "id": "Castlehome", "name": "HA", "description": "Castlehome" } } ] ``` ### Logs & Screenshots Relevant part of the log: ``` 2026-04-22 12:31:30.178 | INFO | httpx._client:_send_single_request:1740 - HTTP Request: POST http://homeassistant.zuhause.xx:8123/api/mcp "HTTP/1.1 200 OK" 2026-04-22 12:31:30.179 | INFO | mcp.client.streamable_http:_maybe_extract_protocol_version_from_message:193 - Negotiated protocol version: 2025-11-25 2026-04-22 12:31:30.180 | INFO | httpx._client:_send_single_request:1740 - HTTP Request: POST http://xx.xx.xx:8123/api/mcp "HTTP/1.1 202 Accepted" 2026-04-22 12:31:30.200 | INFO | httpx._client:_send_single_request:1740 - HTTP Request: POST http://xx.xx.xx:8123/api/mcp "HTTP/1.1 200 OK" 2026-04-22 12:31:30.201 | INFO | uvicorn.protocols.http.httptools_impl:send:483 - yy.yy.yy.yy:53960 - "POST /api/v1/configs/tool_servers/verify HTTP/1.1" 500 Exception in ASGI application + Exception Group Traceback (most recent call last): | File "/usr/local/lib/python3.11/site-packages/starlette/_utils.py", line 81, in collapse_excgroups | yield | File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 192, in __call__ | async with anyio.create_task_group() as task_group: | File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 799, in __aexit__ | raise BaseExceptionGroup( | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception) +-+---------------- 1 ---------------- | Traceback (most recent call last): | File "/usr/local/lib/python3.11/site-packages/uvicorn/protocols/http/httptools_impl.py", line 416, in run_asgi | result = await app( # type: ignore[func-returns-value] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/usr/local/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 60, in __call__ | return await self.app(scope, receive, send) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/usr/local/lib/python3.11/site-packages/fastapi/applications.py", line 1160, in __call__ | await super().__call__(scope, receive, send) | File "/usr/local/lib/python3.11/site-packages/starlette/applications.py", line 90, in __call__ | await self.middleware_stack(scope, receive, send) | File "/usr/local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 186, in __call__ | raise exc | File "/usr/local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 164, in __call__ | await self.app(scope, receive, _send) | File "/usr/local/lib/python3.11/site-packages/starlette/middleware/sessions.py", line 88, in __call__ | await self.app(scope, receive, send_wrapper) | File "/usr/local/lib/python3.11/site-packages/starlette/middleware/cors.py", line 96, in __call__ | await self.simple_response(scope, receive, send, request_headers=headers) | File "/usr/local/lib/python3.11/site-packages/starlette/middleware/cors.py", line 154, in simple_response | await self.app(scope, receive, send) | File "/app/backend/open_webui/utils/asgi_middleware.py", line 199, in __call__ | await self.app(scope, receive, send) | File "/app/backend/open_webui/utils/asgi_middleware.py", line 163, in __call__ | await self.app(scope, receive, send_with_timing) | File "/app/backend/open_webui/utils/asgi_middleware.py", line 91, in __call__ | await self.app(scope, receive, send) | File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 191, in __call__ | with recv_stream, send_stream, collapse_excgroups(): | File "/usr/local/lib/python3.11/contextlib.py", line 158, in __exit__ | self.gen.throw(typ, value, traceback) | File "/usr/local/lib/python3.11/site-packages/starlette/_utils.py", line 87, in collapse_excgroups | raise exc | File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 193, in __call__ | response = await self.dispatch_func(request, call_next) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/app/backend/open_webui/utils/security_headers.py", line 11, in dispatch | response = await call_next(request) | ^^^^^^^^^^^^^^^^^^^^^^^^ | File "/usr/local/lib/python3.11/site-packages/starlette/middleware/base.py", line 169, in call_next | raise RuntimeError("No response returned.") | RuntimeError: No response returned. +------------------------------------ During handling of the above exception, another exception occurred: ``` ### Additional Information _No response_
GiteaMirror added the bug label 2026-05-13 07:35:22 -05:00
Author
Owner

@mikesprague commented on GitHub (Apr 22, 2026):

I am seeing similar behavior for all remote MCP servers in Open WebUI v0.9.0 and above.

Same ASGI Exception error messge as reported above.

Reverting Open WebUI to v0.8.12 restores the remote MCP server functionality for me.

<!-- gh-comment-id:4296930185 --> @mikesprague commented on GitHub (Apr 22, 2026): I am seeing similar behavior for all remote MCP servers in Open WebUI v0.9.0 and above. Same ASGI Exception error messge as reported above. Reverting Open WebUI to v0.8.12 restores the remote MCP server functionality for me.
Author
Owner

@samuixx commented on GitHub (Apr 22, 2026):

I am seeing similar behavior for all remote MCP servers in Open WebUI v0.9.0 and above.

Same ASGI Exception error messge as reported above.

Reverting Open WebUI to v0.8.12 restores the remote MCP server functionality for me.

I'm using the latest Docker image from: ghcr.io/open-webui/open-webui:main
The "About" section shows Open WebUI version v0.8.12 (latest)

changed from main to Tag [v0.8.12] and now the connection test works

<!-- gh-comment-id:4297067292 --> @samuixx commented on GitHub (Apr 22, 2026): > I am seeing similar behavior for all remote MCP servers in Open WebUI v0.9.0 and above. > > Same ASGI Exception error messge as reported above. > > Reverting Open WebUI to v0.8.12 restores the remote MCP server functionality for me. I'm using the latest Docker image from: ghcr.io/open-webui/open-webui:main The "About" section shows Open WebUI version v0.8.12 (latest) changed from main to Tag [v0.8.12] and now the connection test works
Author
Owner

@cyberrranger commented on GitHub (Apr 23, 2026):

thx, i use

Image

after an downgrade to 0.8.12 verify is working

<!-- gh-comment-id:4303393987 --> @cyberrranger commented on GitHub (Apr 23, 2026): thx, i use <img width="499" height="379" alt="Image" src="https://github.com/user-attachments/assets/e8532722-47f5-40fa-bd72-4e743cc12f49" /> after an downgrade to 0.8.12 verify is working
Author
Owner

@calculus-ask commented on GitHub (Apr 23, 2026):

i have time mcp server in litellm proxy and trying to add the time mcp server in open-webui.

url: http://localhost:6080/mcp/fcff69ac-d224-4850-a398-075fe9dc9d34
bearer token: sk-4wVDO8...

Traceback (most recent call last):

File "/home/--/openwebui/.venv/bin/open-webui", line 8, in
sys.exit(app())
│ │ └ <typer.main.Typer object at 0x7c02b20616d0>
│ └
└ <module 'sys' (built-in)>
File "/home/--/openwebui/.venv/lib/python3.12/site-packages/typer/main.py", line 1135, in call
return get_command(self)(*args, **kwargs)
│ │ │ └ {}
│ │ └ ()
│ └ <typer.main.Typer object at 0x7c02b20616d0>
└ <function get_command at 0x7c02b1b99440>
File "/home/--/openwebui/.venv/lib/python3.12/site-packages/click/core.py", line 1485, in call
return self.main(*args, **kwargs)
│ │ │ └ {}
│ │ └ ()
│ └ <function TyperGroup.main at 0x7c02b1b98ea0>

File "/home/--/openwebui/.venv/lib/python3.12/site-packages/typer/core.py", line 795, in main
return _main(
└ <function _main at 0x7c02b1b7bb00>
File "/home/--/openwebui/.venv/lib/python3.12/site-packages/typer/core.py", line 188, in _main
rv = self.invoke(ctx)
│ │ └ <click.core.Context object at 0x7c02b1380650>
│ └ <function Group.invoke at 0x7c02b1c85760>

File "/home/--/openwebui/.venv/lib/python3.12/site-packages/click/core.py", line 1873, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
│ │ │ │ └ <click.core.Context object at 0x7c02b1dd37a0>
│ │ │ └ <function Command.invoke at 0x7c02b1c84540>
│ │ └
│ └ <click.core.Context object at 0x7c02b1dd37a0>
└ <function Group.invoke.._process_result at 0x7c02b0faade0>
File "/home/--/openwebui/.venv/lib/python3.12/site-packages/click/core.py", line 1269, in invoke
return ctx.invoke(self.callback, **ctx.params)
│ │ │ │ │ └ {'host': '0.0.0.0', 'port': 8080}
│ │ │ │ └ <click.core.Context object at 0x7c02b1dd37a0>
│ │ │ └ <function serve at 0x7c02b0faaac0>
│ │ └
│ └ <function Context.invoke at 0x7c02b1c7b740>
└ <click.core.Context object at 0x7c02b1dd37a0>
File "/home/--/openwebui/.venv/lib/python3.12/site-packages/click/core.py", line 824, in invoke
return callback(*args, **kwargs)
│ │ └ {'host': '0.0.0.0', 'port': 8080}
│ └ ()
└ <function serve at 0x7c02b0faaac0>
File "/home/--/openwebui/.venv/lib/python3.12/site-packages/typer/main.py", line 1514, in wrapper
return callback(**use_params)
│ └ {'host': '0.0.0.0', 'port': 8080}
└ <function serve at 0x7c02b11ca2a0>
File "/home/--/openwebui/.venv/lib/python3.12/site-packages/open_webui/init.py", line 71, in serve
uvicorn.run(
│ └ <function run at 0x7c02b11ca520>
└ <module 'uvicorn' from '/home/--/openwebui/.venv/lib/python3.12/site-packages/uvicorn/init.py'>
File "/home/--/openwebui/.venv/lib/python3.12/site-packages/uvicorn/main.py", line 606, in run
server.run()
│ └ <function Server.run at 0x7c02b1222020>
└ <uvicorn.server.Server object at 0x7c0088411d30>
File "/home/--/openwebui/.venv/lib/python3.12/site-packages/uvicorn/server.py", line 75, in run
return asyncio_run(self.serve(sockets=sockets), loop_factory=self.config.get_loop_factory())
│ │ │ │ │ │ └ <function Config.get_loop_factory at 0x7c02b11ca0c0>
│ │ │ │ │ └ <uvicorn.config.Config object at 0x7c02b10e71d0>
│ │ │ │ └ <uvicorn.server.Server object at 0x7c0088411d30>
│ │ │ └ None
│ │ └ <function Server.serve at 0x7c02b12220c0>
│ └ <uvicorn.server.Server object at 0x7c0088411d30>
└ <function run at 0x7c02b1b9a480>
File "/usr/lib/python3.12/asyncio/runners.py", line 194, in run
return runner.run(main)
│ │ └ <coroutine object Server.serve at 0x7c008831da80>
│ └ <function Runner.run at 0x7c02b1308c20>
└ <asyncio.runners.Runner object at 0x7c008b7bac00>
File "/usr/lib/python3.12/asyncio/runners.py", line 118, in run
return self._loop.run_until_complete(task)
│ │ │ └ <Task pending name='Task-1' coro=<Server.serve() running at /home/--/openwebui/.venv/lib/python3.12/site-packages/uvicor...
│ │ └ <cyfunction Loop.run_until_complete at 0x7c008a62f880>
│ └ <uvloop.Loop running=True closed=False debug=False>
└ <asyncio.runners.Runner object at 0x7c008b7bac00>

File "/usr/lib/python3.12/contextlib.py", line 696, in aclose
await self.aexit(None, None, None)
│ └ <function AsyncExitStack.aexit at 0x7c02b1f55da0>
└ <contextlib.AsyncExitStack object at 0x7c006fdcfc50>
File "/usr/lib/python3.12/contextlib.py", line 754, in aexit
raise exc_details[1]
└ (<class 'RuntimeError'>, RuntimeError('Attempted to exit cancel scope in a different task than it was entered in'), <tracebac...
File "/usr/lib/python3.12/contextlib.py", line 737, in aexit
cb_suppress = await cb(*exc_details)
│ └ (<class 'RuntimeError'>, RuntimeError('Attempted to exit cancel scope in a different task than it was entered in'), <tracebac...
└ <bound method _AsyncGeneratorContextManager.aexit of <contextlib._AsyncGeneratorContextManager object at 0x7c006ffb73e0>>
File "/usr/lib/python3.12/contextlib.py", line 231, in aexit
await self.gen.athrow(value)
│ │ │ └ RuntimeError('Attempted to exit cancel scope in a different task than it was entered in')
│ │ └ <method 'athrow' of 'async_generator' objects>
│ └ <async_generator object streamablehttp_client at 0x7c00883ead40>
└ <contextlib._AsyncGeneratorContextManager object at 0x7c006ffb73e0>
File "/home/--/openwebui/.venv/lib/python3.12/site-packages/mcp/client/streamable_http.py", line 717, in streamablehttp_client
async with streamable_http_client(
└ <function streamable_http_client at 0x7c00b93b02c0>
File "/usr/lib/python3.12/contextlib.py", line 231, in aexit
await self.gen.athrow(value)
│ │ │ └ RuntimeError('Attempted to exit cancel scope in a different task than it was entered in')
│ │ └ <method 'athrow' of 'async_generator' objects>
│ └ <async_generator object streamable_http_client at 0x7c008807af00>
└ <contextlib._AsyncGeneratorContextManager object at 0x7c006fd6c4a0>
File "/home/--/openwebui/.venv/lib/python3.12/site-packages/mcp/client/streamable_http.py", line 647, in streamable_http_client
async with anyio.create_task_group() as tg:
│ │ └ <anyio._backends._asyncio.TaskGroup object at 0x7c006fd6fbc0>
│ └ <function create_task_group at 0x7c02b114dd00>
└ <module 'anyio' from '/home/--/openwebui/.venv/lib/python3.12/site-packages/anyio/init.py'>
File "/home/--/openwebui/.venv/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 789, in aexit
if self.cancel_scope.exit(type(exc), exc, exc.traceback):
│ │ └ <function CancelScope.exit at 0x7c006ff6b600>
│ └ <anyio._backends._asyncio.CancelScope object at 0x7c006fd6c5f0>
└ <anyio._backends._asyncio.TaskGroup object at 0x7c006fd6fbc0>
File "/home/--/openwebui/.venv/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 461, in exit
raise RuntimeError(

not getting any reponse also.

<!-- gh-comment-id:4303986231 --> @calculus-ask commented on GitHub (Apr 23, 2026): i have time mcp server in litellm proxy and trying to add the time mcp server in open-webui. url: http://localhost:6080/mcp/fcff69ac-d224-4850-a398-075fe9dc9d34 bearer token: sk-4wVDO8... Traceback (most recent call last): File "/home/--/openwebui/.venv/bin/open-webui", line 8, in <module> sys.exit(app()) │ │ └ <typer.main.Typer object at 0x7c02b20616d0> │ └ <built-in function exit> └ <module 'sys' (built-in)> File "/home/--/openwebui/.venv/lib/python3.12/site-packages/typer/main.py", line 1135, in __call__ return get_command(self)(*args, **kwargs) │ │ │ └ {} │ │ └ () │ └ <typer.main.Typer object at 0x7c02b20616d0> └ <function get_command at 0x7c02b1b99440> File "/home/--/openwebui/.venv/lib/python3.12/site-packages/click/core.py", line 1485, in __call__ return self.main(*args, **kwargs) │ │ │ └ {} │ │ └ () │ └ <function TyperGroup.main at 0x7c02b1b98ea0> └ <TyperGroup > File "/home/--/openwebui/.venv/lib/python3.12/site-packages/typer/core.py", line 795, in main return _main( └ <function _main at 0x7c02b1b7bb00> File "/home/--/openwebui/.venv/lib/python3.12/site-packages/typer/core.py", line 188, in _main rv = self.invoke(ctx) │ │ └ <click.core.Context object at 0x7c02b1380650> │ └ <function Group.invoke at 0x7c02b1c85760> └ <TyperGroup > File "/home/--/openwebui/.venv/lib/python3.12/site-packages/click/core.py", line 1873, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) │ │ │ │ └ <click.core.Context object at 0x7c02b1dd37a0> │ │ │ └ <function Command.invoke at 0x7c02b1c84540> │ │ └ <TyperCommand serve> │ └ <click.core.Context object at 0x7c02b1dd37a0> └ <function Group.invoke.<locals>._process_result at 0x7c02b0faade0> File "/home/--/openwebui/.venv/lib/python3.12/site-packages/click/core.py", line 1269, in invoke return ctx.invoke(self.callback, **ctx.params) │ │ │ │ │ └ {'host': '0.0.0.0', 'port': 8080} │ │ │ │ └ <click.core.Context object at 0x7c02b1dd37a0> │ │ │ └ <function serve at 0x7c02b0faaac0> │ │ └ <TyperCommand serve> │ └ <function Context.invoke at 0x7c02b1c7b740> └ <click.core.Context object at 0x7c02b1dd37a0> File "/home/--/openwebui/.venv/lib/python3.12/site-packages/click/core.py", line 824, in invoke return callback(*args, **kwargs) │ │ └ {'host': '0.0.0.0', 'port': 8080} │ └ () └ <function serve at 0x7c02b0faaac0> File "/home/--/openwebui/.venv/lib/python3.12/site-packages/typer/main.py", line 1514, in wrapper return callback(**use_params) │ └ {'host': '0.0.0.0', 'port': 8080} └ <function serve at 0x7c02b11ca2a0> File "/home/--/openwebui/.venv/lib/python3.12/site-packages/open_webui/__init__.py", line 71, in serve uvicorn.run( │ └ <function run at 0x7c02b11ca520> └ <module 'uvicorn' from '/home/--/openwebui/.venv/lib/python3.12/site-packages/uvicorn/__init__.py'> File "/home/--/openwebui/.venv/lib/python3.12/site-packages/uvicorn/main.py", line 606, in run server.run() │ └ <function Server.run at 0x7c02b1222020> └ <uvicorn.server.Server object at 0x7c0088411d30> File "/home/--/openwebui/.venv/lib/python3.12/site-packages/uvicorn/server.py", line 75, in run return asyncio_run(self.serve(sockets=sockets), loop_factory=self.config.get_loop_factory()) │ │ │ │ │ │ └ <function Config.get_loop_factory at 0x7c02b11ca0c0> │ │ │ │ │ └ <uvicorn.config.Config object at 0x7c02b10e71d0> │ │ │ │ └ <uvicorn.server.Server object at 0x7c0088411d30> │ │ │ └ None │ │ └ <function Server.serve at 0x7c02b12220c0> │ └ <uvicorn.server.Server object at 0x7c0088411d30> └ <function run at 0x7c02b1b9a480> File "/usr/lib/python3.12/asyncio/runners.py", line 194, in run return runner.run(main) │ │ └ <coroutine object Server.serve at 0x7c008831da80> │ └ <function Runner.run at 0x7c02b1308c20> └ <asyncio.runners.Runner object at 0x7c008b7bac00> File "/usr/lib/python3.12/asyncio/runners.py", line 118, in run return self._loop.run_until_complete(task) │ │ │ └ <Task pending name='Task-1' coro=<Server.serve() running at /home/--/openwebui/.venv/lib/python3.12/site-packages/uvicor... │ │ └ <cyfunction Loop.run_until_complete at 0x7c008a62f880> │ └ <uvloop.Loop running=True closed=False debug=False> └ <asyncio.runners.Runner object at 0x7c008b7bac00> > File "/usr/lib/python3.12/contextlib.py", line 696, in aclose await self.__aexit__(None, None, None) │ └ <function AsyncExitStack.__aexit__ at 0x7c02b1f55da0> └ <contextlib.AsyncExitStack object at 0x7c006fdcfc50> File "/usr/lib/python3.12/contextlib.py", line 754, in __aexit__ raise exc_details[1] └ (<class 'RuntimeError'>, RuntimeError('Attempted to exit cancel scope in a different task than it was entered in'), <tracebac... File "/usr/lib/python3.12/contextlib.py", line 737, in __aexit__ cb_suppress = await cb(*exc_details) │ └ (<class 'RuntimeError'>, RuntimeError('Attempted to exit cancel scope in a different task than it was entered in'), <tracebac... └ <bound method _AsyncGeneratorContextManager.__aexit__ of <contextlib._AsyncGeneratorContextManager object at 0x7c006ffb73e0>> File "/usr/lib/python3.12/contextlib.py", line 231, in __aexit__ await self.gen.athrow(value) │ │ │ └ RuntimeError('Attempted to exit cancel scope in a different task than it was entered in') │ │ └ <method 'athrow' of 'async_generator' objects> │ └ <async_generator object streamablehttp_client at 0x7c00883ead40> └ <contextlib._AsyncGeneratorContextManager object at 0x7c006ffb73e0> File "/home/--/openwebui/.venv/lib/python3.12/site-packages/mcp/client/streamable_http.py", line 717, in streamablehttp_client async with streamable_http_client( └ <function streamable_http_client at 0x7c00b93b02c0> File "/usr/lib/python3.12/contextlib.py", line 231, in __aexit__ await self.gen.athrow(value) │ │ │ └ RuntimeError('Attempted to exit cancel scope in a different task than it was entered in') │ │ └ <method 'athrow' of 'async_generator' objects> │ └ <async_generator object streamable_http_client at 0x7c008807af00> └ <contextlib._AsyncGeneratorContextManager object at 0x7c006fd6c4a0> File "/home/--/openwebui/.venv/lib/python3.12/site-packages/mcp/client/streamable_http.py", line 647, in streamable_http_client async with anyio.create_task_group() as tg: │ │ └ <anyio._backends._asyncio.TaskGroup object at 0x7c006fd6fbc0> │ └ <function create_task_group at 0x7c02b114dd00> └ <module 'anyio' from '/home/--/openwebui/.venv/lib/python3.12/site-packages/anyio/__init__.py'> File "/home/--/openwebui/.venv/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 789, in __aexit__ if self.cancel_scope.__exit__(type(exc), exc, exc.__traceback__): │ │ └ <function CancelScope.__exit__ at 0x7c006ff6b600> │ └ <anyio._backends._asyncio.CancelScope object at 0x7c006fd6c5f0> └ <anyio._backends._asyncio.TaskGroup object at 0x7c006fd6fbc0> File "/home/--/openwebui/.venv/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 461, in __exit__ raise RuntimeError( not getting any reponse also.
Author
Owner

@Daabramov commented on GitHub (Apr 23, 2026):

same on 0.9.1

<!-- gh-comment-id:4308165506 --> @Daabramov commented on GitHub (Apr 23, 2026): same on 0.9.1
Author
Owner

@mikesprague commented on GitHub (Apr 24, 2026):

FWIW this appears to be resolved for me in v0.9.2

<!-- gh-comment-id:4313599564 --> @mikesprague commented on GitHub (Apr 24, 2026): FWIW this appears to be resolved for me in `v0.9.2`
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#74751