Skip to main content
Glama

http-4-mcp

Mulan Permissive Software License, Version 2
6
  • Linux
  • Apple

🚀 HTTP-4-MCP Middleware Server

Version Python License

English | 中文

🌟 Introduction

HTTP-4-MCP is a powerful middleware server that magically transforms regular HTTP interfaces into MCP (Model Control Protocol) interfaces. With simple configuration, your HTTP API becomes an MCP tool instantly!

✨ Key Features

  • 🔄 HTTP to MCP: One-click conversion of HTTP APIs to MCP interfaces
  • 📝 JSON Configuration: Simple and intuitive configuration
  • 🌊 SSE Support: Real-time data streaming
  • 🎨 Visual Configuration: Drag-and-drop interface for API configuration
  • 🔥 Hot Reload: Instant configuration updates without restart
  • 📊 Complete Monitoring: Detailed logging and error tracking
  • 🛡️ Secure & Reliable: Built-in error handling and parameter validation

👨‍💻 Author Information

📸 System Demo

🖥️ Intuitive Visual Configuration Interface

Visual Configuration Interface

🔄 Powerful API Conversion

API Conversion

📊 cURL Import Support

cURL Import Support

🚀 Tool Description

Tool Description

🚀 Quick Start

📦 Installation

# Clone repository git clone https://gitee.com/tght1211/http-for-mcp-server.git # or git clone https://github.com/tght1211/http-for-mcp-server.git cd http-for-mcp-server # Install dependencies (recommended using uv package manager) uv venv uv pip install -r requirements.txt

🎮 Start Service

# Activate virtual environment .venv/Scripts/activate # Windows source .venv/bin/activate # Linux/Mac # Start main server uv run run.py # Start configuration UI (optional) uv run run_config_ui.py

🎯 Usage Guide

1️⃣ Configure API

  1. Visit http://localhost:8002
  2. Click "Add New Interface"
  3. Fill in configuration parameters
  4. Save and apply instantly!
Method 2: 📝 JSON Configuration
{ "tools": [ { "name": "weather_api", "description": "Get real-time weather information for a specified city, including temperature, humidity, weather conditions, wind direction, and wind speed.\n \n This tool uses a two-step query process:\n 1. First, get the precise location ID through city name\n 2. Then, query real-time weather data using the location ID\n \n Example usage:\n - Get weather information for \"Beijing\"\n - Get real-time weather conditions for \"Shanghai\"\n - Query temperature and humidity for \"Guangzhou\"\n \n Returns formatted weather information text, including city name, weather conditions, temperature, humidity, wind direction, and wind speed.", "url": "https://devapi.qweather.com/v7/weather/now", "method": "GET", "params": { "location": { "type": "string", "desc": "City name or ID", "required": true, "default": "101010100" }, "key": { "type": "string", "desc": "API key", "required": true, "default": "05a3e2c04b65416e912088b76a7a487e" }, "lang": { "type": "string", "desc": "Language", "required": false, "default": "zh" }, "unit": { "type": "string", "desc": "Unit system", "required": false, "default": "m" } }, "headers": { "User-Agent": "weather-app/1.0" }, "response": { "code": { "path": "code", "desc": "Response status code" }, "updateTime": { "path": "updateTime", "desc": "Data update time" }, "fxLink": { "path": "fxLink", "desc": "Detailed weather information link" }, "now": { "path": "now", "desc": "Real-time weather data object" }, "now_obsTime": { "path": "now.obsTime", "desc": "Actual observation time" }, "now_temp": { "path": "now.temp", "desc": "Current temperature (Celsius)" }, "now_feelsLike": { "path": "now.feelsLike", "desc": "Feels like temperature (Celsius)" }, "now_icon": { "path": "now.icon", "desc": "Weather icon code" }, "now_text": { "path": "now.text", "desc": "Weather phenomenon text description" }, "now_wind360": { "path": "now.wind360", "desc": "Wind direction 360-degree angle" }, "now_windDir": { "path": "now.windDir", "desc": "Wind direction description" }, "now_windScale": { "path": "now.windScale", "desc": "Wind scale" }, "now_windSpeed": { "path": "now.windSpeed", "desc": "Wind speed (km/h)" }, "now_humidity": { "path": "now.humidity", "desc": "Relative humidity percentage" }, "now_precip": { "path": "now.precip", "desc": "Precipitation (mm)" }, "now_pressure": { "path": "now.pressure", "desc": "Atmospheric pressure (hPa)" }, "now_vis": { "path": "now.vis", "desc": "Visibility (km)" }, "now_cloud": { "path": "now.cloud", "desc": "Cloud coverage percentage" }, "now_dew": { "path": "now.dew", "desc": "Dew point temperature (Celsius)" } }, "response_mode": "metadata" } ] }

