# mcp-remote review

> mcp-remote is a proxy that lets MCP clients supporting only local stdio servers connect to remote MCP servers, with OAuth support.

Devtoolwatch Board, the week of Oct 25–31, 2026. Canonical page: https://index.devtoolwatch.com/tools/mcp-remote/

## TL;DR

mcp-remote connects stdio-only MCP clients such as Claude Desktop, Cursor and Windsurf to remote MCP servers. It is for developers who want to use remote, authorized servers before their client supports them. mcp-remote handles OAuth flows, custom headers, transport fallback and protocol-era translation.

## mcp-remote at a glance

- **Category:** [MCP and agent tools](https://index.devtoolwatch.com/categories/mcp-servers/)
- **Maintained by:** Frank Fiegel (individual, [@punkpeye](https://github.com/punkpeye) on GitHub)
- **License:** MIT
- **Language:** TypeScript, JavaScript
- **Repository:** [github.com/punkpeye/mcp-remote](https://github.com/punkpeye/mcp-remote)
- **Website:** [glama.ai/mcp/servers](https://glama.ai/mcp/servers)
- **npm package:** [mcp-remote](https://www.npmjs.com/package/mcp-remote) 0.15.2
- **Latest release:** [v0.15.2](https://github.com/punkpeye/mcp-remote/releases/tag/v0.15.2) on GitHub, Oct 20, 2026
- **First published:** Mar 20, 2025

## What mcp-remote does

- mcp-remote bridges a local stdio MCP client to a remote MCP server over HTTP or Server-Sent Events.
- mcp-remote runs OAuth sign-in through a local callback and keeps separate OAuth sessions per server URL, resource, headers and authorize parameters.
- mcp-remote sends custom headers from CLI arguments or from a header file that keeps credentials out of the process list.
- mcp-remote supports transport strategies: http-first by default, sse-first, http-only and sse-only.
- mcp-remote can filter remote tools with wildcard patterns, hiding them from tools/list and blocking tools/call.
- mcp-remote with --protocol auto acts as a dual-era client, translating legacy clients to 2026-07-28 MCP servers.
- mcp-remote offers network controls: timeouts, keep-alive pings, IPv4-only mode and an outbound HTTP(S) proxy.

### How it works

You add mcp-remote to your MCP client config as an npx command, with the remote server URL as an argument. The client talks to mcp-remote over stdio. mcp-remote forwards requests to the remote server over HTTP or SSE and handles OAuth through a browser callback on a local port. The package ships two binaries, mcp-remote and mcp-remote-client.

## How to install mcp-remote

**Run with npx**

```
npx mcp-remote https://example.remote/server --transport sse-only
```

### Requirements

- npx, which the documented config uses to run the mcp-remote npm package.
- HTTPS remote server URLs by default; HTTP requires the --allow-http flag on trusted private networks.

### First steps

1. Add an mcpServers entry to your client config with command npx and args mcp-remote plus the remote server URL.
2. If npx produces errors, add -y as the first argument to auto-accept installing the mcp-remote package.
3. Complete the OAuth sign-in in the browser when mcp-remote opens the authorization page.
4. Add --debug to write verbose logs to ~/.mcp-auth/{server_hash}_debug.log if the connection fails.

## Who mcp-remote is for

- Users of stdio-only MCP clients like Claude Desktop, Cursor or Windsurf who need remote MCP servers.
- Teams connecting to OAuth-protected remote servers, including Atlassian, Google, Auth0 or Entra ID setups.
- Developers running multiple tenants of the same remote server with isolated OAuth sessions.

### Limitations

- mcp-remote is a stopgap: the README says to remove it once your MCP client supports remote, authorized servers.
- Cursor, Codex-Cli and Claude Desktop on Windows mangle spaces in args, so header values need an env-var workaround.
- Support for 2026-07-28 protocol servers is off by default and requires --protocol auto.
- By default, mcp-remote closes an idle SSE stream after five minutes unless you set --body-timeout 0.

## Usage data (the week of Oct 25–31, 2026)

- Not ranked this week
- New GitHub stars per week (last 12 weeks): Aug 9: 7; Aug 16: 9; Aug 23: 13; Aug 30: 9; Sep 6: 9; Sep 13: 12; Sep 20: 7; Sep 27: 13; Oct 4: 9; Oct 11: 12; Oct 18: 16; Oct 25: 11

## mcp-remote alternatives

| Rank | Tool | Stars | Downloads/wk |
|---|---|---|---|
| #1 | [REA](https://index.devtoolwatch.com/tools/morluto-rea/) | 415.5k | 760.6k |
| #2 | [ha-mcp](https://index.devtoolwatch.com/tools/homeassistant-ai-ha-mcp/) | 5.4k | 118.1k |
| #3 | [Treg](https://index.devtoolwatch.com/tools/superdesigndev-treg/) | 6.9k | 6.7k |
| #4 | [Chrome DevTools MCP](https://index.devtoolwatch.com/tools/chrome-devtools-mcp/) | 54.6k | 2.7M |
| #5 | [codebase-memory-mcp](https://index.devtoolwatch.com/tools/deusdata-codebase-memory-mcp/) | 47.9k | – |
| #6 | [open-computer-use](https://index.devtoolwatch.com/tools/ifuryst-open-computer-use/) | 2.8k | – |

## mcp-remote FAQ

### Is mcp-remote free and open source?

Yes. mcp-remote's source code is on GitHub (punkpeye/mcp-remote) under the MIT license, so you can use it for free.

### How do I install mcp-remote?

Run `npx mcp-remote https://example.remote/server --transport sse-only`. The install section above has the other options from the project's README.

### Is mcp-remote still maintained?

Yes. The punkpeye/mcp-remote repository was last updated on Oct 20, 2026, and the latest release, v0.15.2 on GitHub, came out on Oct 20, 2026.

### How popular is mcp-remote?

mcp-remote has 1.7k GitHub stars as of Nov 1, 2026. It gained 11 new stars in the week of Oct 25–31, 2026, against a 12-week average of 11 a week.

### What are the best alternatives to mcp-remote?

Other MCP servers and agent tools on the Devtoolwatch Board in the week of Oct 25–31, 2026, by momentum: REA (#1), ha-mcp (#2), Treg (#3), Chrome DevTools MCP (#4), codebase-memory-mcp (#5). The alternatives table above has their numbers.

### Why would I need mcp-remote?

mcp-remote lets clients that only support local stdio servers use remote MCP servers. According to the README, most clients are stdio-only, and those that support HTTP+SSE don't yet support the required OAuth flows.

### How do I pass an API token instead of using OAuth?

mcp-remote accepts --header arguments, such as an Authorization Bearer header, on all requests. To keep the credential out of the process list, use --header-file with one Name: value per line.

### Can I connect to the same server with different accounts?

mcp-remote supports this with the --resource flag. Each unique combination of server URL, resource, custom headers and --authorize-param values keeps separate OAuth sessions and token storage.

### What if my authorization server rejects the resource parameter?

mcp-remote has a --disable-resource-parameter flag that omits the resource parameter entirely. The README gives Microsoft Entra ID v2, which answers AADSTS9010010, as an example.

### Can I block destructive tools from a remote server?

mcp-remote can block them with --ignore-tool and wildcard patterns such as delete*. Matching tools are filtered from tools/list responses, and calls to them are blocked.

## Sources

1. [punkpeye/mcp-remote on GitHub](https://github.com/punkpeye/mcp-remote)
2. [mcp-remote README](https://github.com/punkpeye/mcp-remote/blob/main/README.md)
3. [mcp-remote on npm](https://www.npmjs.com/package/mcp-remote)
4. [mcp-remote website](https://glama.ai/mcp/servers)
5. [Release v0.15.2 (Oct 20, 2026)](https://github.com/punkpeye/mcp-remote/releases/tag/v0.15.2)
6. [Release v0.15.1 (Oct 14, 2026)](https://github.com/punkpeye/mcp-remote/releases/tag/v0.15.1)
7. [Release v0.15.0 (Oct 14, 2026)](https://github.com/punkpeye/mcp-remote/releases/tag/v0.15.0)
8. [Hacker News: OpenAI is good at unminifying code](https://news.ycombinator.com/item?id=41389185)
9. [Hacker News: Prompt Injecting Contributing.md](https://news.ycombinator.com/item?id=47441499)
10. [Hacker News: The Hackers Who Tracked My Sleep Cycle](https://news.ycombinator.com/item?id=47532212)
11. [Devtoolwatch Board, the week of Oct 25–31, 2026](https://index.devtoolwatch.com/)
