Servidor MCP de OpenStreetMap (OSM)
Una implementación del servidor OpenStreetMap MCP que mejora las capacidades de LLM con servicios basados en la ubicación y datos geoespaciales.
Manifestación
Optimización del punto de encuentro

Análisis del vecindario

Búsqueda de estacionamiento

Características
Este servidor proporciona a los LLM herramientas para interactuar con datos de OpenStreetMap, lo que permite que las aplicaciones basadas en la ubicación:
Geocodificar direcciones y nombres de lugares en coordenadas
Coordenadas de geocodificación inversa a direcciones
Encuentre puntos de interés cercanos
Obtener indicaciones de ruta entre ubicaciones
Busque lugares por categoría dentro de un cuadro delimitador
Sugerir puntos de encuentro óptimos para varias personas
Explora áreas y obtén información completa sobre la ubicación
Encuentre escuelas e instituciones educativas cerca de una ubicación
Analizar las opciones de viaje entre el hogar y el trabajo
Localice estaciones de carga para vehículos eléctricos con conector y filtrado de potencia
Realizar análisis de habitabilidad del vecindario para bienes raíces
Encuentre instalaciones de estacionamiento con información sobre disponibilidad y tarifas
Componentes
Recursos
El servidor implementa recursos basados en la ubicación:
location://place/{query}: Obtener información sobre lugares por nombre o direcciónlocation://map/{style}/{z}/{x}/{y}: Obtener mosaicos de mapas con estilo en coordenadas específicas
Herramientas
El servidor implementa varias herramientas geoespaciales:
geocode_address: Convertir texto en coordenadas geográficasreverse_geocode: Convierte coordenadas en direcciones legibles para humanosfind_nearby_places: Descubre puntos de interés cerca de una ubicaciónget_route_directions: Obtener indicaciones paso a paso entre ubicacionessearch_category: Encuentra lugares de categorías específicas en un áreasuggest_meeting_point: Encuentra lugares de reunión óptimos para varias personasexplore_area: Obtenga datos completos sobre un vecindariofind_schools_nearby: Localiza instituciones educativas cerca de una ubicación específicaanalyze_commute: Compara las opciones de transporte entre el hogar y el trabajofind_ev_charging_stations: Localiza infraestructura de carga de vehículos eléctricos con filtradoanalyze_neighborhood: Evaluar la habitabilidad del vecindario para bienes raícesfind_parking_facilities: Localiza opciones de estacionamiento cerca de un destino
Casos de uso
Toma de decisiones inmobiliarias
Un LLM puede ayudar a los usuarios a evaluar posibles vecindarios para la compra de viviendas:
Pruebas locales
Ejecución del servidor
Para ejecutar el servidor localmente:
Instalar el paquete en modo de desarrollo:
Iniciar el servidor:
El servidor se iniciará y escuchará las solicitudes MCP en la entrada/salida estándar.
Pruebas con clientes de ejemplo
El repositorio incluye dos clientes de ejemplo en el directorio examples/ :
Ejemplo básico de cliente
client.py demuestra el uso básico del servidor OSM MCP:
Esto hará lo siguiente:
Conectarse al servidor que se ejecuta localmente
Obtenga información sobre San Francisco
Busca restaurantes en la zona
Recupere datos de mapas completos con seguimiento del progreso
Ejemplo de integración de LLM
llm_client.py proporciona una clase auxiliar diseñada para la integración de LLM:
Este ejemplo muestra cómo un LLM puede utilizar el Asistente de ubicación para:
Obtener información de ubicación a partir de consultas de texto
Encuentre puntos de interés cercanos
Obtener direcciones entre ubicaciones
Encuentra puntos de encuentro óptimos
Explora los barrios
Escribiendo su propio cliente
Para crear su propio cliente:
Importar el cliente MCP:
Inicialice el cliente con la URL de su servidor:
Invocar herramientas o acceder a recursos:
Configuración
Instalar
Escritorio de Claude
En MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json En Windows: %APPDATA%/Claude/claude_desktop_config.json
Desarrollo
Construcción y publicación
Para preparar el paquete para su distribución:
Sincronizar dependencias y actualizar el archivo de bloqueo:
Distribuciones de paquetes de compilación:
Esto creará distribuciones de origen y de rueda en el directorio dist/ .
Publicar en PyPI:
Nota: Deberá configurar las credenciales de PyPI a través de variables de entorno o indicadores de comando.
Depuración
Dado que los servidores MCP se ejecutan en stdio, la depuración puede ser complicada. Para una experiencia óptima, recomendamos usar el Inspector MCP .
Puede iniciar el Inspector MCP a través de npm con este comando:
Al iniciarse, el Inspector mostrará una URL a la que podrá acceder en su navegador para comenzar a depurar.
Ejemplo de uso de la API
A continuación se muestra un ejemplo rápido de cómo utilizar los puntos finales de API clave desde el código Python:
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
Mejora las capacidades de LLM con servicios basados en la ubicación y datos geoespaciales, lo que permite a los usuarios geocodificar direcciones, encontrar puntos de interés cercanos, obtener direcciones, optimizar puntos de encuentro y analizar vecindarios.
Related MCP Servers
- -security-license-qualityEnables integration with DuckDuckGo search capabilities for LLMs, supporting comprehensive web search, regional filtering, result types, and safe browsing with caching and customizable search parameters.Last updated -303MIT License
- Asecurity-licenseAqualityEnables LLMs to perform travel-related tasks by interacting with Google Maps and travel planning services including location search, place details, and travel time calculations.Last updated -512285MIT License
- Asecurity-licenseAqualityEnables interaction with lightning addresses and common lightning tools via your LLM, providing Lightning Network functionality through natural language.Last updated -3121
- Asecurity-licenseAqualityEnables LLMs to interact with DataForSEO and other SEO APIs through natural language, allowing for keyword research, SERP analysis, backlink analysis, and local SEO tasks.Last updated -1001,19160