MobyDB sits beside your SCADA, your MCP agents, your PostGIS warehouse — not in front of them. Its composite primary key (H3 · epoch · Ed25519) means every query returns a cryptographically verifiable, jurisdiction‑aware answer. Nothing about your existing pipeline has to move.
Six layers, one composite key. Every row is addressed by where, when, and who — so every answer comes with a proof that it came from an authorized writer, inside a known jurisdiction, within a known moment.
Operators, auditors, AI agents — whoever needs the answer.
Distributed inference & tile rendering on identity‑verified workers.
Agent delegation chains, proof‑of‑jurisdiction, territorial scoping.
Storage. Composite key: (H3, epoch, Ed25519). Signed writes, Merkle epochs, MobyQL.
Ed25519 identity, @handles, Proof‑of‑Trajectory breadcrumbs.
Time partitioned across a geographic address space.
Uber's hexagonal hierarchical index — the geography.
MobyDB doesn't replace your systems. It's the verifiable record underneath them. A SCADA historian still ingests sensor telemetry. A PostGIS warehouse still runs your analyst dashboards. MobyDB holds the signed, jurisdictionally‑scoped version of truth that auditors and regulators ask for.
The stack below MobyDB (GEP, GNS) gives it primitives nothing else has: every cell on Earth has an address; every address has an epoch chain; every writer has a cryptographic identity. The stack above (GNS‑AIP, Hive) makes MobyDB queryable by AI agents that carry proof of who authorized them and where they're allowed to act.
In operational terms: you write a sensor reading once, and the same record serves real‑time control, long‑term analytics, and the Art. 12 AI Act audit trail — without a separate compliance pipeline ever needing to exist.
Pick the shape that matches your team: a grid engineer already inside SCADA, an AI platform team wiring tool calls, an analyst used to psql, or a compliance officer who just wants the receipt.
MobyDB exposes its five primary tools over MCP. Drop the server URL into Claude.ai / Cursor / your orchestrator and your agent gains jurisdiction‑aware spatial memory, instantly.
// claude.ai connector config { "type": "url", "url": "https://mobydb-render-engine-production.up.railway.app/mcp", "name": "mobydb" } // your agent can now call get_cell_state("871e8052affffff", epoch=2) get_provenance("871e8052affffff", epoch=2, pubkey="...")
A thin HTTP surface. No ORM, no client library required. The Rust, Python, and TypeScript SDKs are sugar — useful, never necessary.
# curl — the reference client $ curl https://.../v1/near/871e8052affffff?rings=2 \ -H "x-api-key: $MOBYDB_KEY" # Python — identical payload, ergonomic API from mobydb import Client db = Client(api_key=os.environ["MOBYDB_KEY"]) for cell in db.near("871e8052affffff", rings=2): print(cell.h3_cell, cell.epoch, cell.signed_by)
MobyDB ships as a sidecar. Your SCADA keeps ingesting, your historian keeps its retention policy. The sidecar subscribes, signs, and writes a ct‑audit copy into MobyDB. No changes to the control path.
# scada-adapter.toml [source.opcua] endpoint = "opc.tcp://scada.internal:4840" interval = "1s" [sink.mobydb] url = "https://mobydb.internal/v1/write" h3_resolution = 9 signer = "hsm://substation-astalli" facet = "grid@terna"
Every AI agent acting on the data carries a GNS identity scoped to specific H3 cells. Writes outside that territory are rejected at the database, not at application layer. The proof is persistent.
// delegation certificate (canonical JSON) { "principal": "@camilo.ayerbe", "agent": "agent://terna-grid-ai", "territory": ["871e80*", "871e81*"], "facet": "grid@terna", "expires": "2026-08-02T00:00:00Z", "constraints": { "ops": ["read", "write"] }, "principal_signature": "ed25519:..." }
Pull a signed attestation bundle for any cell / epoch / agent tuple. The bundle is self‑verifying: Merkle proof, public key, canonical payload. A regulator can verify offline, without hitting your API.
# regulator-friendly bundle $ mobydb attest \ --cell 871e8052affffff \ --epoch 2 \ --agent agent://terna-grid-ai \ -o attestation_2026_04_22.json # verifies offline, no server needed $ mobydb verify attestation_2026_04_22.json OK epoch root dfee521a09…d831 OK signature ed25519 valid OK delegation chain complete
Keep PostGIS for analytical joins and reporting. Add MobyDB as the system‑of‑record for trajectory & telemetry where provenance matters. Dual‑write from your existing pipeline; cut over by use case, not by big‑bang migration.
-- existing PostGIS query stays untouched SELECT ST_AsGeoJSON(geom) FROM sensor_readings WHERE recorded_at > '2026-04-01'; -- same tuple, addressable & verifiable GET /v1/near/871e8052affffff?rings=2 &since_epoch=1 &until_epoch=2
The August 2 2026 enforcement deadline doesn't need a new compliance stack. Every record MobyDB stores is already the evidence Art. 12 (record‑keeping), Art. 26§6 (retention), Art. 50 (transparency), and Art. 72 (post‑market monitoring) ask for.
One write. Five gates. A single verifiable artefact at the end.
MobyDB is not a PostGIS killer. It covers a different axis — proof and jurisdiction — that mature spatial databases were never designed to carry. Use both.
| Capability | PostGIS | Time‑series DB | Blockchain L1 | MobyDB |
|---|---|---|---|---|
| Geospatial joins & analytics | YES | limited | NO | partial (MobyQL) |
| Point‑in‑time telemetry | via partitions | YES | NO | YES |
| Per‑record signed provenance | NO | NO | YES | YES |
| Jurisdictional scoping | NO | NO | indirect | YES |
| Offline‑verifiable audit artefact | NO | NO | YES | YES |
| Sub‑ms spatial point lookup | ~8 ms | varies | NO | 0.24 ms |
| Runs on commodity infra | YES | YES | no (or costly) | YES |
| EU AI Act evidence out‑of‑the‑box | NO | NO | partial | YES |
The live demo has ~1,000 cells seeded across Italian utility infrastructure. Pan to Rome, click any substation, inspect the audit trail, verify the Merkle proof in your browser. Nothing is hand‑waved.