Skip to main content
Glama
slackwarecps

MCP Simple Server

by slackwarecps

MCP Simple Server (HTTP Bridge)

This is a simplified MCP (Model Context Protocol) server that exposes tools via an HTTP POST interface. It allows remote LLMs and agents to access local or specific functionality securely via a tunnel or direct access.

🚀 Technical Settings

  • Port: 3030

  • Endpoint: /mcp

  • Method: POST

  • Authentication: Authorization: Bearer senha-facil-123

  • Protocol: JSON-RPC 2.0 (Adapted for HTTP)


Related MCP server: local-env-mcp

🧪 Testing Remotely with CURL

You can validate the server's operation from any machine with network access (or via Wireguard VPN) using the commands below.

1. List Available Tools

curl -X POST http://10.7.0.1:3030/mcp \
  -H "Authorization: Bearer senha-facil-123" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"tools/list","id":1}'

2. Call the 'hello' Tool

curl -X POST http://10.7.0.1:3030/mcp \
  -H "Authorization: Bearer senha-facil-123" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"hello","arguments":{"name":"Fabão"}},"id":2}'

♊ Configuring Gemini-CLI (Remote)

For the gemini-cli on your local machine or another VPS to access this server, you must configure it in the Gemini CLI configuration file (usually at ~/.gemini/config.yaml or via command).

Since this server uses direct HTTP (and not the stdio standard), you can use a "wrapper" or configure access via SSE if the server is extended, or use the fetch plugin if available.

Configuration example (Assuming use of a stdio-to-http proxy):

# No gemini-cli


gemini mcp add remote-server --command "npx @modelcontextprotocol/inspector http://10.7.0.1:3030/mcp"

In the ~/.gemini/settings.json file

"mcpServers": {                                                                                                                      
    "local-mcp": {                                                                                                                                     
      "url": "http://192.168.1.100:3030/mcp",                                                                                                          
      "headers": {                                                                                                                                     
        "Authorization": "Bearer senha-facil-123"                                                                                                      
      }                                                                                                                                                
    }             
  }

Note: Replace the IP with the correct address (e.g., 10.7.0.1 from the VPN).


🤖 Configuring Claude Code

Claude Code (and Claude Desktop) usually expect a local command. To access this remote server:

  1. Edit the claude_desktop_config.json file:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

    • Linux: ~/.config/Claude/claude_desktop_config.json

  2. Add the configuration:

{
  "mcpServers": {
    "mcp-simple-server": {
      "command": "curl",
      "args": [
        "-s",
        "-X", "POST",
        "http://10.7.0.1:3030/mcp",
        "-H", "Authorization: Bearer senha-facil-123",
        "-H", "Content-Type: application/json",
        "-d", "{\"jsonrpc\":\"2.0\",\"method\":\"tools/call\",\"params\":<params>}"
      ]
    }
  }
}

Tip: For a more robust integration, it is recommended to use mcp-proxy which converts stdio to your server's HTTP API.


💬 Configuring ChatGPT (GPT Codex / Actions)

To use this server as an Action in ChatGPT:

  1. Go to Custom GPTs -> Create a GPT -> Configure -> Create new action.

  2. In the Authentication field, choose API Key, select Bearer, and enter: senha-facil-123.

  3. In the Schema field, use an OpenAPI specification (simplified example below):

openapi: 3.0.0
info:
  title: MCP Simple Server
  version: 1.0.0
servers:
  - url: http://195.35.42.89:3030 # IP Público ou DNS
paths:
  /mcp:
    post:
      operationId: callMcpTool
      summary: Chama uma ferramenta do MCP
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                method: {type: string, example: "tools/call"}
                params: {type: object}
                id: {type: integer, example: 1}
      responses:
        '200':
          description: Sucesso

🐳 Docker

This project is ready to be run in containers.

1. Build the Image

To generate the Docker image locally:

docker build -t mcp-simple-server .

2. Start the Container (Docker Compose)

The recommended way to run it is by using the included docker-compose.yml, which configures the network and environment variables:

docker compose up -d

The container will be created with the name mcp-simple-server and will be available on port 3030.

3. Check Status and Logs

# Ver se o container está rodando
docker ps | grep mcp-simple-server

# Ver logs do servidor
docker compose logs -f

🛠️ Development

To run the server locally:

cd ~/apps/mcp-simple-server
npm install
node server.js

The server will be listening at http://localhost:3030.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables remote access to the MemPalace MCP server via HTTP, supporting bearer token authentication and concurrent clients while exposing all mempalace tools.
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    Lifts local stdio MCP servers into remote Streamable HTTP endpoints for cloud-hosted AI clients, with bearer-token auth and tool policy filtering.
    4 npm
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Converts any MCP server into simple HTTP endpoints, enabling AI agents that only support HTTP (like ChatGPT Custom GPT or web_fetch) to use MCP tools.
    -