🚀 HTTP-4-MCP 미들웨어 서버
🌟 소개
HTTP-4-MCP는 일반 HTTP 인터페이스를 MCP(모델 제어 프로토콜) 인터페이스로 마법처럼 변환해 주는 강력한 미들웨어 서버입니다. 간단한 설정만으로 HTTP API를 즉시 MCP 도구로 활용할 수 있습니다!
✨ 주요 특징
🔄 HTTP에서 MCP로 : HTTP API를 MCP 인터페이스로 한 번의 클릭으로 변환
📝 JSON 구성 : 간단하고 직관적인 구성
🌊 SSE 지원 : 실시간 데이터 스트리밍
🎨 시각적 구성 : API 구성을 위한 드래그 앤 드롭 인터페이스
🔥 핫 리로드 : 재시작 없이 즉시 구성 업데이트
📊 완벽한 모니터링 : 자세한 로깅 및 오류 추적
🛡️ 안전하고 안정적 : 내장된 오류 처리 및 매개변수 검증
Related MCP server: Meta MCP Server
👨💻 저자 정보
📸 시스템 데모
🖥️ 직관적인 시각적 구성 인터페이스

🔄 강력한 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: 🎨 시각적 구성(권장)
http://localhost:8002방문하세요"새 인터페이스 추가"를 클릭하세요
구성 매개변수를 입력하세요
저장하고 즉시 적용하세요!
방법 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'🎨 픽셀 아트 인터페이스
🎮 게임과 같은 구성 경험
🎯 드래그 앤 드롭 매개변수 설정
📊 실시간 요청 테스트
🔄 구성을 자동으로 생성합니다
🤝 기여 가이드
🍴 이 저장소를 포크하세요
🔧 기능 브랜치 생성
📝 변경 사항 제출
🚀 브랜치 푸시
📬 풀 리퀘스트 제출
📞 도움 받기
📧 문제 제출
💬 토론 그룹에 참여하세요
📚 위키 보기
📄 오픈소스 라이선스
이 프로젝트는 MIT 라이선스를 사용합니다. 라이선스 파일을 참조하세요.