http-4-mcp

by Tght1211
Verified
Mulan Permissive Software License, Version 2
1
  • Linux
  • Apple

Integrations

  • Supports importing cURL commands to automatically generate API configurations, allowing users to easily convert existing HTTP requests into MCP tools.

  • Enables access to the project repository on Gitee, offering an alternative source for cloning and accessing the HTTP-4-MCP server codebase.

  • Provides integration with GitHub repositories for cloning and accessing the HTTP-4-MCP server codebase.

🚀 HTTP-4-MCP 미들웨어 서버

영어 | 중국어

🌟 소개

HTTP-4-MCP는 일반 HTTP 인터페이스를 MCP(모델 제어 프로토콜) 인터페이스로 마법처럼 변환해 주는 강력한 미들웨어 서버입니다. 간단한 설정만으로 HTTP API를 즉시 MCP 도구로 활용할 수 있습니다!

✨ 주요 특징

  • 🔄 HTTP에서 MCP로 : HTTP API를 MCP 인터페이스로 한 번의 클릭으로 변환
  • 📝 JSON 구성 : 간단하고 직관적인 구성
  • 🌊 SSE 지원 : 실시간 데이터 스트리밍
  • 🎨 시각적 구성 : API 구성을 위한 드래그 앤 드롭 인터페이스
  • 🔥 핫 리로드 : 재시작 없이 즉시 구성 업데이트
  • 📊 완벽한 모니터링 : 자세한 로깅 및 오류 추적
  • 🛡️ 안전하고 안정적 : 내장된 오류 처리 및 매개변수 검증

👨‍💻 저자 정보

📸 시스템 데모

🖥️ 직관적인 시각적 구성 인터페이스

🔄 강력한 API 변환

📊 cURL 가져오기 지원

🚀 도구 설명

🚀 빠른 시작

📦 설치

지엑스피1

🎮 서비스 시작

# 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 라이선스를 사용합니다. 라이선스 파일을 참조하세요.


ID: kgdh0uwv9z