Loading languages...
TR

truto-mcp-stdio

@trutohq

A CLI program that acts as a Stdio proxy for HTTP Streamable MCP servers. It reads newline-delimited JSON-RPC messages from stdin, forwards them to a specified MCP server endpoint via POST requests, and writes the responses to stdout.

proxy
stdio
mcp
go

Truto MCP Stdio Proxy

A CLI program that acts as a Stdio proxy for HTTP Streamable MCP servers. It reads newline-delimited JSON-RPC messages from stdin, forwards them to a specified MCP server endpoint via POST requests, and writes the responses to stdout.

Requirements

  • Go 1.24.2 or later (for building from source)

Installation

Download Pre-built Binaries

Download the latest release from the GitHub releases page. Choose the appropriate binary for your platform:

  • Linux (amd64): truto-mcp-stdio-linux-amd64-v<version>
  • macOS (Intel): truto-mcp-stdio-darwin-amd64-v<version>
  • macOS (Apple Silicon): truto-mcp-stdio-darwin-arm64-v<version>
  • Windows (amd64): truto-mcp-stdio-windows-amd64-v<version>.exe

After downloading, make the binary executable (on Unix-like systems):

chmod +x truto-mcp-stdio-<platform>-v<version>

Building from Source

To build the program from source, run:

go build -o truto-mcp-stdio

Usage

Run the program with:

./truto-mcp-stdio-<platform>-v<version> <API_URL>

Arguments

  • <API_URL>: The API endpoint URL to forward requests to (required)

Example Usage

# Using echo to send a JSON-RPC message
echo '{"jsonrpc": "2.0", "method": "example", "params": {}, "id": 1}' | ./truto-mcp-stdio-linux-amd64-v1.0.0 https://api.truto.one/mcp/6b33593a-bcbc-4c59-adad-d21fadbce0b0

# Using a file as input
cat requests.json | ./truto-mcp-stdio-linux-amd64-v1.0.0 https://api.truto.one/mcp/6b33593a-bcbc-4c59-adad-d21fadbce0b0

Usage with Claude

To use this proxy with Claude, add the following configuration to your Claude settings:

{
  "mcpServers": {
    "outlook": {
      "command": "truto-mcp-stdio-<platform>-v<version>",
      "args": ["https://api.truto.one/mcp/6b33593a-bcbc-4c59-adad-d21fedadbc0b0"]
    }
  }
}

This configuration will allow Claude to use the proxy for making API calls to the specified endpoint.

Development

To run the program during development:

go run truto-mcp-stdio.go <API_URL>

Input/Output Format

  • Input: Newline-delimited JSON-RPC messages from stdin
  • Output: API responses written to stdout
  • Errors: Error messages are written to stderr

# mcpServer Config

{
  "mcpServers": {
    "outlook": {
      "command": "truto-mcp-stdio-<platform>-v<version>",
      "args": [
        "https://api.truto.one/mcp/6b33593a-bcbc-4c59-adad-d21fedadbc0b0"
      ]
    }
  }
}

# stdio

./truto-mcp-stdio-<platform>-v<version> <API_URL>
Transport:
stdio
Language:
Go
Created: 4/24/2025
Updated: 4/24/2025