remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Integrations
Can be used as a geocoding provider for the server through the GEOCODER_PROVIDER environment variable
Default geocoding provider through Nominatim (nominatim.openstreetmap.org) to provide geocoding and reverse geocoding capabilities
MCP-Geo
¡Geocodificación del servidor MCP con GeoPY!
📋 Requisitos del sistema
- Python 3.6+
📦 Dependencias
Instalar todas las dependencias necesarias:
Paquetes requeridos
- fastmcp : Marco para crear servidores de Protocolo de Contexto de Modelo
- geoPy : biblioteca de Python para acceder y geocodificar/geocodificar inversamente ubicaciones.
Todas las dependencias se especifican en requirements.txt
para una fácil instalación.
📑 Índice de contenidos
- Requisitos del sistema
- Dependencias
- Herramientas MCP
- Empezando
- Opciones de instalación
- Características de seguridad
- Documentación de desarrollo
- Variables de entorno
🛠️ Herramientas MCP
Este servidor MCP proporciona las siguientes herramientas de geocodificación para modelos de lenguaje grandes (LLM):
geocodificación_ubicación
- Toma una dirección o nombre de lugar proporcionado por el usuario y devuelve la latitud, longitud y dirección formateada de la mejor coincidencia.
- Maneja los errores con elegancia y devuelve None si no se encuentra la ubicación o si ocurre un error.
geocodificación inversa
- Toma una latitud y longitud y devuelve la dirección más cercana.
- Útil para encontrar información descriptiva sobre un punto en el mapa.
geocodificación con detalles
- Similar a geocode_location pero devuelve datos adicionales, como cuadros delimitadores e información de dirección más detallada, si el geocodificador lo admite.
geocodificar_múltiples_ubicaciones
- Acepta una lista de cadenas de direcciones y devuelve una lista de resultados de geocodificación (latitud/longitud/dirección) para cada dirección.
- Velocidad limitada para evitar alcanzar las cuotas del servicio de geocodificación.
geocodificación inversa de múltiples ubicaciones
- Acepta una lista de pares [lat, lon] para realizar geocodificación inversa para cada uno.
- Devuelve una lista de diccionarios que contienen latitud, longitud y dirección o Ninguno para búsquedas fallidas, también con velocidad limitada.
distancia_entre_direcciones
- Calcular la distancia entre dos direcciones o nombres de lugares.
- acepta 2 direcciones y una unidad de medida (millas/kilómetro)
- Devuelve la distancia en la unidad especificada o Ninguno si no se pudo geocodificar ninguna de las direcciones.
distancia_entre_coordenadas
- Calcular la distancia entre dos pares lat/lon.
- Acepta 2 pares de latitud y longitud y una unidad de medida (kilómetro/millas)
- Devuelve la distancia en la unidad especificada.
🚀 Primeros pasos
Clonar el repositorio:
📦 Opciones de instalación
Puedes instalar este servidor MCP en Claude Desktop o en cualquier otro lugar. Elige la opción que mejor se adapte a tus necesidades.
Opción 1: Instalar para Claude Desktop
Instalar usando FastMCP:
Opción 2: Instalar en otro lugar
Para utilizar este servidor en cualquier otro lugar:
- Agregue la siguiente configuración al archivo de configuración:
🔒 Funciones de seguridad • Limitación de velocidad: cada llamada de geocodificación tiene una velocidad limitada (por ejemplo, un retraso de 1 segundo) para evitar solicitudes excesivas que violen los límites de uso. • Manejo de errores: detecta excepciones de geopy (tiempos de espera, errores de servicio) y devuelve resultados "Ninguno" seguros en lugar de bloquearse.
📚 Documentación de desarrollo
Si desea ampliar o modificar este servidor: • Consulte geo.py para ver cómo se implementa cada herramienta y cómo se integra. • Ajuste las variables de entorno para cambiar de proveedor (Nominatim, ArcGIS, Bing, etc.). • Consulte la documentación oficial de geopy para obtener información sobre usos avanzados, como cuadros delimitadores, configuración de idioma o extracción avanzada de datos.
⚙️ Variables de entorno
Configurar el servidor usando variables de entorno:
Variable | Descripción | Por defecto |
---|---|---|
GEOCODER_PROVIDER (opcional) | "nominatim", "arcgis" o "bing" | nominatim |
NOMINATIM_URL (opcional) | Dominio para Nominatim | nominatim.openstreetmap.org |
SCHEME (opcional) | http/https | http |
ARC_USERNAME (opcional para ArcGIS) | Nombre de usuario de ArcGIS | Ninguno |
ARC_PASSWORD (opcional para ArcGIS) | Contraseña de ArcGIS | Ninguno |
BING_API_KEY (requerido para Bing) | Tu clave de Bing Maps. | Ninguno |
Estos se pueden configurar en su shell o en el archivo de configuración de MCP de su entorno. Si necesita más, simplemente edite geo.py y añádalos al geocodificador que esté utilizando.
This server cannot be installed
¡Geocodificación del servidor MCP con GeoPY!