Coverage for mcpgateway / transports / __init__.py: 100%
5 statements
« prev ^ index » next coverage.py v7.13.4, created at 2026-03-09 03:05 +0000
« prev ^ index » next coverage.py v7.13.4, created at 2026-03-09 03:05 +0000
1# -*- coding: utf-8 -*-
2"""Location: ./mcpgateway/transports/__init__.py
3Copyright 2025
4SPDX-License-Identifier: Apache-2.0
5Authors: Mihai Criveti
7MCP Transport Package.
8This package provides transport implementations for the MCP protocol:
9- stdio: Communication over standard input/output
10- SSE: Server-Sent Events for server-to-client streaming
11- WebSocket: Full-duplex communication
13Examples:
14 >>> # Import all available transport classes
15 >>> from mcpgateway.transports import Transport, StdioTransport, SSETransport, WebSocketTransport
16 >>>
17 >>> # Verify all classes are imported correctly
18 >>> Transport.__name__
19 'Transport'
20 >>> StdioTransport.__name__
21 'StdioTransport'
22 >>> SSETransport.__name__
23 'SSETransport'
24 >>> WebSocketTransport.__name__
25 'WebSocketTransport'
27 >>> # Check that all transports inherit from base Transport
28 >>> from mcpgateway.transports.base import Transport
29 >>> issubclass(StdioTransport, Transport)
30 True
31 >>> issubclass(SSETransport, Transport)
32 True
33 >>> issubclass(WebSocketTransport, Transport)
34 True
36 >>> # Verify __all__ exports all expected classes
37 >>> from mcpgateway.transports import __all__
38 >>> sorted(__all__)
39 ['SSETransport', 'StdioTransport', 'Transport', 'WebSocketTransport']
41 >>> # Test that we can instantiate transport classes
42 >>> stdio = StdioTransport()
43 >>> isinstance(stdio, Transport)
44 True
45 >>> sse = SSETransport("http://localhost:8000")
46 >>> isinstance(sse, Transport)
47 True
48 >>> ws = WebSocketTransport("ws://localhost:8000")
49 >>> isinstance(ws, Transport)
50 True
51"""
53from mcpgateway.transports.base import Transport
54from mcpgateway.transports.sse_transport import SSETransport
55from mcpgateway.transports.stdio_transport import StdioTransport
56from mcpgateway.transports.websocket_transport import WebSocketTransport
58__all__ = ["Transport", "StdioTransport", "SSETransport", "WebSocketTransport"]