Documentation
¶
Index ¶
- Variables
- type Option
- type SSEClientTransport
- func (t *SSEClientTransport) Close() error
- func (t *SSEClientTransport) Send(ctx context.Context, message *transport.BaseJsonRpcMessage) error
- func (t *SSEClientTransport) SetCloseHandler(handler func())
- func (t *SSEClientTransport) SetErrorHandler(handler func(error))
- func (t *SSEClientTransport) SetMessageHandler(handler func(ctx context.Context, message *transport.BaseJsonRpcMessage))
- func (t *SSEClientTransport) Start(ctx context.Context) error
- func (t *SSEClientTransport) WithBaseURL(baseURL string) *SSEClientTransport
- func (t *SSEClientTransport) WithHeader(key, value string) *SSEClientTransport
- type ServerTransport
- func (t *ServerTransport) Close() error
- func (t *ServerTransport) HandleMCPMessage(w http.ResponseWriter, r *http.Request, connID int64) error
- func (t *ServerTransport) HandleSSEConnInitialize(w http.ResponseWriter) (int64, error)
- func (t *ServerTransport) RemoveSSEConnection(connID int64)
- func (t *ServerTransport) Send(ctx context.Context, message *transport.BaseJsonRpcMessage) error
- func (t *ServerTransport) SetCloseHandler(handler func())
- func (t *ServerTransport) SetErrorHandler(handler func(error))
- func (t *ServerTransport) SetMessageHandler(handler func(ctx context.Context, message *transport.BaseJsonRpcMessage))
- func (t *ServerTransport) Start(ctx context.Context) error
Constants ¶
This section is empty.
Variables ¶
var (
ErrConnectionRemoved = errors.New("sse connection removed")
)
Functions ¶
This section is empty.
Types ¶
type Option ¶
type Option func(*ServerTransport)
Option is a function that configures a ServerTransport
func WithChunkSize ¶
WithChunkSize sets the chunk size for writing SSE messages
type SSEClientTransport ¶
type SSEClientTransport struct {
// contains filtered or unexported fields
}
SSEClientTransport implements a client-side SSE transport for MCP
func NewSSEClientTransport ¶
func NewSSEClientTransport(endpoint string, notificationTimeout time.Duration) *SSEClientTransport
NewSSEClientTransport creates a new SSE client transport that connects to the specified endpoint
func (*SSEClientTransport) Close ¶
func (t *SSEClientTransport) Close() error
Close implements Transport.Close
func (*SSEClientTransport) Send ¶
func (t *SSEClientTransport) Send(ctx context.Context, message *transport.BaseJsonRpcMessage) error
Send implements Transport.Send
func (*SSEClientTransport) SetCloseHandler ¶
func (t *SSEClientTransport) SetCloseHandler(handler func())
SetCloseHandler implements Transport.SetCloseHandler
func (*SSEClientTransport) SetErrorHandler ¶
func (t *SSEClientTransport) SetErrorHandler(handler func(error))
SetErrorHandler implements Transport.SetErrorHandler
func (*SSEClientTransport) SetMessageHandler ¶
func (t *SSEClientTransport) SetMessageHandler(handler func(ctx context.Context, message *transport.BaseJsonRpcMessage))
SetMessageHandler implements Transport.SetMessageHandler
func (*SSEClientTransport) Start ¶
func (t *SSEClientTransport) Start(ctx context.Context) error
Start implements Transport.Start
func (*SSEClientTransport) WithBaseURL ¶
func (t *SSEClientTransport) WithBaseURL(baseURL string) *SSEClientTransport
WithBaseURL sets the base URL to connect to
func (*SSEClientTransport) WithHeader ¶
func (t *SSEClientTransport) WithHeader(key, value string) *SSEClientTransport
WithHeader adds a header to the request
type ServerTransport ¶
type ServerTransport struct { *base.Transport // shared transport for handling all messages // contains filtered or unexported fields }
ServerTransport implements server-side SSE transport
func NewServerTransport ¶
func NewServerTransport(endpoint string, options ...Option) *ServerTransport
NewServerTransport creates a new SSE server transport
func (*ServerTransport) Close ¶
func (t *ServerTransport) Close() error
Close implements Transport.Close
func (*ServerTransport) HandleMCPMessage ¶
func (t *ServerTransport) HandleMCPMessage(w http.ResponseWriter, r *http.Request, connID int64) error
HandleMCPMessage handles incoming MCP (JSON-RPC) messages.
func (*ServerTransport) HandleSSEConnInitialize ¶
func (t *ServerTransport) HandleSSEConnInitialize(w http.ResponseWriter) (int64, error)
HandleSSEConnInitialize handles a new SSE connection request
func (*ServerTransport) RemoveSSEConnection ¶
func (t *ServerTransport) RemoveSSEConnection(connID int64)
RemoveSSEConnection removes an SSE connection from the transport
func (*ServerTransport) Send ¶
func (t *ServerTransport) Send(ctx context.Context, message *transport.BaseJsonRpcMessage) error
Send implements Transport.Send.
func (*ServerTransport) SetCloseHandler ¶
func (t *ServerTransport) SetCloseHandler(handler func())
SetCloseHandler implements Transport.SetCloseHandler
func (*ServerTransport) SetErrorHandler ¶
func (t *ServerTransport) SetErrorHandler(handler func(error))
SetErrorHandler implements Transport.SetErrorHandler
func (*ServerTransport) SetMessageHandler ¶
func (t *ServerTransport) SetMessageHandler(handler func(ctx context.Context, message *transport.BaseJsonRpcMessage))
SetMessageHandler implements Transport.SetMessageHandler