MCP ExplorerExplorer

Bun Mcp Sse Transport

@tigranbson 9 months ago
7 MIT
FreeCommunity
AI Systems
#bun#mcp#mcp-server
Bun Server Transport implementation for MCP - MCP SSE

Overview

What is Bun Mcp Sse Transport

bun-mcp-sse-transport is a Server-Sent Events (SSE) transport implementation specifically designed for the Model Context Protocol (MCP) using the Bun runtime. It facilitates real-time, one-way communication from the server to the client.

Use cases

Use cases include real-time dashboards, live event updates, collaborative applications, and any scenario where immediate server-to-client communication is essential.

How to use

To use bun-mcp-sse-transport, import the necessary classes from the SDK, create an instance of BunSSEServerTransport, connect it to an MCP server, and set up a Bun HTTP server to handle SSE connections and incoming messages.

Key features

Key features include being built specifically for the Bun runtime, implementing the MCP transport interface, managing SSE connections with appropriate headers, handling incoming JSON-RPC messages, and allowing simple integration with Bun.serve.

Where to use

bun-mcp-sse-transport can be used in applications that require real-time updates from a server to clients, such as live notifications, chat applications, or any system needing efficient one-way data streaming.

Content

bun-mcp-sse-transport

A Server-Sent Events (SSE) transport implementation for the Model Context Protocol (MCP) using Bun.

Overview

This package provides a Bun-specific implementation of SSE transport for MCP servers. It enables real-time, one-way communication from server to client using the SSE protocol, with client-to-server communication handled via HTTP POST requests.

Key Features

  • Built specifically for Bun runtime
  • Implements the MCP transport interface
  • Manages SSE connections with proper headers
  • Handles incoming JSON-RPC messages
  • Simple integration with Bun.serve

Quick Usage

import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { BunSSEServerTransport } from "bun-mcp-sse-transport";

// Create SSE transport
const transport = new BunSSEServerTransport("/messages");

// Connect to MCP server
const server = new McpServer({ name: "MyServer", version: "1.0.0" });
server.connect(transport);

// Set up Bun HTTP server
Bun.serve({
  port: 3000,
  routes: {
    "/sse": () => transport.createResponse(),
    "/messages": (req) => transport.handlePostMessage(req)
  }
});

How It Works

  1. When a client connects to /sse, the server creates an SSE connection
  2. The server sends the endpoint URL where the client should POST messages
  3. The client sends JSON-RPC messages to the endpoint URL
  4. The server receives these messages and passes them to the MCP server
  5. The MCP server processes the messages and sends responses via the SSE connection

This implementation follows the MCP standard while leveraging Bun’s streaming capabilities for efficient real-time communication.

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers