This is the documentation for the v2 beta — looking for the v1 documentation?
Skip to content

MCP TypeScript SDK (V2) / @modelcontextprotocol/server-legacy / sse/sse

sse/sse

Classes

SSEServerTransport

Defined in: packages/server-legacy/src/sse/sse.ts:39

Server transport for SSE: this will send messages over an SSE connection and receive messages from HTTP POST requests.

This transport is only available in Node.js environments.

Deprecated

Use StreamableHTTPServerTransport from @modelcontextprotocol/server instead.

Implements

Constructors

Constructor

new SSEServerTransport(_endpoint, res, options?): SSEServerTransport

Defined in: packages/server-legacy/src/sse/sse.ts:47

Parameters
_endpoint

string

res

ServerResponse

options?

SSEServerTransportOptions

Returns

SSEServerTransport

Properties

onclose?

optional onclose?: () => void

Defined in: packages/server-legacy/src/sse/sse.ts:43

Callback for when the connection is closed for any reason.

This should be invoked when close() is called as well.

Returns

void

Implementation of

Transport.onclose

onerror?

optional onerror?: (error) => void

Defined in: packages/server-legacy/src/sse/sse.ts:44

Callback for when an error occurs.

Note that errors are not necessarily fatal; they are used for reporting any kind of exceptional condition out of band.

Parameters
error

Error

Returns

void

Implementation of

Transport.onerror

onmessage?

optional onmessage?: <T>(message, extra?) => void

Defined in: packages/server-legacy/src/sse/sse.ts:45

Callback for when a message (request or response) is received over the connection.

Includes the request and authInfo if the transport is authenticated.

The request can be used to get the original request information (headers, etc.)

Type Parameters
T

T extends JSONRPCMessage

Parameters
message

T

extra?

MessageExtraInfo

Returns

void

Implementation of

Transport.onmessage

Accessors

sessionId
Get Signature

get sessionId(): string

Defined in: packages/server-legacy/src/sse/sse.ts:192

The session ID generated for this connection.

Returns

string

The session ID generated for this connection.

Implementation of

Transport.sessionId

Methods

close()

close(): Promise<void>

Defined in: packages/server-legacy/src/sse/sse.ts:178

Closes the connection.

Returns

Promise<void>

Implementation of

Transport.close

handleMessage()

handleMessage(message, extra?): Promise<void>

Defined in: packages/server-legacy/src/sse/sse.ts:166

Parameters
message

unknown

extra?

MessageExtraInfo

Returns

Promise<void>

handlePostMessage()

handlePostMessage(req, res, parsedBody?): Promise<void>

Defined in: packages/server-legacy/src/sse/sse.ts:104

Parameters
req

IncomingMessage & object

res

ServerResponse

parsedBody?

unknown

Returns

Promise<void>

send()

send(message, _options?): Promise<void>

Defined in: packages/server-legacy/src/sse/sse.ts:184

Sends a JSON-RPC message (request or response).

If present, relatedRequestId is used to indicate to the transport which incoming request to associate this outgoing message with.

Parameters
message

JSONRPCMessage

_options?

TransportSendOptions

Returns

Promise<void>

Implementation of

Transport.send

start()

start(): Promise<void>

Defined in: packages/server-legacy/src/sse/sse.ts:78

Starts processing messages on the transport, including any connection steps that might need to be taken.

This method should only be called after callbacks are installed, or else messages may be lost.

NOTE: This method should not be called explicitly when using Client or Server classes, as they will implicitly call start().

Returns

Promise<void>

Implementation of

Transport.start

Interfaces

SSEServerTransportOptions

Defined in: packages/server-legacy/src/sse/sse.ts:16

Configuration options for SSEServerTransport.

Deprecated

Use StreamableHTTPServerTransport instead.

Properties

allowedHosts?

optional allowedHosts?: string[]

Defined in: packages/server-legacy/src/sse/sse.ts:20

Deprecated

Use the host-header-validation middleware from @modelcontextprotocol/express instead.

allowedOrigins?

optional allowedOrigins?: string[]

Defined in: packages/server-legacy/src/sse/sse.ts:25

Deprecated

Use the host-header-validation middleware from @modelcontextprotocol/express instead.

enableDnsRebindingProtection?

optional enableDnsRebindingProtection?: boolean

Defined in: packages/server-legacy/src/sse/sse.ts:30

Deprecated

Use the host-header-validation middleware from @modelcontextprotocol/express instead.