mcp-proxy
Version:
A TypeScript SSE proxy for MCP servers that use stdio transport.
60 lines (59 loc) • 1.42 kB
JavaScript
import {
proxyServer,
startSSEServer
} from "./chunk-YBSC4ELC.js";
// src/tapTransport.ts
var tapTransport = (transport, eventHandler) => {
const originalClose = transport.close.bind(transport);
const originalOnClose = transport.onclose?.bind(transport);
const originalOnError = transport.onerror?.bind(transport);
const originalOnMessage = transport.onmessage?.bind(transport);
const originalSend = transport.send.bind(transport);
const originalStart = transport.start.bind(transport);
transport.close = async () => {
eventHandler({
type: "close"
});
return originalClose?.();
};
transport.onclose = async () => {
eventHandler({
type: "onclose"
});
return originalOnClose?.();
};
transport.onerror = async (error) => {
eventHandler({
type: "onerror",
error
});
return originalOnError?.(error);
};
transport.onmessage = async (message) => {
eventHandler({
type: "onmessage",
message
});
return originalOnMessage?.(message);
};
transport.send = async (message) => {
eventHandler({
type: "send",
message
});
return originalSend?.(message);
};
transport.start = async () => {
eventHandler({
type: "start"
});
return originalStart?.();
};
return transport;
};
export {
proxyServer,
startSSEServer,
tapTransport
};
//# sourceMappingURL=index.js.map