GeoOSINT
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@GeoOSINTcreate a geolocation case and inspect this photo's EXIF GPS metadata"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
GeoOSINT
Сервер доказательных географических расследований для MCP-клиентов и локального CLI. Python 3.12+, CPU, SQLite, один Docker-контейнер. Собственный код — MIT. Обязательных API облачных моделей, GPU и платных картографических сервисов нет.
Состояние: работающая основа P0, не полностью завершённый геолокационный продукт.
Исследовательский слой: архитектура.
Подключение и ограничения: развёртывание.
OAuth и работа с оригинальными файлами реализованы и проверяются локально.
Независимый верификатор соответствия фотографии конкретной сцене ещё отсутствует:
geo_case_finalize допускает UNRESOLVED и явно предварительные HYPOTHESIS/PRELIMINARY/
FACT_SUPPORTED с кандидатами; RESOLVED/LOCATION_VERIFIED не устанавливаются.
GPS из файла возвращается немедленно
как METADATA_LOCATION, без ложного LOCATION_VERIFIED.
Подключение через настоящий интерфейс ChatGPT и публичный HTTPS ещё не проверено.
Реализовано
Расследования, владельцы, кандидаты, наблюдения, доказательства, реальные операции, оптимистические ревизии, идемпотентность, хеш-цепочка журнала, JSON/Markdown-экспорт.
WGS84: расстояния, прямые/обратные азимуты, прямые задачи, ограниченные пересечения направлений, угловые расстояния и консервативные bounding box.
Положение солнца и теней по явно заданному времени с UTC offset.
OSM Overpass: десять разрешённых категорий, небольшой bbox, пагинация, лимиты, кеш, TTL, объединение одинаковых запросов, обработка отказов и SSRF-защита.
Geographic Search Scope:
AUTO,PREFERRED,STRICT, полигоны, окружности, включения/исключения, административный реестр, бюджеты и журнал расширений.Metadata First: JPEG, PNG, WebP, TIFF; EXIF GPS и ограниченный XMP, формальная валидация, конфликты, происхождение значений, изолированный серверный парсер.
OAuth Authorization Code + PKCE S256 на официальном MCP SDK, DCR confidential clients, согласие оператора, Argon2id, короткие токены, ротация/отзыв.
Настоящий Streamable HTTP
/mcp, CLI, миграции, Docker, health/readiness, тесты и CI.GeoPrior средствами облачной модели клиента, универсальный Skill, SceneGraph, предложения исследовательских проверок, связанные гипотезы и экспорт графа происхождения.
Не реализованы: HEIC/HEIF, локальное распознавание изображений, DEM, skyline matching, автоматический поиск сцены по всему миру и проверенная точная геолокация.
Related MCP server: @cyanheads/openstreetmap-mcp-server
Быстрый локальный запуск
uv sync --frozen
uv run geoosint --json doctor
uv run geoosint serveПо умолчанию сервер слушает 127.0.0.1:8787, без авторизации только на loopback.
Произвольные Bearer-токены в этом режиме отклоняются. .env.example — образец:
приложение читает переменные процесса, а не загружает .env автоматически.
Проверка файла без сервера, сети и создания расследования:
uv run geoosint metadata inspect /path/to/original.jpg --json --no-storeСохранение оригинала в существующее локальное дело:
uv run geoosint --json case-create "Исследование фотографии"
uv run geoosint metadata inspect /path/to/original.jpg --case-id CASE_ID --jsonDocker
docker compose config
docker compose build
docker compose up -d --wait
docker compose exec -T geoosint geoosint --json doctor
docker compose exec -T geoosint python - < scripts/container_smoke.py
docker compose exec -T geoosint python - < scripts/oauth_container_smoke.pyНа PowerShell вместо перенаправления stdin:
Get-Content scripts/container_smoke.py -Raw | docker compose exec -T geoosint python -Основной Compose — изолированный локальный стенд network_mode: none, без открытых
портов. Для OAuth-развёртывания подготовлен отдельный override с публикацией только
127.0.0.1:${GEO_PUBLISHED_PORT:-18787}. Он требует настройки домена, TLS, hash пароля
и точных callback URI; см. развёртывание.
Существующие reverse proxy и контейнеры приложение не изменяет.
Архитектура
flowchart LR
MCP[Официальный MCP SDK] --> S[Сервисы расследований]
CLI[CLI] --> S
Upload[OAuth upload] --> A[Хранилище оригиналов]
S --> Core[WGS84 / солнце / Scope]
S --> DB[(SQLite WAL)]
S --> P[Контролируемый OSM Provider]
P --> Cache[(Отдельный кеш)]
A --> Metadata[Изолированный EXIF/XMP parser]
Metadata --> SКлиентская модель анализирует видимые признаки. Сервер хранит недоверенные наблюдения, проверяет входы, выполняет математику и контролирует поиск. Выполненный вызов, корректные метаданные и доказанная локализация — разные утверждения.
Документация
Проверки
uv run pytest -q
uv run ruff check src tests scripts
uv run ruff format --check src tests scripts
uv run mypy
uv export --frozen --no-dev --no-emit-project -o requirements-audit.txt
uv run pip-audit -r requirements-audit.txt --no-deps --disable-pipОбычные тесты не обращаются к интернету. Фикстуры географии и изображений явно синтетические и не выдаются за результаты настоящего расследования. Внешний OSM включается только оператором с идентифицирующим User-Agent и контактом.
This server cannot be deployed
Maintenance
Related MCP Connectors
Geospatial AI MCP server — satellite imagery, embeddings, weather, GNS governance
Evidence-readiness MCP server: validate, audit, and score briefs, memos, and evidence packs.
Bureau-operated public read-only MCP service for public Context Packets and Cases.
Remote MCP endpoint for U.S. home forecasts, public benchmark data, and permit or zoning readiness.
Related MCP Servers
- AlicenseCqualityDmaintenanceMCP server for the Geopera geospatial data platform that enables AI agents to discover imagery, place and manage orders, and run analytics using the same API as other Geopera clients.100MIT
- AlicenseNot gradedqualityAmaintenanceGeocode, reverse geocode, and run Overpass spatial queries on OpenStreetMap data via MCP.302 npm8Apache 2.0
- FlicenseNot gradedqualityCmaintenanceEnables MCP clients to analyze, inspect, and manipulate images and videos with deterministic FFmpeg/sharp tools and pluggable AI providers, returning timestamped, evidence-backed results that can be independently re-verified.1-
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to perform geospatial analysis, spatial data processing, vector and raster operations, coordinate transformations, spatial statistics, mapping, and access to climate, satellite, and other geospatial data through MCP-compatible clients.MIT