1. Conduid
  2. Security
  3. Remote Go
MCP server · Security

Remote Go

MCP stdio to SSE/HTTP bridge

Unclaimed MIT golangmcpsse
59Fair

Scored 6 days ago · breakdown

About Remote Go

Remote Go is an MCP server published by naotama2002 in the Security category: mCP stdio to SSE/HTTP bridge.

The repository has 4 stars and 0 forks, with the last commit a month ago. Recent commit activity is the strongest signal that reported issues will get attention.

Install

From source
git clone https://github.com/naotama2002/mcp-remote-go

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about Remote Go

Powered by Claude · Grounded in docs

I know everything about Remote Go. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ✓README presentThe repository ships documentation.
  • ✓License declaredUsable under a stated license.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

3 checks have not been run yet.

Releases

v0.3.0v0.3.0 · 17 Sep 2026Changelog 48d44f2289108cabf1c26f1c44a1ef75e324ef5a Ask again in a shape any revision answers before choosing the transport 3caf240dbf6b1f837b60d5cf10dd5d4054a62186 Ask for the scopes and client auth method the server publishes…
v0.2.3v0.2.3 · 3 Jun 2026Changelog 194d31e1e54bfc5eb6665220f6476e6a4b5a7e76 Merge pull request #71 from naotama2002/feat/mcpb-custom-headers 10fbbd2ac8d95fa672d1248b617ee8934c06e801 feat: clarify Authorization Header field and add Custom Headers (MCP_HEADERS)…
v0.2.2v0.2.2 · 24 May 2026Changelog 1af56b933dbd03d96adb0c245ee950ea9ba79fd8 Merge pull request #49 from naotama2002/fix/pin-goreleaser-version c1768af9574b9c8744493661d36b499d71e7f0b8 Merge pull request #50 from naotama2002/renovate/sigstore-cosign-installer-4.x…
v0.2.1v0.2.1 · 9 Mar 2026Changelog 378e664d673d2ed9ee74d67afe7d20d9bfce893c Merge pull request #48 from naotama2002/fix/goreleaser-v2-config a9970e8ba3b85bd1f008fc1f309ad5472b7e37bf fix: update .goreleaser.yml to v2 format
v0.2.0v0.2.0 · 9 Mar 2026Changelog 15e0eb581fa60daaa4c4061ba51d35d0c264a5c4 Add renovate.json 7148edf5607caa99dd5d11b56e08add129e48b50 Merge pull request #14 from naotama2002/renovate/configure f44dd6823958c3af9c01aa5d4ee31c005cc2b6cf Merge pull request #15 from…

README

MCP Remote for Go

This Go implementation allows MCP clients that only support local (stdio) connections to connect to remote MCP servers with authentication support.

Overview

MCP Remote proxies between:

  • A local MCP client using stdio transport
  • A remote MCP server using Streamable HTTP or Server-Sent Events (SSE) with OAuth authentication

Features

  • Streamable HTTP transport (MCP 2025-11-25) - Single-endpoint POST/GET with session management
  • Legacy SSE transport (MCP 2024-11-05) - Traditional two-endpoint SSE connection
  • Auto-negotiation - Automatically detects server capabilities and selects the optimal transport
  • OAuth 2.1 with PKCE (RFC 7636) - Secure authorization with S256 code challenge
  • Protected Resource Metadata (RFC 9728) - Discover authorization servers from resource endpoints
  • OAuth Discovery (RFC 8414) and OpenID Connect Discovery
  • Custom headers and HTTPS enforcement

Installation

Desktop Extension (MCPB)

Download the .mcpb file for your platform from GitHub Releases:

Platform File
macOS (Apple Silicon) mcp-remote-go-darwin-arm64.mcpb
macOS (Intel) mcp-remote-go-darwin-amd64.mcpb
Windows (x64) mcp-remote-go-windows-amd64.mcpb
Windows (ARM64) mcp-remote-go-windows-arm64.mcpb

Install by opening the .mcpb file in Claude Desktop. A configuration UI will appear where you can set the remote server URL and other options.

Building from Source

# Clone the repository
git clone https://github.com/naotama2002/mcp-remote-go.git
cd mcp-remote-go

# Build the binary
make build

Using Docker

