@mcp-apps/streamable-ui-kit
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@@mcp-apps/streamable-ui-kitstart a Streamable HTTP MCP server on port 3000"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@mcp-apps/streamable-ui-kit
A Node host for MCP Streamable HTTP, protocol 2025-11-25. MIT licensed. Extracted from Claimbite so other projects can run the same host without the bill-auditing app.
It wraps @modelcontextprotocol/sdk 1.32.1 WebStandardStreamableHTTPServerTransport and fixes two gaps that showed up when that transport was mounted on Node http:
A pre-read request body was forwarded into the web-standard transport, and Node then wrote raw SSE bytes where a chunk-size header belonged.
A
202or204with noContent-Lengthwas framed as chunked, andfetch().text()never returned.
writeWebResponse drops transfer-encoding from the SDK response and sets Content-Length: 0 on 202 and 204.
Run the example
Node 22 or newer.
npm install
npm startThat listens on http://127.0.0.1:<port>/mcp and registers one tool, ping. Origins other than localhost are rejected. GET /.well-known/oauth-protected-resource returns RFC 9728 metadata with authorization_servers: [].
npm testRelated MCP server: MCP Compatible Server
Use it
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { startStreamableMcpServer } from "@mcp-apps/streamable-ui-kit";
const running = await startStreamableMcpServer({
createServer: (client) => {
const server = new McpServer({ name: "example", version: "0.0.1" });
if (!client.elicitation) {
// The client did not advertise elicitation. Refuse side effects in your tools.
}
return server;
},
});client.elicitation is true when the initialize body includes capabilities.elicitation. This package reports that flag. It does not refuse a tool call by itself.
parseSseEvents and parseSseJson live in @mcp-apps/streamable-ui-kit/sse and import nothing. A browser client can use them to read notifications/progress and a mid-stream elicitation/create before the POST body closes.
The package depends on @modelcontextprotocol/sdk and @cfworker/json-schema. It is not published to npm. Install from this repository.
This server cannot be deployed
Maintenance
Related MCP Connectors
Remote MCP server exposing SMI Aware tools, resources, and skills over Streamable HTTP.
Experimental MCP server for current empirical verification of explicit public HTTPS endpoint claims.
Remote MCP server exposing your Node Command fleet (files, shell, processes, browser) to AI hosts.
MCP server for Boson Protocol — on-chain agentic commerce for physical & digital goods.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol (MCP) server that supports STDIO, SSE and Streamable HTTP protocols for AI model interactions.9 npm1MIT
- -licenseNot gradedqualityNot gradedmaintenanceA dual-protocol MCP server that supports both modern Streamable HTTP and legacy HTTP+SSE protocols, providing backward compatibility for clients while offering advanced features like session resumability.-
- FlicenseNot gradedqualityNot gradedmaintenanceA Model Context Protocol (MCP) server implementation that uses Server-Sent Events (SSE) to enable real-time, server-pushed updates between AI models and tools over HTTP connections.1-
- AlicenseNot gradedqualityDmaintenanceA reference implementation demonstrating proper MCP server patterns with HTTP transport, featuring session management, progress notifications, and example tools for testing server functionality. Serves as a clean template for building MCP servers with streamable responses and comprehensive error handling.7MIT