No description
  • Go 95.2%
  • Dockerfile 4.8%
Find a file
2025-11-24 09:51:30 +03:00
config first commit 2025-11-19 16:35:08 +03:00
handler Добавление функций для работы с координатами 2025-11-20 11:22:10 +03:00
middleware first commit 2025-11-19 16:35:08 +03:00
.dockerignore first commit 2025-11-19 16:35:08 +03:00
.gitignore first commit 2025-11-19 16:35:08 +03:00
.woodpecker.yml Добавление функций для работы с координатами 2025-11-20 11:22:10 +03:00
Dockerfile Исправление Dockerfile 2025-11-20 11:32:24 +03:00
go.mod Добавление функций для работы с координатами 2025-11-20 11:22:10 +03:00
go.sum Добавление функций для работы с координатами 2025-11-20 11:22:10 +03:00
LICENSE first commit 2025-11-19 16:35:08 +03:00
main.go Добавление версии 2025-11-24 09:51:30 +03:00
README.md Добавление функций для работы с координатами 2025-11-20 11:22:10 +03:00

MCP Nominatim

MCP Nominatim — это сервер геокодирования, реализованный с использованием протокола Model Context Protocol (MCP), который предоставляет инструменты для поиска местоположений, обратного геокодирования и получения деталей из Nominatim.

Описание

MCP Nominatim предоставляет HTTP-интерфейс, совместимый с MCP, для взаимодействия с Nominatim — поисковой системой для OpenStreetMap. Сервер предоставляет инструменты для поиска адресов, обратного геокодирования и получения подробной информации о местоположениях.

Функциональность

  • search: Поиск местоположений по текстовому описанию или адресу.
  • reverse: Обратное геокодирование — получение адреса по координатам (широта/долгота).
  • lookup: Запрос адреса и других деталей для одного или нескольких объектов OSM (node, way, relation).
  • details: Отображение всех деталей о конкретном месте, сохраненном в базе данных.

Дополнительный функционал

  • DMSToDD: Преобразовать координаты в строке из формы DMS в десятичную
  • DDToDMS: Преобразование десятичных координат из десятичных в DMS
  • calculateAzimuth: Вычисляет новые координаты по азимуту и ​​расстоянию
  • haversineDistance: Вычисляет расстояние между двумя точками по формуле гаверсина в метрах.

Зависимости

Установка и запуск

  1. Убедитесь, что у вас установлен Go.
  2. Склонируйте репозиторий:
    git clone https://git.ymnuktech.ru/ymnuk/mcp-nominatim.git
    cd mcp-nominatim
    
  3. Установите зависимости:
    go mod tidy
    
  4. Настройте конфигурацию (порт и другие параметры) в файле конфигурации.
  5. Запустите сервер:
    go run main.go
    

Сервер будет запущен на адресе 0.0.0.0 и порту, указанном в конфигурации (по умолчанию 8080).

Использование

Сервер предоставляет MCP-инструменты по адресу /mcp. Для взаимодействия с сервером используйте MCP-совместимый клиент.

Лицензия

Этот проект лицензирован по лицензии MIT — смотрите файл LICENSE для получения подробной информации.