[GH-ISSUE #237] issue: Crashes without any tools #108

Closed
opened 2026-10-18 21:11:48 +00:00 by bsakaguchi · 5 comments
Owner

Originally created by @MauritzFunke on GitHub (Aug 21, 2025).
Original GitHub issue: https://github.com/open-webui/mcpo/issues/237

Check Existing Issues

  • I have searched the existing issues and discussions.
  • I am using the latest version of mcpo.

mcpo Version

0.0.17

Open WebUI Version (if applicable)

No response

Operating System

Linux Mint 22 x86_64

Browser (if applicable)

No response

Confirmation

  • I have read and followed all instructions in README.md.
  • I am using the latest version of both MCPO and Open WebUI.
  • I have included the browser console logs.
  • I have included the Docker container logs.
  • I have listed steps to reproduce the bug in detail.

Expected Behavior

Server runs

Actual Behavior

Crashes with "mcp.shared.exceptions.McpError: Method not found":

Steps to Reproduce

  1. Start any mcp Server without any tools (in my example the demo from https://github.com/modelcontextprotocol/typescript-sdk with all tools removed
  2. if you are trying to reproduce use the following versions as dependencies as every other zed version will fail:
    "dependencies": {
        "@modelcontextprotocol/sdk": "^1.17.3",
        "zod": "3.25.49"
    }
  1. Run mcpo: mcpo --host 0.0.0.0 --port 8000 -- node dist/poc.js

Logs & Screenshots

Starting MCP OpenAPI Proxy on 0.0.0.0:8000 with command: node dist/poc.js
2025-08-21 13:07:39,581 - INFO - Starting MCPO Server...
2025-08-21 13:07:39,581 - INFO -   Name: MCP OpenAPI Proxy
2025-08-21 13:07:39,581 - INFO -   Version: 1.0
2025-08-21 13:07:39,581 - INFO -   Description: Automatically generated API from MCP Tool Schemas
2025-08-21 13:07:39,581 - INFO -   Hostname: REDACTED-ThinkPad-X1-Carbon-Gen-10
2025-08-21 13:07:39,581 - INFO -   Port: 8000
2025-08-21 13:07:39,581 - INFO -   API Key: Not Provided
2025-08-21 13:07:39,581 - INFO -   CORS Allowed Origins: ['*']
2025-08-21 13:07:39,581 - INFO -   Path Prefix: /
2025-08-21 13:07:39,581 - INFO - Configuring for a single Stdio MCP Server with command: node dist/poc.js
2025-08-21 13:07:39,581 - INFO - Uvicorn server starting...
INFO:     Started server process [259658]
INFO:     Waiting for application startup.
2025-08-21 13:07:39,650 - ERROR - Failed to connect to MCP server 'demo-server': ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception)
  + Exception Group Traceback (most recent call last):
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/stdio/__init__.py", line 187, in stdio_client
  |     yield read_stream, write_stream
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 423, in lifespan
  |     async with ClientSession(reader, writer) as session:
  |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 218, in __aexit__
  |     return await self._task_group.__aexit__(exc_type, exc_val, exc_tb)
  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 815, in __aexit__
  |     raise BaseExceptionGroup(
  | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception)
  +-+---------------- 1 ----------------
    | Traceback (most recent call last):
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 425, in lifespan
    |     await create_dynamic_endpoints(app, api_dependency=api_dependency)
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 271, in create_dynamic_endpoints
    |     tools_result = await session.list_tools()
    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/session.py", line 386, in list_tools
    |     result = await self.send_request(
    |              ^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 286, in send_request
    |     raise McpError(response_or_error.error)
    | mcp.shared.exceptions.McpError: Method not found
    +------------------------------------

During handling of the above exception, another exception occurred:

  + Exception Group Traceback (most recent call last):
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 422, in lifespan
  |     async with client_context as (reader, writer, *_):
  |                ^^^^^^^^^^^^^^
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/contextlib.py", line 231, in __aexit__
  |     await self.gen.athrow(value)
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/stdio/__init__.py", line 181, in stdio_client
  |     anyio.create_task_group() as tg,
  |     ^^^^^^^^^^^^^^^^^^^^^^^^^
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 815, in __aexit__
  |     raise BaseExceptionGroup(
  | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception)
  +-+---------------- 1 ----------------
    | Traceback (most recent call last):
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 425, in lifespan
    |     await create_dynamic_endpoints(app, api_dependency=api_dependency)
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 271, in create_dynamic_endpoints
    |     tools_result = await session.list_tools()
    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/session.py", line 386, in list_tools
    |     result = await self.send_request(
    |              ^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 286, in send_request
    |     raise McpError(response_or_error.error)
    | mcp.shared.exceptions.McpError: Method not found
    | 
    | During handling of the above exception, another exception occurred:
    | 
    | Exception Group Traceback (most recent call last):
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/stdio/__init__.py", line 187, in stdio_client
    |     yield read_stream, write_stream
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 423, in lifespan
    |     async with ClientSession(reader, writer) as session:
    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 218, in __aexit__
    |     return await self._task_group.__aexit__(exc_type, exc_val, exc_tb)
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 815, in __aexit__
    |     raise BaseExceptionGroup(
    | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception)
    +-+---------------- 1 ----------------
      | Traceback (most recent call last):
      |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 425, in lifespan
      |     await create_dynamic_endpoints(app, api_dependency=api_dependency)
      |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 271, in create_dynamic_endpoints
      |     tools_result = await session.list_tools()
      |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^
      |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/session.py", line 386, in list_tools
      |     result = await self.send_request(
      |              ^^^^^^^^^^^^^^^^^^^^^^^^
      |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 286, in send_request
      |     raise McpError(response_or_error.error)
      | mcp.shared.exceptions.McpError: Method not found
      +------------------------------------
ERROR:      + Exception Group Traceback (most recent call last):
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/stdio/__init__.py", line 187, in stdio_client
  |     yield read_stream, write_stream
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 423, in lifespan
  |     async with ClientSession(reader, writer) as session:
  |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 218, in __aexit__
  |     return await self._task_group.__aexit__(exc_type, exc_val, exc_tb)
  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 815, in __aexit__
  |     raise BaseExceptionGroup(
  | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception)
  +-+---------------- 1 ----------------
    | Traceback (most recent call last):
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 425, in lifespan
    |     await create_dynamic_endpoints(app, api_dependency=api_dependency)
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 271, in create_dynamic_endpoints
    |     tools_result = await session.list_tools()
    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/session.py", line 386, in list_tools
    |     result = await self.send_request(
    |              ^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 286, in send_request
    |     raise McpError(response_or_error.error)
    | mcp.shared.exceptions.McpError: Method not found
    +------------------------------------

During handling of the above exception, another exception occurred:

  + Exception Group Traceback (most recent call last):
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/starlette/routing.py", line 694, in lifespan
  |     async with self.lifespan_context(app) as maybe_state:
  |                ^^^^^^^^^^^^^^^^^^^^^^^^^^
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/contextlib.py", line 210, in __aenter__
  |     return await anext(self.gen)
  |            ^^^^^^^^^^^^^^^^^^^^^
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 422, in lifespan
  |     async with client_context as (reader, writer, *_):
  |                ^^^^^^^^^^^^^^
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/contextlib.py", line 231, in __aexit__
  |     await self.gen.athrow(value)
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/stdio/__init__.py", line 181, in stdio_client
  |     anyio.create_task_group() as tg,
  |     ^^^^^^^^^^^^^^^^^^^^^^^^^
  |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 815, in __aexit__
  |     raise BaseExceptionGroup(
  | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception)
  +-+---------------- 1 ----------------
    | Traceback (most recent call last):
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 425, in lifespan
    |     await create_dynamic_endpoints(app, api_dependency=api_dependency)
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 271, in create_dynamic_endpoints
    |     tools_result = await session.list_tools()
    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/session.py", line 386, in list_tools
    |     result = await self.send_request(
    |              ^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 286, in send_request
    |     raise McpError(response_or_error.error)
    | mcp.shared.exceptions.McpError: Method not found
    | 
    | During handling of the above exception, another exception occurred:
    | 
    | Exception Group Traceback (most recent call last):
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/stdio/__init__.py", line 187, in stdio_client
    |     yield read_stream, write_stream
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 423, in lifespan
    |     async with ClientSession(reader, writer) as session:
    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 218, in __aexit__
    |     return await self._task_group.__aexit__(exc_type, exc_val, exc_tb)
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 815, in __aexit__
    |     raise BaseExceptionGroup(
    | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception)
    +-+---------------- 1 ----------------
      | Traceback (most recent call last):
      |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 425, in lifespan
      |     await create_dynamic_endpoints(app, api_dependency=api_dependency)
      |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 271, in create_dynamic_endpoints
      |     tools_result = await session.list_tools()
      |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^
      |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/session.py", line 386, in list_tools
      |     result = await self.send_request(
      |              ^^^^^^^^^^^^^^^^^^^^^^^^
      |   File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 286, in send_request
      |     raise McpError(response_or_error.error)
      | mcp.shared.exceptions.McpError: Method not found
      +------------------------------------

ERROR:    Application startup failed. Exiting.
2025-08-21 13:07:39,655 - WARNING - Server task exited unexpectedly. Initiating shutdown.
2025-08-21 13:07:39,655 - INFO - Initiating server shutdown...
2025-08-21 13:07:39,655 - INFO - Server shutdown complete

Additional Information

No response

Originally created by @MauritzFunke on GitHub (Aug 21, 2025). Original GitHub issue: https://github.com/open-webui/mcpo/issues/237 ### Check Existing Issues - [x] I have searched the existing issues and discussions. - [x] I am using the latest version of mcpo. ### mcpo Version 0.0.17 ### Open WebUI Version (if applicable) _No response_ ### Operating System Linux Mint 22 x86_64 ### Browser (if applicable) _No response_ ### Confirmation - [x] I have read and followed all instructions in `README.md`. - [x] I am using the latest version of **both** MCPO and Open WebUI. - [x] I have included the browser console logs. - [x] I have included the Docker container logs. - [x] I have listed steps to reproduce the bug in detail. ### Expected Behavior Server runs ### Actual Behavior Crashes with "mcp.shared.exceptions.McpError: Method not found": ### Steps to Reproduce 1. Start any mcp Server without any tools (in my example the demo from https://github.com/modelcontextprotocol/typescript-sdk with all tools removed 2. if you are trying to reproduce use the following versions as dependencies as every other zed version will fail: ``` "dependencies": { "@modelcontextprotocol/sdk": "^1.17.3", "zod": "3.25.49" } ``` 3. Run mcpo: `mcpo --host 0.0.0.0 --port 8000 -- node dist/poc.js` ### Logs & Screenshots ``` Starting MCP OpenAPI Proxy on 0.0.0.0:8000 with command: node dist/poc.js 2025-08-21 13:07:39,581 - INFO - Starting MCPO Server... 2025-08-21 13:07:39,581 - INFO - Name: MCP OpenAPI Proxy 2025-08-21 13:07:39,581 - INFO - Version: 1.0 2025-08-21 13:07:39,581 - INFO - Description: Automatically generated API from MCP Tool Schemas 2025-08-21 13:07:39,581 - INFO - Hostname: REDACTED-ThinkPad-X1-Carbon-Gen-10 2025-08-21 13:07:39,581 - INFO - Port: 8000 2025-08-21 13:07:39,581 - INFO - API Key: Not Provided 2025-08-21 13:07:39,581 - INFO - CORS Allowed Origins: ['*'] 2025-08-21 13:07:39,581 - INFO - Path Prefix: / 2025-08-21 13:07:39,581 - INFO - Configuring for a single Stdio MCP Server with command: node dist/poc.js 2025-08-21 13:07:39,581 - INFO - Uvicorn server starting... INFO: Started server process [259658] INFO: Waiting for application startup. 2025-08-21 13:07:39,650 - ERROR - Failed to connect to MCP server 'demo-server': ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception) + Exception Group Traceback (most recent call last): | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/stdio/__init__.py", line 187, in stdio_client | yield read_stream, write_stream | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 423, in lifespan | async with ClientSession(reader, writer) as session: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 218, in __aexit__ | return await self._task_group.__aexit__(exc_type, exc_val, exc_tb) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 815, in __aexit__ | raise BaseExceptionGroup( | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception) +-+---------------- 1 ---------------- | Traceback (most recent call last): | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 425, in lifespan | await create_dynamic_endpoints(app, api_dependency=api_dependency) | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 271, in create_dynamic_endpoints | tools_result = await session.list_tools() | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/session.py", line 386, in list_tools | result = await self.send_request( | ^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 286, in send_request | raise McpError(response_or_error.error) | mcp.shared.exceptions.McpError: Method not found +------------------------------------ During handling of the above exception, another exception occurred: + Exception Group Traceback (most recent call last): | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 422, in lifespan | async with client_context as (reader, writer, *_): | ^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/contextlib.py", line 231, in __aexit__ | await self.gen.athrow(value) | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/stdio/__init__.py", line 181, in stdio_client | anyio.create_task_group() as tg, | ^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 815, in __aexit__ | raise BaseExceptionGroup( | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception) +-+---------------- 1 ---------------- | Traceback (most recent call last): | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 425, in lifespan | await create_dynamic_endpoints(app, api_dependency=api_dependency) | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 271, in create_dynamic_endpoints | tools_result = await session.list_tools() | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/session.py", line 386, in list_tools | result = await self.send_request( | ^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 286, in send_request | raise McpError(response_or_error.error) | mcp.shared.exceptions.McpError: Method not found | | During handling of the above exception, another exception occurred: | | Exception Group Traceback (most recent call last): | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/stdio/__init__.py", line 187, in stdio_client | yield read_stream, write_stream | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 423, in lifespan | async with ClientSession(reader, writer) as session: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 218, in __aexit__ | return await self._task_group.__aexit__(exc_type, exc_val, exc_tb) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 815, in __aexit__ | raise BaseExceptionGroup( | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception) +-+---------------- 1 ---------------- | Traceback (most recent call last): | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 425, in lifespan | await create_dynamic_endpoints(app, api_dependency=api_dependency) | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 271, in create_dynamic_endpoints | tools_result = await session.list_tools() | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/session.py", line 386, in list_tools | result = await self.send_request( | ^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 286, in send_request | raise McpError(response_or_error.error) | mcp.shared.exceptions.McpError: Method not found +------------------------------------ ERROR: + Exception Group Traceback (most recent call last): | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/stdio/__init__.py", line 187, in stdio_client | yield read_stream, write_stream | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 423, in lifespan | async with ClientSession(reader, writer) as session: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 218, in __aexit__ | return await self._task_group.__aexit__(exc_type, exc_val, exc_tb) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 815, in __aexit__ | raise BaseExceptionGroup( | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception) +-+---------------- 1 ---------------- | Traceback (most recent call last): | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 425, in lifespan | await create_dynamic_endpoints(app, api_dependency=api_dependency) | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 271, in create_dynamic_endpoints | tools_result = await session.list_tools() | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/session.py", line 386, in list_tools | result = await self.send_request( | ^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 286, in send_request | raise McpError(response_or_error.error) | mcp.shared.exceptions.McpError: Method not found +------------------------------------ During handling of the above exception, another exception occurred: + Exception Group Traceback (most recent call last): | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/starlette/routing.py", line 694, in lifespan | async with self.lifespan_context(app) as maybe_state: | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/contextlib.py", line 210, in __aenter__ | return await anext(self.gen) | ^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 422, in lifespan | async with client_context as (reader, writer, *_): | ^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/contextlib.py", line 231, in __aexit__ | await self.gen.athrow(value) | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/stdio/__init__.py", line 181, in stdio_client | anyio.create_task_group() as tg, | ^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 815, in __aexit__ | raise BaseExceptionGroup( | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception) +-+---------------- 1 ---------------- | Traceback (most recent call last): | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 425, in lifespan | await create_dynamic_endpoints(app, api_dependency=api_dependency) | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 271, in create_dynamic_endpoints | tools_result = await session.list_tools() | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/session.py", line 386, in list_tools | result = await self.send_request( | ^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 286, in send_request | raise McpError(response_or_error.error) | mcp.shared.exceptions.McpError: Method not found | | During handling of the above exception, another exception occurred: | | Exception Group Traceback (most recent call last): | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/stdio/__init__.py", line 187, in stdio_client | yield read_stream, write_stream | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 423, in lifespan | async with ClientSession(reader, writer) as session: | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 218, in __aexit__ | return await self._task_group.__aexit__(exc_type, exc_val, exc_tb) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 815, in __aexit__ | raise BaseExceptionGroup( | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception) +-+---------------- 1 ---------------- | Traceback (most recent call last): | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 425, in lifespan | await create_dynamic_endpoints(app, api_dependency=api_dependency) | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcpo/main.py", line 271, in create_dynamic_endpoints | tools_result = await session.list_tools() | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/client/session.py", line 386, in list_tools | result = await self.send_request( | ^^^^^^^^^^^^^^^^^^^^^^^^ | File "/home/REDACTED/.pyenv/versions/3.12.8/lib/python3.12/site-packages/mcp/shared/session.py", line 286, in send_request | raise McpError(response_or_error.error) | mcp.shared.exceptions.McpError: Method not found +------------------------------------ ERROR: Application startup failed. Exiting. 2025-08-21 13:07:39,655 - WARNING - Server task exited unexpectedly. Initiating shutdown. 2025-08-21 13:07:39,655 - INFO - Initiating server shutdown... 2025-08-21 13:07:39,655 - INFO - Server shutdown complete ``` ### Additional Information _No response_
bsakaguchi 2026-10-18 21:11:48 +00:00
  • closed this issue
  • added the
    bug
    label
Author
Owner

@MauritzFunke commented on GitHub (Aug 21, 2025):

Just noticed that this does not handle resources, resource templates or prompts. This is the alternative for mcp for openwebui?

We are currently evaluating production use for openwebui but this is a real dealbreaker for us

<!-- gh-comment-id:3210152476 --> @MauritzFunke commented on GitHub (Aug 21, 2025): Just noticed that this does not handle resources, resource templates or prompts. This is the alternative for mcp for openwebui? We are currently evaluating production use for openwebui but this is a real dealbreaker for us
Author
Owner

@GevatterGaul commented on GitHub (Aug 25, 2025):

Same for me :-( But mcpo will only proxy tools, right? Because I tried to proxy resources and it doesn't expose them.

<!-- gh-comment-id:3221874472 --> @GevatterGaul commented on GitHub (Aug 25, 2025): Same for me :-( But mcpo will only proxy tools, right? Because I tried to proxy resources and it doesn't expose them.
Author
Owner

@MauritzFunke commented on GitHub (Aug 26, 2025):

@GevatterGaul yes only tools. Resources and prompts aren't handled in the code.

<!-- gh-comment-id:3222786913 --> @MauritzFunke commented on GitHub (Aug 26, 2025): @GevatterGaul [yes only tools](https://github.com/open-webui/mcpo/blob/44ce6d05b0392231c359c2d86228835001942851/src/mcpo/main.py#L271). Resources and prompts aren't handled in the code.
Author
Owner

@GevatterGaul commented on GitHub (Sep 7, 2025):

What a shame. Kinda makes me hope we get real MCP support in open-webui soon.

<!-- gh-comment-id:3264036162 --> @GevatterGaul commented on GitHub (Sep 7, 2025): What a shame. Kinda makes me hope we get real MCP support in open-webui soon.
Author
Owner

@taylorwilsdon commented on GitHub (Oct 18, 2025):

That support is here! And there's no use case for starting this without any tools... also, the startup logs there show it does have a tool that crashes (2025-08-21 13:07:39,650 - ERROR - Failed to connect to MCP server 'demo-server': ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception))

<!-- gh-comment-id:3418755042 --> @taylorwilsdon commented on GitHub (Oct 18, 2025): That support is here! And there's no use case for starting this without any tools... also, the startup logs there show it does have a tool that crashes (`2025-08-21 13:07:39,650 - ERROR - Failed to connect to MCP server 'demo-server': ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception)`)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
open-webui/mcpo#108
No description provided.