Cover image
Try Now
2025-04-10

启用基于云的AI服务可以通过HTTP请求访问基于本地STDIO的MCP服务器

3 years

Works with Finder

1

Github Watches

17

Github Forks

141

Github Stars

MCP Connect

License: MIT

███╗   ███╗ ██████╗██████╗      ██████╗ ██████╗ ███╗   ██╗███╗   ██╗███████╗ ██████╗████████╗
████╗ ████║██╔════╝██╔══██╗    ██╔════╝██╔═══██╗████╗  ██║████╗  ██║██╔════╝██╔════╝╚══██╔══╝
██╔████╔██║██║     ██████╔╝    ██║     ██║   ██║██╔██╗ ██║██╔██╗ ██║█████╗  ██║        ██║   
██║╚██╔╝██║██║     ██╔═══╝     ██║     ██║   ██║██║╚██╗██║██║╚██╗██║██╔══╝  ██║        ██║   
██║ ╚═╝ ██║╚██████╗██║         ╚██████╗╚██████╔╝██║ ╚████║██║ ╚████║███████╗╚██████╗   ██║   
╚═╝     ╚═╝ ╚═════╝╚═╝          ╚═════╝ ╚═════╝ ╚═╝  ╚═══╝╚═╝  ╚═══╝╚══════╝ ╚═════╝   ╚═╝   

The Model Context Protocol (MCP) introduced by Anthropic is cool. However, most MCP servers are built on Stdio transport, which, while excellent for accessing local resources, limits their use in cloud-based applications.

MCP Connect is a tiny tool that is created to solve this problem:

  • Cloud Integration: Enables cloud-based AI services to interact with local Stdio based MCP servers
  • Protocol Translation: Converts HTTP/HTTPS requests to Stdio communication
  • Security: Provides secure access to local resources while maintaining control
  • Flexibility: Supports various MCP servers without modifying their implementation
  • Easy to use: Just run MCP Connect locally, zero modification to the MCP server
  • Tunnel: Built-in support for Ngrok tunnel

By bridging this gap, we can leverage the full potential of local MCP tools in cloud-based AI applications without compromising on security.

How it works

+-----------------+     HTTPS/SSE      +------------------+      stdio      +------------------+
|                 |                    |                  |                 |                  |
|  Cloud AI tools | <--------------->  |  Node.js Bridge  | <------------>  |    MCP Server    |
|   (Remote)      |       Tunnels      |    (Local)       |                 |     (Local)      |
|                 |                    |                  |                 |                  |
+-----------------+                    +------------------+                 +------------------+

Prerequisites

  • Node.js

Quick Start

  1. Clone the repository
    git clone https://github.com/EvalsOne/MCP-connect.git
    
    and enter the directory
    cd MCP-connect
    
  2. Copy .env.example to .env and configure the port and auth_token:
    cp .env.example .env
    
  3. Install dependencies:
    npm install
    
  4. Run MCP Connect
    # build MCP Connect
    npm run build
    # run MCP Connect
    npm run start
    # or, run in dev mode (supports hot reloading by nodemon)
    npm run dev
    

Now MCP connect should be running on http://localhost:3000/bridge.

Note:

  • The bridge is designed to be run on a local machine, so you still need to build a tunnel to the local MCP server that is accessible from the cloud.
  • Ngrok, Cloudflare Zero Trust, and LocalTunnel are recommended for building the tunnel.

Running with Ngrok Tunnel

MCP Connect has built-in support for Ngrok tunnel. To run the bridge with a public URL using Ngrok:

  1. Get your Ngrok auth token from https://dashboard.ngrok.com/authtokens
  2. Add to your .env file:
    NGROK_AUTH_TOKEN=your_ngrok_auth_token
    
  3. Run with tunnel:
    # Production mode with tunnel
    npm run start:tunnel
    
    # Development mode with tunnel
    npm run dev:tunnel
    

After MCP Connect is running, you can see the MCP bridge URL in the console.

API Endpoints

After MCP Connect is running, there are two endpoints exposed:

  • GET /health: Health check endpoint
  • POST /bridge: Main bridge endpoint for receiving requests from the cloud

For example, the following is a configuration of the official GitHub MCP:

