SportFinder Pro MCP Server
README.md
# SportFinder Pro Backend + MCP Server
Backend para un buscador inteligente de tiendas de artículos deportivos. Permite encontrar tiendas cercanas y filtrar por ubicación, tipo de artículo, deporte, distancia, estado abierto y disponibilidad. Los resultados se ordenan por relevancia.
## Características
- API REST con FastAPI.
- Servidor MCP sobre HTTP en `/mcp`.
- Búsqueda inteligente con ranking por distancia, calificación, inventario, texto, filtros y servicios.
- Soporte para tres idiomas: español, inglés y francés.
- Contrato visual moderno en `/api/v1/theme`.
- Datos iniciales simulados para Bogotá, Medellín y Cali.
- Configuración lista para Render mediante `render.yaml`.
## Ejecutar localmente
```bash
python -m venv .venv
pip install -r requirements.txt
uvicorn app.main:app --host 127.0.0.1 --port 8000 --reload
```
URLs locales:
```txt
Backend REST: http://127.0.0.1:8000
Documentación: http://127.0.0.1:8000/docs
Servidor MCP: http://127.0.0.1:8000/mcp
Health check: http://127.0.0.1:8000/health
```
## Endpoints principales
| Método | Ruta | Uso |
|---|---|---|
| GET | `/health` | Verifica estado del servicio |
| GET | `/api/v1/theme` | Devuelve lineamientos visuales de la app |
| GET | `/api/v1/languages` | Devuelve idiomas y textos base |
| GET | `/api/v1/filters` | Devuelve filtros localizados |
| POST | `/api/v1/search` | Busca tiendas deportivas |
| GET | `/api/v1/stores/{store_id}` | Devuelve detalle de tienda |
| POST | `/api/v1/availability` | Valida disponibilidad de un producto |
| POST | `/mcp` | Endpoint MCP JSON-RPC |
## Herramientas MCP
- `search_sports_stores`
- `get_store_details`
- `check_item_availability`
- `get_filter_options`
## Despliegue en Render
Configuración manual equivalente:
```txt
Runtime: Python
Build Command: pip install -r requirements.txt
Start Command: uvicorn app.main:app --host 0.0.0.0 --port $PORT
Health Check Path: /health
```
Después del despliegue, el servidor MCP público quedará así:
```txt
https://NOMBRE-DEL-SERVICIO.onrender.com/mcp
```
## Pruebas
```bash
pytest -q
```
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessSyncing