MCP-Mirror
MCP Server
MCP-Mirror
public

Tght1211_http 4 mcp

Mirror of https://github.com/Tght1211/http-4-mcp

Repository Info

0
Stars
0
Forks
0
Watchers
0
Issues
JavaScript
Language
Mulan Permissive Software License, Version 2
License

About This Server

Mirror of https://github.com/Tght1211/http-4-mcp

Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.

Documentation

# šŸš€ HTTP-4-MCP Middleware Server

<div align="center">

![Version](https://img.shields.io/badge/version-1.0.0-blue.svg)
![Python](https://img.shields.io/badge/Python-3.8+-green.svg)
![License](https://img.shields.io/badge/license-MIT-orange.svg)

[English](README.md) | [äø­ę–‡](README_CN.md)

</div>

## 🌟 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

<div align="center">

[![GitHub](https://img.shields.io/badge/GitHub-tght1211-181717?style=for-the-badge&logo=github)](https://github.com/tght1211)
[![Gitee](https://img.shields.io/badge/Gitee-tght1211-C71D23?style=for-the-badge&logo=gitee)](https://gitee.com/tght1211)

</div>

## šŸ“ø System Demo

<div align="center">

### šŸ–„ļø Intuitive Visual Configuration Interface

![Visual Configuration Interface](image/image.png)

### šŸ”„ Powerful API Conversion

![API Conversion](image/image1.png)

### šŸ“Š cURL Import Support

![cURL Import Support](image/image2.png)

### šŸš€ Tool Description

![Tool Description](image/image3.png)

</div>

## šŸš€ Quick Start

### šŸ“¦ Installation

```bash
# 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

```bash
# 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

#### Method 1: šŸŽØ Visual Configuration (Recommended)

1. Visit `http://localhost:8002`
2. Click "Add New Interface"
3. Fill in configuration parameters
4. Save and apply instantly!

#### Method 2: šŸ“ JSON Configuration

```json
{
  "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

```python
# 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

| Configuration | Description | Default |
|---------------|-------------|---------|
| 🌐 host | Server address | "0.0.0.0" |
| šŸ”Œ port | Server port | 8000 |
| šŸ› debug | Debug mode | false |
| šŸ“ log_level | Log level | "info" |

## šŸŽ‰ Special Features

### šŸ”„ cURL Import

Paste cURL command directly, automatically generate configuration:

```bash
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](LICENSE) file

---

<div align="center">
ā­ļø If this project helps you, please give a star!ā­ļø
</div>

Quick Start

1

Clone the repository

git clone https://github.com/MCP-Mirror/Tght1211_http-4-mcp
2

Install dependencies

cd Tght1211_http-4-mcp
npm install
3

Follow the documentation

Check the repository's README.md file for specific installation and usage instructions.

Repository Details

OwnerMCP-Mirror
RepoTght1211_http-4-mcp
Language
JavaScript
LicenseMulan Permissive Software License, Version 2
Last fetched8/8/2025

Recommended MCP Servers

šŸ’¬

Discord MCP

Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.

integrationsdiscordchat
šŸ”—

Knit MCP

Connect AI agents to 200+ SaaS applications and automate workflows.

integrationsautomationsaas
šŸ•·ļø

Apify MCP Server

Deploy and interact with Apify actors for web scraping and data extraction.

apifycrawlerdata
🌐

BrowserStack MCP

BrowserStack MCP Server for automated testing across multiple browsers.

testingqabrowsers
⚔

Zapier MCP

A Zapier server that provides automation capabilities for various apps.

zapierautomation