By AndrewCTF
Live geospatial intelligence via MCP tools — query ADS-B aircraft, AIS vessels, GPS-jamming events, SAR dark vessels, and aggregate cross-domain incident briefs for any location or globally. Includes a watch officer agent that polls for material changes over an area of interest.
Uses power tools
Uses Bash, Write, or Edit tools
Based on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
This plugin requires configuration values that are prompted when the plugin is enabled. Sensitive values are stored in your system keychain.
pythonAbsolute path to the repo's venv Python (has the apps/api deps): macOS/Linux <repo>/apps/api/.venv/bin/python, Windows <repo>\apps\api\.venv\Scripts\python.exe. Run plugin/osint-geoint/install.sh (or install.ps1 on Windows) to print the exact path.
${user_config.python}api_baseURL of the running OSINT backend the tools query over localhost.
${user_config.api_base}repo_dirAbsolute path to your cloned OSINT repo — the folder that contains apps/api. The backend must be running (bash scripts/run-api.sh) for the tools to return live data.
${user_config.repo_dir}A self-hosted, keyless situation console: live aircraft, ships, satellites, GPS jamming, dark vessels, TFR airspace, military bases, naval warnings, earthquakes, outages and conflict events, fused on one 3D globe and correlated on the server instead of leaving you to eyeball six tabs.
The part that's genuinely hard to find elsewhere: it keeps history you own. Flightradar24 gates replay at 7 days free, MarineTraffic cut its free window to 24 hours, ADS-B Exchange killed its free API tier outright — a self-hosted tool just doesn't have that problem. Turn on the archive profile and Velocity keeps recording position history to your own disk for as long as you give it room, with a scrubber to rewind to any past moment. No account, no API key, nobody who can paywall, filter or cut off your archive.
And once you've found something worth keeping, it stays evidence: a chain-of-custody evidence locker hashes every capture (a URL snapshot, an upload, a feed freeze) with SHA-256 and an append-only custody log, then rolls a case up into a self-contained HTML / PPTX report where every claim carries its provenance. All of it keyless, all of it on your disk.
It also runs as an MCP server, so an AI agent can query the same live feeds instead of guessing from its training cut-off — everything it returns is labelled as automated output, not sold as "AI insight."
Quick start · The apps · Take the tour · Query it from an AI agent
One take, real data: the live world → Europe → click an aircraft → its dossier and owned track → rewind the last hour.
The short version, against the trackers you already use (free tiers, as of July 2026):
| History you can replay | Self-hosted | Account / API key | Who owns the archive | |
|---|---|---|---|---|
| Velocity | Unlimited — bounded by your disk, scrubbable to any past moment | Yes | None | You |
| Flightradar24 | 7 days on the free tier | No | Account | Them |
| MarineTraffic | 24 hours free (down from 72) | No | Account | Them |
| ADS-B Exchange | Free API tier discontinued | No | Paid API | Them |
Live coverage is the same community feeder data everywhere; the columns above are the paywall. Each cell is checkable on the vendors' own pricing pages.
Before you get excited: it's a single-analyst tool. Live derived state — the current incident list, AOI selections, watch-officer briefs — lives in memory and clears on restart; what you deliberately keep is durable (see Scope and limits): the position-history archive, the local ontology store (objects, case files, situations) and the evidence locker's custody chain all persist to disk. AIS is densest over Northern Europe (global coverage is sparser and terrestrial-biased), and the 3D satellite mode is a VRAM hog.
Use at your own risk. No warranty; the authors take no responsibility for your use of this tool or the data it pulls. Velocity scrapes third-party sources that have not authorised it — their terms bind you, the requests come from your IP, and rate limits, bans, and legal exposure are yours to absorb. Feeds are often incomplete, delayed, or spoofed, and the AI summaries can be confidently wrong. Not for safety-of-life, navigation, or any use where being wrong hurts someone. Read
DISCLAIMER.mdbefore you run it.
Honestly, not much. There are two ways to run it, pick whichever you're set up for:
compose plugin that ships with Docker Desktop), that's the whole list. One
command and you're up.corepack enable picks the right version for you), Python
3.12 for the backend, and uv to pull its dependencies. A plain venv works too
if you don't have uv.Either way, you need a browser that can do WebGL2, so any recent Chrome, Edge or Firefox. The globe leans on your GPU, so on a laptop with switchable graphics do yourself a favour and push it onto the discrete card before you judge the frame rate.
npx claudepluginhub andrewctf/velocity --plugin osint-geointAI-powered 3D globe control for Claude Code — load tilesets, fly to locations, style layers, and query spatial data with natural language
Google Earth Engine and geemap workflow bundle with bilingual 5,000+ dataset discovery, EasyGEE, GeoMaster, GEE Growth Diary, and a local MCP server.
GeoAI-powered skills for Claude Code: inspect geospatial files, download satellite imagery, search STAC catalogs, fetch Overture Maps data, process rasters, run AI object detection, and search session logs.
OSINT investigation toolkit for journalists — 150 curated tools with methodology guides and OSINT Navigator integration
Investigation toolkit for Claude Code. Case management, OSINT, structured analytic techniques (Heuer / CIA tradecraft primer), chain-of-custody evidence capture, and bundled MCP servers for infrastructure recon and threat intel.
UniFi Protect MCP server — manage security cameras, NVR, recordings, and smart detections