@nuwax-ai/mcp-proxy-ts
v1.5.4
Published
TypeScript MCP proxy — aggregates multiple MCP servers (stdio + streamable-http + SSE) with convert, proxy, and host rewrite helpers
Readme
@nuwax-ai/mcp-proxy-ts
TypeScript MCP proxy:聚合 stdio / Streamable HTTP / SSE,提供 convert、proxy(PersistentMcpBridge)模式,以及供宿主(nuwa-cli / NuwaClaw)使用的 Host Adapter。
要求: Node.js >= 22
安装
npm install @nuwax-ai/mcp-proxy-tsCLI 二进制名:mcp-proxy-ts(兼容别名 mcp-stdio-proxy、nuwax-mcp-stdio-proxy)。
运行模式
1. Stdio 聚合(默认)
mcp-proxy-ts --config '{"mcpServers":{...}}'
mcp-proxy-ts --config-file /path/to/config.json2. 协议转换 convert
mcp-proxy-ts convert http://example.com/mcp/sse --protocol sse3. 持久化桥 proxy
mcp-proxy-ts proxy --port 18099 --config '{"mcpServers":{...}}'Host Adapter
宿主在把 MCP 交给 Agent 引擎前,用 Host Adapter 改写成「每 server 一个 proxy 进程」:
import {
rewriteAcpMcpServers,
rewriteServersToProxyCommands,
resolveProxyEntry,
PersistentMcpBridge,
} from "@nuwax-ai/mcp-proxy-ts/host";
// ACP 数组(nuwa-cli)
const forEngine = rewriteAcpMcpServers(acpServers, {
logDir: path.join(homedir(), ".nuwa-cli", "logs"),
projectId: sessionId,
});
// map 形态(Electron)
const commands = rewriteServersToProxyCommands(servers, {
proxyScriptPath: resolveProxyEntry(),
nodeBinPath: bundledNode,
bridge: persistentBridge,
logDir: path.join(homedir(), ".nuwaclaw", "logs"),
});库入口亦导出同一套 API:import { ... } from "@nuwax-ai/mcp-proxy-ts"。
从旧包名迁移
| 旧 | 新 |
|----|----|
| @nuwax-ai/mcp-stdio-proxy / nuwax-mcp-stdio-proxy | @nuwax-ai/mcp-proxy-ts |
| bin mcp-stdio-proxy / nuwax-mcp-stdio-proxy | mcp-proxy-ts(旧 bin 仍可用) |
| 仓库 nuwax-ai/mcp-stdio-proxy | nuwax-ai/mcp-proxy-ts |
npm uninstall @nuwax-ai/mcp-stdio-proxy
npm install @nuwax-ai/mcp-proxy-ts开发
npm install
npm run build
npm run test:run许可证
MIT
