locateanything
Use locateanything as a tool in CrewAI agents for geolocation tasks.
Forward geolocation findings to Elastic for analysis and visualization.
Use locateanything as a tool in LangChain agents for geolocation tasks.
Forward geolocation findings to Slack for notifications or collaboration.
Forward geolocation findings to Splunk for security or analysis.
Click on "Install 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., "@locateanythingguess where this photo was taken: IMG_2024.jpg"
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.
locateanything
Drop in a photo → get ranked location guesses. 100% local, powered by an uncensored vision + reasoning model.
#osint #geoint #geolocation #llm #vision #self-hosted
A local GeoGuessr-for-real-life: it reads EXIF GPS and reasons over visual clues (signage, plates, architecture, flora, sun position) using a local uncensored vision-language model + a reasoning model — no cloud, no API keys, nothing uploaded.
pip install "cognis-locateanything[img]"
fleet up vision reasoning # via https://github.com/cognis-digital/uncensored-fleet
locate photo.jpg # → ranked candidates + rationale
locate photo.jpg --format json
locate photo.jpg --exif-only --format geojson # offline EXIF fix, straight onto a mapOutput formats
| use |
| human-readable ranked candidates |
| machine-readable, for pipelines / evidence logs |
| RFC 7946 |
--exif-only is a deterministic, offline, model-free run that uses only the
embedded EXIF GPS fix — ideal for CI, batch triage, or air-gapped review.
🔎 Example output
Real, reproducible output from the tool — runs offline:
$ locateanything-emit --version
locateanything 0.1.0$ locateanything-emit --help
usage: locate [-h] [--version] [--format {table,json,geojson}] [--exif-only]
image
Infer where a photo was taken (local VL + reasoning model).
positional arguments:
image path to an image
options:
-h, --help show this help message and exit
--version show program's version number and exit
--format {table,json,geojson}
--exif-only offline, deterministic: use only embedded EXIF GPS,
skip the VL/reasoning modelsBlocks above are real
locateanythingoutput — reproduce them from a clone.
Sample result format (illustrative values — run on your own data for real findings):
{
"findings": [
{
"id": "1234567890",
"title": "Suspicious Activity Detected",
"description": "An unknown actor has been observed attempting to access a sensitive system.",
"created_at": "2023-02-15T14:30:00Z",
"updated_at": "2023-02-15T14:30:00Z",
"labels": ["suspicious", "malware"],
"indicators": [
{
"type": "ip",
"value": "192.0.2.1"
},
{
"type": "domain",
"value": "example.com"
}
]
}
]
}Related MCP server: image-recognition-mcp
Usage — step by step
Install the CLI (console-script:
locate):pipx install "git+https://github.com/cognis-digital/locateanything.git" locate --versionInfer where a photo was taken (runs entirely on a local vision + reasoning model):
locate ./photo.jpgGet machine-readable output for pipelines or evidence logs:
locate ./photo.jpg --format json > location.jsonRead the result — parse the JSON for the inferred location and rationale:
jq '.' location.jsonIn CI/batch, loop over a folder of images and collect findings:
for f in images/*.jpg; do locate "$f" --format json; done > all_locations.jsonl
Demos
Worked, runnable scenarios live in demos/ — each has a SCENARIO.md and,
where relevant, a sample image carrying a real public landmark coordinate in EXIF so you
can run it end-to-end offline with --exif-only. (Re)generate the sample images with
python scripts/make_demo_images.py.
# | Scenario |
Basic run — full VL + reasoning | |
EXIF GPS fix, offline (no models needed) | |
Batch a folder into JSONL | |
GeoJSON export → drop straight onto a map | |
Southern + Western hemisphere (sign handling) | |
Disaster-response / situational awareness | |
Maritime / port geolocation (suite interop) | |
Evidence chain + forward to STIX/MISP/Slack | |
No EXIF → visual-clue inference |
Architecture
flowchart LR
IMG[📷 image] --> EXIF[EXIF GPS parse]
IMG --> VL[Uncensored VL model<br/>visual clues]
EXIF --> R[Reasoning model<br/>rank candidates]
VL --> R
R --> OUT[Ranked locations + rationale<br/>table / JSON / GeoJSON / MCP]Use it from any AI stack
MCP server (
locate mcp) for Claude Desktop / Cursor / uncensored-fleetJSON output pipes into any agent · LangChain/CrewAI tool in one line · plain CLI
⚠️ Responsible use
For OSINT, journalism, and research. Get consent before geolocating images of people or private property, and comply with local law. You are responsible for your use.
Related
🤖 uncensored-fleet · 🧠 engram · 🔍 geolens · 🗂️ the suite
⭐ If this is cool, star it — it helps others find it.
Interoperability
locateanything composes with the 300+ tool Cognis suite — JSON in/out and a shared
OpenAI-compatible /v1 backbone. See INTEROP.md for the
suite map, composition patterns, and reference stacks.
Integrations
Forward locateanything's findings to STIX/MISP/Sigma/Splunk/Elastic/Slack/webhooks via
cognis-connect. See INTEGRATIONS.md.
License
COCL v1.0 — see LICENSE.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Geolocate Me turns your phone into location context for any AI assistant. Install the iOS or Android app, connect once with OAuth, and your GPS is queryable in natural language. Ask where you are, where you parked, where you were yesterday at 3pm, or how long you were at the office — the assistant calls the tool and answers with a real street address. https://geolocateme.app
Geospatial AI MCP server — satellite imagery, embeddings, weather, GNS governance
Give any AI assistant real-time access to your phone's GPS and location history.
Verifiable Earth ground truth for AI agents: water, hazard, ground stability, resource, with proof.
Related MCP Servers
- AlicenseAqualityAmaintenanceManage your self-hosted Immich photo library through conversation — natural language search via CLIP, geographic album curation, duplicate detection with perceptual hashing,5743MIT
- AlicenseNot gradedqualityCmaintenanceEnables running an OpenAI-compatible vision-language model on local images with natural-language prompts, returning the model's text response.43ISC
- FlicenseNot gradedqualityCmaintenanceGives AI a virtual body to explore real locations on Earth using authentic terrain, weather, sky, radio, wildlife, and cultural data, with tools for walking, observing, asking about history, and collecting souvenirs—fully offline-capable.3
- AlicenseNot gradedqualityAmaintenanceProvides local image understanding for text-only LLMs with tools for image analysis, OCR, object detection, and cropping, all processed on-device.2MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/cognis-digital/locateanything'
If you have feedback or need assistance with the MCP directory API, please join our Discord server