issue: No clean shutdown & misconfiguration startup hang #32

Open
opened 2026-02-15 20:17:33 -05:00 by yindo · 6 comments
Owner

Originally created by @socket23 on GitHub (Apr 11, 2025).

Check Existing Issues

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

mcpo Version

0.0.10

Open WebUI Version (if applicable)

v0.6.2

Operating System

Windows 11 Pro Insider Preview 24H2

Browser (if applicable)

Chrome

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

Clean shutdown

Actual Behavior

INFO: Started server process [10448]
INFO: Waiting for application startup.
INFO: Application startup complete.
INFO: Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)
INFO: 127.0.0.1:52832 - "GET /openapi.json HTTP/1.1" 200 OK
INFO: 127.0.0.1:52835 - "OPTIONS /openapi.json HTTP/1.1" 200 OK
INFO: 127.0.0.1:52835 - "GET /openapi.json HTTP/1.1" 200 OK
INFO: 127.0.0.1:52858 - "GET /memory HTTP/1.1" 307 Temporary Redirect
INFO: 127.0.0.1:52858 - "GET /memory/ HTTP/1.1" 404 Not Found
INFO: 127.0.0.1:52858 - "GET /favicon.ico HTTP/1.1" 404 Not Found
INFO: Shutting down
INFO: Waiting for application shutdown.
INFO: Application shutdown complete.
INFO: Finished server process [10448]
Exception ignored in: <function _ProactorBasePipeTransport.del at 0x000002CA5786DEE0>
Traceback (most recent call last):
File "C:\Python312\Lib\asyncio\proactor_events.py", line 116, in del
_warn(f"unclosed transport {self!r}", ResourceWarning, source=self)
^^^^^^^^
File "C:\Python312\Lib\asyncio\proactor_events.py", line 80, in repr
info.append(f'fd={self._sock.fileno()}')
^^^^^^^^^^^^^^^^^^^
File "C:\Python312\Lib\asyncio\windows_utils.py", line 102, in fileno
raise ValueError("I/O operation on closed pipe")
ValueError: I/O operation on closed pipe
Exception ignored in: <function BaseSubprocessTransport.del at 0x000002CA5786C720>
Traceback (most recent call last):
File "C:\Python312\Lib\asyncio\base_subprocess.py", line 125, in del
_warn(f"unclosed transport {self!r}", ResourceWarning, source=self)
^^^^^^^^
File "C:\Python312\Lib\asyncio\base_subprocess.py", line 78, in repr
info.append(f'stdout={stdout.pipe}')
^^^^^^^^^^^^^
File "C:\Python312\Lib\asyncio\proactor_events.py", line 80, in repr
info.append(f'fd={self._sock.fileno()}')
^^^^^^^^^^^^^^^^^^^
File "C:\Python312\Lib\asyncio\windows_utils.py", line 102, in fileno
raise ValueError("I/O operation on closed pipe")
ValueError: I/O operation on closed pipe

Steps to Reproduce

Ctrl + C to shutdown

Logs & Screenshots

Included. tell me what else I need to post.

Additional Information

When tring to setup any mcp server, especially mcp-git via config.json, if the configuration is incorrect, the startup will hang and one cannot ctrl+c to close it.

