Skip to main content
Glama
Tght1211

http-4-mcp

by Tght1211

🚀 HTTP-4-MCP ミドルウェアサーバー

バージョンパイソンライセンス

英語|中文

🌟 はじめに

HTTP-4-MCPは、通常のHTTPインターフェースをMCP(モデル制御プロトコル)インターフェースに魔法のように変換する強力なミドルウェアサーバーです。簡単な設定で、HTTP APIを瞬時にMCPツールにすることができます。

✨ 主な特徴

  • 🔄 HTTP to MCP : HTTP API を MCP インターフェースにワンクリックで変換

  • 📝 JSON設定:シンプルで直感的な設定

  • 🌊 SSEサポート:リアルタイムデータストリーミング

  • 🎨ビジュアル構成: API 構成用のドラッグアンドドロップ インターフェース

  • 🔥ホットリロード: 再起動なしで即座に構成を更新

  • 📊完全な監視:詳細なログ記録とエラー追跡

  • 🛡️安全で信頼性が高い: エラー処理とパラメータ検証が組み込まれています

Related MCP server: Any-API MCP Server

👨‍💻著者情報

GitHub ギティー

📸 システムデモ

🖥️ 直感的なビジュアル設定インターフェース

ビジュアル構成インターフェース

🔄強力なAPI変換

API変換

📊 cURL インポートのサポート

cURL インポートのサポート

🚀 ツールの説明

ツールの説明

🚀 クイックスタート

📦 インストール

# 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

🎮 サービスを開始

# 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

🎯 使用ガイド

1️⃣ APIを設定する

方法 1: 🎨 ビジュアル構成(推奨)

  1. http://localhost:8002にアクセスしてください

  2. 「新しいインターフェースを追加」をクリックします

  3. 設定パラメータを入力する

  4. 保存してすぐに適用しましょう!

方法2: 📝 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️⃣ MCPに接続する

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

🛠️ プロジェクト構造

📦 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

📚 設定リファレンス

🔧 グローバル設定

構成

説明

デフォルト

🌐 ホスト

サーバーアドレス

「0.0.0.0」

🔌 ポート

サーバーポート

8000

🐛 デバッグ

デバッグモード

間違い

📝 ログレベル

ログレベル

"情報"

🎉 特別な機能

🔄 cURL インポート

cURL コマンドを直接貼り付けると、構成が自動的に生成されます。

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

🎨 ピクセルアートインターフェース

  • 🎮 ゲームのような設定体験

  • 🎯 ドラッグアンドドロップによるパラメータ設定

  • 📊 リアルタイムリクエストテスト

  • 🔄 構成を自動生成

🤝 貢献ガイド

  1. 🍴 このリポジトリをフォークする

  2. 🔧 機能ブランチを作成する

  3. 📝 変更を送信する

  4. 🚀 ブランチをプッシュする

  5. 📬 プルリクエストを送信する

📞 ヘルプを受ける

  • 📧 問題を提出する

  • 💬 ディスカッショングループに参加する

  • 📚 ウィキを見る

📄オープンソースライセンス

このプロジェクトはMITライセンスを使用しています - LICENSEファイルを参照してください


Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    C
    maintenance
    A versatile tool that converts Web API interfaces into MCP tools for AI assistants, allowing them to access various web services through simple configuration and API key management.
    75
    -
  • A
    license
    B
    quality
    B
    maintenance
    A configurable MCP server that adapts any HTTP API into an MCP toolset with generic HTTP tools (GET, POST, PUT, DELETE) and pluggable authentication. Includes API discovery scripts and supports dynamic tool generation from OpenAPI specs or wordlist scans.
    5
    1
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables users to expose arbitrary HTTP APIs as configurable MCP tools by defining tool specifications in a JSON configuration file.
    1,504 npm
    3
    -