MCP
The reason for the change is that a NameError occurs when a POST request is made while the stream is closed because ModelContextProtocol is undefined. I have also added test cases to check the behaviour when IOError and Errno::EPIPE occurs.