Originally created by @socket23 on GitHub (Apr 11, 2025). ### 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.10 ### Open WebUI Version (if applicable) v0.6.2 ### Operating System Windows 11 Pro Insider Preview 24H2 ### 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** 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 Clean shutdown ### Actual Behavior INFO: Started server process [10448] INFO: Waiting for application startup. INFO: Application startup complete. INFO: Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit) INFO: 127.0.0.1:52832 - "GET /openapi.json HTTP/1.1" 200 OK INFO: 127.0.0.1:52835 - "OPTIONS /openapi.json HTTP/1.1" 200 OK INFO: 127.0.0.1:52835 - "GET /openapi.json HTTP/1.1" 200 OK INFO: 127.0.0.1:52858 - "GET /memory HTTP/1.1" 307 Temporary Redirect INFO: 127.0.0.1:52858 - "GET /memory/ HTTP/1.1" 404 Not Found INFO: 127.0.0.1:52858 - "GET /favicon.ico HTTP/1.1" 404 Not Found INFO: Shutting down INFO: Waiting for application shutdown. INFO: Application shutdown complete. INFO: Finished server process [10448] Exception ignored in: <function _ProactorBasePipeTransport.__del__ at 0x000002CA5786DEE0> Traceback (most recent call last): File "C:\Python312\Lib\asyncio\proactor_events.py", line 116, in __del__ _warn(f"unclosed transport {self!r}", ResourceWarning, source=self) ^^^^^^^^ File "C:\Python312\Lib\asyncio\proactor_events.py", line 80, in __repr__ info.append(f'fd={self._sock.fileno()}') ^^^^^^^^^^^^^^^^^^^ File "C:\Python312\Lib\asyncio\windows_utils.py", line 102, in fileno raise ValueError("I/O operation on closed pipe") ValueError: I/O operation on closed pipe Exception ignored in: <function BaseSubprocessTransport.__del__ at 0x000002CA5786C720> Traceback (most recent call last): File "C:\Python312\Lib\asyncio\base_subprocess.py", line 125, in __del__ _warn(f"unclosed transport {self!r}", ResourceWarning, source=self) ^^^^^^^^ File "C:\Python312\Lib\asyncio\base_subprocess.py", line 78, in __repr__ info.append(f'stdout={stdout.pipe}') ^^^^^^^^^^^^^ File "C:\Python312\Lib\asyncio\proactor_events.py", line 80, in __repr__ info.append(f'fd={self._sock.fileno()}') ^^^^^^^^^^^^^^^^^^^ File "C:\Python312\Lib\asyncio\windows_utils.py", line 102, in fileno raise ValueError("I/O operation on closed pipe") ValueError: I/O operation on closed pipe ### Steps to Reproduce Ctrl + C to shutdown ### Logs & Screenshots Included. tell me what else I need to post. ### Additional Information When tring to setup any mcp server, especially mcp-git via config.json, if the configuration is incorrect, the startup will hang and one cannot ctrl+c to close it.
yindo added the bug label 2026-02-15 20:17:33 -05:00
Author
Owner

@tjbck commented on GitHub (Apr 11, 2025):

Unable to reproduce, PR welcome!

@tjbck commented on GitHub (Apr 11, 2025): Unable to reproduce, PR welcome!
Author
Owner

@j820301 commented on GitHub (Apr 14, 2025):

I guess socket23 is asking, if an mcp server is started using the mcpo command or fails to start, how to terminate the service started by mcpo
For example, using a method like 'docker run or down', or simply using CTRL+C?

@j820301 commented on GitHub (Apr 14, 2025): I guess socket23 is asking, if an mcp server is started using the mcpo command or fails to start, how to terminate the service started by mcpo For example, using a method like 'docker run or down', or simply using CTRL+C?
Author
Owner

@socket23 commented on GitHub (Apr 16, 2025):

You have to use the PID and terminate manually .. just pointing this out.

Maybe like a failover ?

@socket23 commented on GitHub (Apr 16, 2025): You have to use the PID and terminate manually .. just pointing this out. Maybe like a failover ?
Author
Owner

@taylorwilsdon commented on GitHub (May 11, 2025):

+1 on this, you cannot fully kill & exit the process if started from a command line with cmd + c

Image

Will take a look

@taylorwilsdon commented on GitHub (May 11, 2025): +1 on this, you cannot fully kill & exit the process if started from a command line with cmd + c <img width="1500" alt="Image" src="https://github.com/user-attachments/assets/b52a15a2-c2a8-4fea-92e1-a45fb76a96bd" /> Will take a look
Author
Owner

@taylorwilsdon commented on GitHub (May 11, 2025):

pr https://github.com/open-webui/mcpo/pull/129 will fix this ^

@taylorwilsdon commented on GitHub (May 11, 2025): pr https://github.com/open-webui/mcpo/pull/129 will fix this ^
Author
Owner

@socket23 commented on GitHub (May 11, 2025):

Clean shut down would be nice.

@socket23 commented on GitHub (May 11, 2025): Clean shut down would be nice.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: open-webui/mcpo#32