SDK & extensibility

Extend the workstation. Never fork it.

Most “custom builds” need no engine changes at all: plugins add panels and routes, sidecars add heavy compute behind a capability gate, DuckDB extensions and project files reshape data and UX, and the documented REST surface makes every capability scriptable. Primes and OEMs can go further and embed the engine itself — prototyping on the finished application before writing a line of code.

Plugin SDKSidecar contractDuckDB + extensions.tmgproj project filesDocumented REST + OpenAPIMCP serverLocal LLM assistant

At a glance

  • PluginsDeveloper guide + abstractions library (Tmg.Plugins.Abstractions); panels, tools and routes that load into the shipped app
  • SidecarsA plain HTTP contract: register a port, report capabilities, degrade honestly when absent — the same mechanism the product’s own SNAP / ODM / YOLO-E integrations use
  • Data layerDuckDB everywhere: read-only SQL with an allowlist, Advanced Query Builder, spatial + community extensions, events tap for trigger→webhook automation
  • ProjectsA project is a portable folder + one .tmgproj GPKG — VIEW-default no-copy storage; copy the folder and the whole project travels
  • APIDocumented developer API + live OpenAPI at /discover/openapi; every UI action has a REST twin
  • AIMCP server exposes map, data and analysis tools to Claude, LM Studio, Ollama clients; optional local LLM assistant (llama.cpp) with NL→SQL — no cloud
Prototype on the finished app firstEsri-compatible + OGC endpoints come free with the engineNo per-user-type licensingOpen docs — no NDA to read the SDK

Capabilities

Four extension seams and an AI layer

Plugin development

Add ribbon tools, dockable panels and REST routes that ship alongside the product’s own. The developer guide covers project scaffolding, the abstractions package and packaging; sample plugins show the patterns.

  • Panels over the live map, exactly like the built-in tools
  • Routes join the same Kestrel host and security model

Sidecar modules

Heavy or specialized compute — a proprietary detector, a niche format, a national algorithm — runs as a separate process the engine calls over loopback HTTP. Capability-gated: present means advertised, absent means a clean 503.

  • Python, C++, anything that serves HTTP
  • The product’s own OpenCV, scikit-learn and YOLO-E paths use this exact contract

DuckDB as the data seam

The embedded analytical database is user-visible: run read-only SQL over every registered source, attach external databases, load spatial and community extensions, and wire query / transaction events to webhooks, SSE or local commands.

  • Advanced Query Builder UI at /querybuilder/
  • Events tap off by default; rules persist in a GeoPackage

Project files and portability

A .tmgproj GeoPackage plus a folder is the whole project — layers, styles, panels, connections. Ship a configured product experience to a customer as a folder copy, no build required.

  • VIEW-default storage: data stays where it lives
  • Bulk UAS project import registers a folder tree in one pass

MCP server for AI agents

A Model Context Protocol server exposes map navigation, layer management, data queries and analysis tools so Claude Desktop, LM Studio or any MCP client can drive the workstation — including fully local stacks.

  • Works with local models for air-gapped agentic workflows
  • The same REST surface scripts from PowerShell, Python or CI

Local LLM assistant

An optional llama.cpp-based assistant answers questions about loaded data, writes SQL from natural language and drives tools — weights on disk, inference on the box, nothing leaves the enclave.

  • SAM2 click-to-segment and YOLO-E detection ride the same local-AI tier
  • Every AI feature is optional and reports through /capabilities

Integrator workflow

From evaluation to fielded system

The evaluation starts on the shipped application, not on a rendering library — which is the difference between weeks and years.

  1. Prototype on the productLoad your data, walk your workflow in the finished app, and find the actual gaps before writing code.
  2. Close gaps with configurationProject files, DuckDB views, saved layouts and served endpoints cover most deltas with zero engine changes.
  3. Write the thin partsA plugin for the UI seam; a sidecar for the algorithm seam; both documented, both hot-swappable.
  4. Integrate systemsPoint the customer’s ArcGIS Pro, QGIS, TAK and web clients at the served endpoints; script the REST surface from their orchestration.
  5. Embed if you mustLicense the engine for OEM embedding when the delivery is your own product — the Esri-compatible and OGC serving stack comes with it.

Specifications

Surfaces and contracts

Developer surfaces

  • Plugin SDKDeveloper guide + Tmg.Plugins.Abstractions
  • RESTDocumented developer API; live OpenAPI at /discover/openapi
  • DuckDBRead-only SQL, allowlisted; spatial + community extensions
  • EventsTrigger→webhook / SSE / JSONL / command
  • Projects.tmgproj GPKG + folder

AI layer

  • MCPMap, layer, query and analysis tools over Model Context Protocol
  • Assistantllama.cpp local models; NL→SQL
  • VisionSAM2 segmentation · YOLO-E zero-shot detection
  • PostureAll local, all optional, all capability-reported

Honest scope

What ships, what is optional, what is next

Defense buyers get burned by overclaims. This is the plain-language scope for this capability, drawn from the product’s own documentation.

  • Shipped Plugin guide, sidecar contract, DuckDB layer, project model, REST + OpenAPI, MCP server — These are the same seams the product’s own features are built on.
  • Optional sidecar / gated Local AI stack — LLM assistant, SAM2 and YOLO-E need local model weights and (for comfort) a GPU; they are off until installed.
  • Roadmap RAG / vector search — The assistant’s retrieval routes are stubs today; NL→SQL and tool driving are the shipped story.
  • Roadmap OEM licensing terms — Engine-embedding commercial terms are negotiated per program — talk to us early in the capture.

GeoTactical Insights · powered by 3D Map Explorer

See it on a disconnected machine.

A 30-minute guided demo on your own data: ingest, exploit, fuse, share to TAK and export — with the network cable out. We will also tell you exactly what is a sidecar, what is gated and what is still roadmap.

GeoTactical Insights

GEOINT and defense workflows powered by 3D Map Explorer, the air-gapped geospatial intelligence platform from Tech Maven Geospatial.

info@techmavengeospatial.com
3dmapexplorer.techmaven.net