{
  "command": "npx",
  "args": [
    "-y",
    "@modelcontextprotocol/server-github"
  ],
  "env": {
    "GITHUB_PERSONAL_ACCESS_TOKEN": "<your_github_personal_access_token>"
  }
}

You can send a request to the bridge as the following to list the tools of the MCP server and call a specific tool.

Listing tools:

curl -X POST http://localhost:3000/bridge \
     -d '{
       "method": "tools/list",
       "serverPath": "npx",
       "args": [
         "-y",
         "@modelcontextprotocol/server-github"
       ],
       "params": {},
       "env": {
         "GITHUB_PERSONAL_ACCESS_TOKEN": "<your_github_personal_access_token>"
       }
     }'

Calling a tool:

Using the search_repositories tool to search for repositories related to modelcontextprotocol

curl -X POST http://localhost:3000/bridge \
     -d '{
       "method": "tools/call",
       "serverPath": "npx",
       "args": [
         "-y",
         "@modelcontextprotocol/server-github"
       ],
       "params": {
         "name": "search_repositories",
         "arguments": {
            "query": "modelcontextprotocol"
         },
       },
       "env": {
         "GITHUB_PERSONAL_ACCESS_TOKEN": "<your_github_personal_access_token>"
       }
     }'

Authentication

MCP Connect uses a simple token-based authentication system. The token is stored in the .env file. If the token is set, MCP Connect will use it to authenticate the request.

Sample request with token:

curl -X POST http://localhost:3000/bridge \
     -H "Authorization: Bearer <your_auth_token>" \
     -d '{
       "method": "tools/list",
       "serverPath": "npx",
       "args": [
         "-y",
         "@modelcontextprotocol/server-github"
       ],
       "params": {},
       "env": {
         "GITHUB_PERSONAL_ACCESS_TOKEN": "<your_github_personal_access_token>"
       }
     }'

Configuration

Required environment variables:

  • AUTH_TOKEN: Authentication token for the bridge API (Optional)
  • PORT: HTTP server port (default: 3000, required)
  • LOG_LEVEL: Logging level (default: info, required)
  • NGROK_AUTH_TOKEN: Ngrok auth token (Optional)

Using MCP Connect with ConsoleX AI to access local MCP Server

The following is a demo of using MCP Connect to access a local MCP Server on ConsoleX AI:

MCP Connect Live Demo

License

MIT License

相关推荐

  • NiKole Maxwell
  • I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.

  • Andris Teikmanis
  • Latvian GPT assistant for developing GPT applications

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Navid RezaeiSarchoghaei
  • Professional Flask/SQLAlchemy code guide. Follow: https://x.com/navid_re

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • https://cantaspinar.com
  • Summarizes videos and answers related questions.

  • Khalid kalib
  • Write professional emails

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • ANGEL LEON
  • A world class elite tech co-founder entrepreneur, expert in software development, entrepreneurship, marketing, coaching style leadership and aligned with ambition for excellence, global market penetration and worldy perspectives.

  • apappascs
  • 发现市场上最全面,最新的MCP服务器集合。该存储库充当集中式枢纽,提供了广泛的开源和专有MCP服务器目录,并提供功能,文档链接和贡献者。

  • ShrimpingIt
  • MCP系列GPIO Expander的基于Micropython I2C的操作,源自ADAFRUIT_MCP230XX

  • OffchainLabs
  • 进行以太坊的实施

  • huahuayu
  • 统一的API网关,用于将多个Etherscan样区块链Explorer API与对AI助手的模型上下文协议(MCP)支持。

  • deemkeen
  • 用电源组合控制您的MBOT2:MQTT+MCP+LLM

  • zhaoyunxing92
  • MCP(消息连接器协议)服务

  • pontusab
  • 光标与风浪冲浪社区,查找规则和MCP

    Reviews

    4 (1)
    Avatar
    user_leYo3fMF
    2025-04-15

    I recently started using the Voice Call MCP Server by lukaskai and I must say, it's a game-changer! The server is incredibly reliable and delivers crystal-clear voice quality during calls. The setup process was straightforward, and the support from lukaskai was top-notch. Highly recommend this to anyone looking for a robust voice call solution. Check it out: https://mcp.so/server/voice-call-mcp-server/lukaskai