You can also run mcp-remote-go using Docker, which provides a consistent environment and easier deployment.

Pull from GitHub Container Registry

# Pull the latest image
docker pull ghcr.io/naotama2002/mcp-remote-go:latest

# Or pull a specific version
docker pull ghcr.io/naotama2002/mcp-remote-go:{TAG}

Build locally

# Build the Docker image
docker build -t mcp-remote-go .

Usage

Binary Usage

# Basic usage (auto-detects transport: tries Streamable HTTP first, falls back to SSE)
mcp-remote-go https://remote.mcp.server/mcp

# Force Streamable HTTP transport
mcp-remote-go https://remote.mcp.server/mcp --transport streamable-http

# Force legacy SSE transport
mcp-remote-go https://remote.mcp.server/sse --transport sse

# With custom port for OAuth callback
mcp-remote-go https://remote.mcp.server/mcp 9090

# With custom headers (useful for auth bypass or adding auth tokens)
mcp-remote-go https://remote.mcp.server/mcp --header "Authorization: Bearer YOUR_TOKEN"

# Allow HTTP for trusted networks (normally HTTPS is required)
mcp-remote-go http://internal.mcp.server/mcp --allow-http

# Via HTTP/HTTPS proxy
mcp-remote-go https://remote.mcp.server/mcp --https-proxy http://proxy.example.com:8080

Docker Usage

# Basic usage with Docker (auto-detects transport)
docker run --rm -it -p 3334:3334 ghcr.io/naotama2002/mcp-remote-go:latest https://remote.mcp.server/mcp

# Force Streamable HTTP transport
docker run --rm -it -p 3334:3334 ghcr.io/naotama2002/mcp-remote-go:latest https://remote.mcp.server/mcp --transport streamable-http

# Force legacy SSE transport
docker run --rm -it -p 3334:3334 ghcr.io/naotama2002/mcp-remote-go:latest https://remote.mcp.server/sse --transport sse

# With custom port for OAuth callback
docker run --rm -it -p 9090:9090 ghcr.io/naotama2002/mcp-remote-go:latest https://remote.mcp.server/mcp 9090

# With custom headers
docker run --rm -it -p 3334:3334 ghcr.io/naotama2002/mcp-remote-go:latest https://remote.mcp.server/mcp --header "Authorization: Bearer YOUR_TOKEN"

# Allow HTTP for trusted networks
docker run --rm -it -p 3334:3334 ghcr.io/naotama2002/mcp-remote-go:latest http://internal.mcp.server/mcp --allow-http

# Mount auth directory to persist OAuth tokens
docker run --rm -it -p 3334:3334 -v ~/.mcp-remote-go-auth:/home/appuser/.mcp-remote-go-auth ghcr.io/naotama2002/mcp-remote-go:latest https://remote.mcp.server/mcp

Configuration for MCP Clients

By default, mcp-remote-go auto-detects the transport (Streamable HTTP or SSE). You can force a specific transport with the --transport flag.

Claude Desktop (MCPB Extension)

The easiest way to use with Claude Desktop is via the .mcpb extension. After installing, configure through the GUI:

Setting Description Default
Remote MCP Server URL The remote server URL (required) —
Transport Mode auto, streamable-http, or sse auto
OAuth Callback Port Local port for OAuth callback 3334
Allow HTTP Allow insecure HTTP connections false
HTTP/HTTPS Proxy Proxy server URL (e.g. http://proxy:8080) —
Authorization Header Auth header value (stored securely) —

Claude Desktop (Manual Configuration)

Edit the configuration file at:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Using Binary

{
  "mcpServers": {
    "remote-example": {
      "command": "/path/to/mcp-remote-go",
      "args": [
        "https://remote.mcp.server/mcp"
      ]
    }
  }
}

Using Docker

{
  "mcpServers": {
    "remote-example": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "--net=host",
        "ghcr.io/naotama2002/mcp-remote-go:latest",
        "https://remote.mcp.server/mcp"
      ]
    }
  }
}

For persistent OAuth tokens with Docker:

{
  "mcpServers": {
    "remote-example": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "--net=host",
        "-v",
        "~/.mcp-remote-go-auth:/home/appuser/.mcp-remote-go-auth",
        "ghcr.io/naotama2002/mcp-remote-go:latest",
        "https://remote.mcp.server/mcp"
      ]
    }
  }
}

