Skip to main content
Glama

mcp-bridge (mcpb)

A local stdio MCP Server that bridges any remote Streamable HTTP MCP server to your MCP client (Claude Desktop, Cursor, VS Code, WorkBuddy, …) with zero changes to the remote side.

  • Transport normalization — clients only need stdio support.

  • Network traversal — optional outbound HTTP proxy for restricted/corporate networks.

  • Zero-change bridging — the remote server needs no modification.

CLI command: mcpb. Repo: github.com/Slothtron/mcp-bridge.

Install

From GitHub (npm installs directly from the repo; the prebuilt binary is fetched from GitHub Releases at install time — no npm publish needed):

# MUST pin a tag that matches a GitHub Release (vX.Y.Z)
npm install github:Slothtron/mcp-bridge#v0.1.0
# or run without installing:
npx github:Slothtron/mcp-bridge#v0.1.0 --remote https://example.com/mcp

Note: the installer downloads mcpb-<os>-<arch> from the GitHub Release matching this package's version. When installing from git, pin a tag (e.g. #v0.1.0); installing the default branch only works if its package.json version has a matching Release.

Via Go (no npm needed):

go install github.com/Slothtron/mcp-bridge@latest

Related MCP server: @qelos/better-mcp

Usage

mcpb --remote https://example.com/mcp
mcpb --remote https://example.com/mcp --proxy http://corp-proxy:8080
mcpb --remote https://example.com/mcp --header "Authorization: Bearer <TOKEN>"
# Opt in to server-initiated list_changed via GET SSE (off by default):
mcpb --remote https://example.com/mcp --standalone-sse

MCP Client config

{
  "command": "mcpb",
  "args": [
    "--remote", "https://example.com/mcp",
    "--proxy", "http://corp-proxy:8080",
    "--header", "Authorization: Bearer <TOKEN>"
  ]
}

For npx, set "command": "npx" and "args": ["github:Slothtron/mcp-bridge#v0.1.0", "--remote", "https://example.com/mcp"].

If secrets / proxy live in mise [env], Cursor does not load them automatically for MCP child processes. Prefer wrapping with mise x:

{
  "command": "mise",
  "args": [
    "x", "--",
    "mcpb",
    "--remote", "https://example.com/mcp",
    "--header", "Authorization: Bearer ${TOKEN}",
    "--proxy", "${HTTPS_PROXY}"
  ],
  "env": {},
  "type": "stdio"
}

Or keep "command": "mcpb" and put the variables in the MCP entry's "env" block, and ensure mcpb is on Cursor's PATH.

Flags

Flag

Required

Description

Default

--remote

yes

Remote Streamable HTTP MCP server URL

--proxy

no

Outbound HTTP proxy URL

HTTP_PROXY / HTTPS_PROXY

--header

no

Outbound request header (repeatable)

MCPB_HEADERS env

--standalone-sse

no

Enable remote standalone GET SSE (server-initiated list_changed)

off

--max-retries

no

Reconnect budget for the remote transport

5

Header values support ${VAR} placeholders resolved from the environment at runtime (fail-fast if unset).

Outbound HTTP uses a 15s response-header timeout (not a total request timeout), so hanging peers fail faster without cutting off long tool-call response bodies.

Standalone GET SSE is off by default. Some gateways accept initialize but never return headers for the follow-up GET; leaving SSE on would block mcpb startup and surface as a client MCP error -32001: Request timed out. Enable --standalone-sse only when the remote correctly supports GET SSE and you need live list_changed pushes (startup still syncs tools/prompts/resources once).

Troubleshooting

Symptom

Likely cause

What to try

Client shows MCP error -32001: Request timed out and mcpb never logs bridging remote … over stdio

Startup blocked in remote Connect (historically: hanging GET SSE)

Upgrade mcpb (SSE off by default); check stderr; confirm proxy/remote with curl

undefined environment variable(s): …

${VAR} in args but var missing in the MCP process env

Inject via MCP "env", or run under mise x --

startup failed: connect to remote … within ~15s

Proxy down, auth failure, or peer not returning headers

Fix proxy/token; inspect remote URL with the same headers

See TECHNICAL_DESIGN.md for the full design.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Slothtron/mcp-bridge'

If you have feedback or need assistance with the MCP directory API, please join our Discord server