2️⃣ Connect to MCP

# SSE connection URL ws_url = "http://localhost:8000/mcp/sse"

🛠️ Project Structure

📦 http-for-mcp-server ┣ 📂 config/ # Configuration files ┣ 📂 demo/ # Example code ┣ 📂 static/ # Static resources ┣ 📜 mcp_server.py # Main server ┣ 📜 config_ui.py # Configuration UI ┣ 📜 run.py # Startup script ┗ 📜 requirements.txt # Dependencies

📚 Configuration Reference

🔧 Global Configuration

ConfigurationDescriptionDefault
🌐 hostServer address"0.0.0.0"
🔌 portServer port8000
🐛 debugDebug modefalse
📝 log_levelLog level"info"

🎉 Special Features

🔄 cURL Import

Paste cURL command directly, automatically generate configuration:

curl -X GET 'https://api.example.com/weather?city=beijing'

🎨 Pixel Art Interface

  • 🎮 Game-like configuration experience
  • 🎯 Drag-and-drop parameter setting
  • 📊 Real-time request test
  • 🔄 Automatically generate configuration

🤝 Contribution Guide

  1. 🍴 Fork this repository
  2. 🔧 Create feature branch
  3. 📝 Submit changes
  4. 🚀 Push branch
  5. 📬 Submit Pull Request

📞 Get Help

  • 📧 Submit Issue
  • 💬 Join Discussion Group
  • 📚 View Wiki

📄 Open Source License

This project uses the MIT license - see LICENSE file


-
security - not tested
A
license - permissive license
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

HTTP-4-MCP configuration tool allows you to easily convert HTTP API into MCP tool, writing the code written. Through simple interface operation, you can quickly configure an mcp-server.

  1. 🌟 Introduction
    1. ✨ Key Features
  2. 👨‍💻 Author Information
    1. 📸 System Demo
      1. 🖥️ Intuitive Visual Configuration Interface
      2. 🔄 Powerful API Conversion
      3. 📊 cURL Import Support
      4. 🚀 Tool Description
    2. 🚀 Quick Start
      1. 📦 Installation
      2. 🎮 Start Service
    3. 🎯 Usage Guide
      1. 1️⃣ Configure API
      2. 2️⃣ Connect to MCP
    4. 🛠️ Project Structure
      1. 📚 Configuration Reference
        1. 🔧 Global Configuration
      2. 🎉 Special Features
        1. 🔄 cURL Import
        2. 🎨 Pixel Art Interface
      3. 🤝 Contribution Guide
        1. 📞 Get Help
          1. 📄 Open Source License

            Related MCP Servers

            • -
              security
              A
              license
              -
              quality
              An MCP server that exposes HTTP methods defined in an OpenAPI specification as tools, enabling interaction with APIs via the Model Context Protocol.
              Last updated -
              2
              Python
              MIT License
            • A
              security
              F
              license
              A
              quality
              An MCP server implementation that enables interaction with the Unstructured API, providing tools to list, create, update, and manage sources, destinations, and workflows.
              Last updated -
              39
              26
              • Apple
            • -
              security
              A
              license
              -
              quality
              A server that translates Model Context Protocol (MCP) tool callings to traditional HTTP API requests, allowing existing HTTP APIs to be integrated into MCP territory through configurable mappings.
              Last updated -
              Python
              Apache 2.0

            View all related MCP servers

            MCP directory API

            We provide all the information about MCP servers via our MCP API.

            curl -X GET 'https://glama.ai/api/mcp/v1/servers/Tght1211/http-4-mcp'

            If you have feedback or need assistance with the MCP directory API, please join our Discord server