Cursor

Edit the configuration file at ~/.cursor/mcp.json:

Using Binary

{
  "mcpServers": {
    "remote-example": {
      "command": "/path/to/mcp-remote-go",
      "args": [
        "https://remote.mcp.server/mcp"
      ]
    }
  }
}

Using Docker

{
  "mcpServers": {
    "remote-example": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "--net=host",
        "ghcr.io/naotama2002/mcp-remote-go:latest",
        "https://remote.mcp.server/mcp"
      ]
    }
  }
}

Windsurf

Edit the configuration file at ~/.codeium/windsurf/mcp_config.json:

Using Binary

{
  "mcpServers": {
    "remote-example": {
      "command": "/path/to/mcp-remote-go",
      "args": [
        "https://remote.mcp.server/mcp"
      ]
    }
  }
}

Using Docker

{
  "mcpServers": {
    "remote-example": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "--net=host",
        "ghcr.io/naotama2002/mcp-remote-go:latest",
        "https://remote.mcp.server/mcp"
      ]
    }
  }
}

Environment Variables

All options can also be set via environment variables. CLI flags take precedence when both are set.

Variable Description Equivalent Flag
MCP_SERVER_URL Remote MCP server URL --server
MCP_TRANSPORT Transport mode (auto, streamable-http, sse) --transport
MCP_PORT OAuth callback port --port
MCP_ALLOW_HTTP Set to true to allow HTTP --allow-http
MCP_HTTPS_PROXY HTTP/HTTPS proxy URL --https-proxy
MCP_AUTH_HEADER Authorization header value --header "Authorization: ..."

These environment variables are used internally by the MCPB extension to pass GUI-configured values to the binary.

Authentication

The first time you connect to a server requiring authentication, you'll be prompted to open a URL in your browser to authorize access. The program will wait for you to complete the OAuth flow and then establish the connection. The callback port for OAuth authentication will automatically use an available port if the default port is in use.

The OAuth implementation supports:

  • PKCE (RFC 7636) with S256 code challenge for enhanced security
  • Protected Resource Metadata (RFC 9728) for discovering authorization servers
  • OAuth 2.0 Authorization Server Metadata (RFC 8414) and OpenID Connect Discovery

Authorization tokens are stored in ~/.mcp-remote-go-auth/ and will be reused for future connections.

Troubleshooting

Clear Authentication Data

If you're having issues with authentication, you can clear the stored data:

rm -rf ~/.mcp-remote-go-auth

VPN/Certificate Issues

If you're behind a VPN and experiencing certificate issues, you might need to specify CA certificates:

export SSL_CERT_FILE=/path/to/ca-certificates.crt
mcp-remote-go https://remote.mcp.server/sse

Docker Issues

Port Already in Use

If you get a "port already in use" error, either stop the conflicting service or use a different port:

# Use a different port
docker run --rm -it -p 3335:3334 ghcr.io/naotama2002/mcp-remote-go:latest https://remote.mcp.server/sse

Permission Issues with Volume Mount

If you have permission issues when mounting the auth directory:

# Make sure the directory exists and has proper permissions
mkdir -p ~/.mcp-remote-go-auth
chmod 755 ~/.mcp-remote-go-auth

# Run with volume mount
docker run --rm -it -p 3334:3334 -v ~/.mcp-remote-go-auth:/home/appuser/.mcp-remote-go-auth ghcr.io/naotama2002/mcp-remote-go:latest https://remote.mcp.server/sse

Network Issues with MCP Clients

If MCP clients can't connect to the Docker container, try using host networking:

# Use host networking mode
docker run --rm -i --net=host ghcr.io/naotama2002/mcp-remote-go:latest https://remote.mcp.server/sse

License

MIT

README copy captured when this server was indexed; it may lag the repository. The original is authoritative.

Questions

About Remote Go

How do I install Remote Go?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Remote Go safe to use with an AI agent?

Its trust score is 59 out of 100 (fair). It passes 2 of the 3 static security checks run so far; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Remote Go still maintained?

Yes — the latest release is v0.3.0 (17 Sep 2026), and the last commit was a month ago. The repository has 4 stars.