Project · Rust · Oracle
rust-oracledb
The original clean-room, pure-Rust async driver for Oracle Database: a from-scratch port of python-oracledb’s thin-mode wire protocol. No Instant Client, no OCI, thread-safe, fully async, zero unsafe code.
- Author
- Dipl.-Ing. Muhammed Durakovic
- Conformance
- 2,462 of python-oracledb’s own conformance tests passing
- Crate
oraclemcp-driver-cxon crates.io (published asoracledb0.1–0.9, June–July 2026)- Source
- github.com/MuhDur/rust-oracledb
- Used by
- oraclemcp — safe Oracle access for AI agents
Credited by Oracle
In August 2026 the oracledb crate name passed to Oracle’s driver team for their official Rust driver, oracle/rust-oracledb. Its README records the history:
“This replaces the original Rust thin driver produced by Muhammed Durakovic. The new name for that driver is oraclemcp-driver-cx.”
Oracle, rust-oracledb README — History
Why it exists
Talking to Oracle from Rust used to mean Oracle Instant Client: a native C dependency, platform-specific binaries and unsafe FFI. A thin-mode driver speaks Oracle’s wire protocol (TNS/TTC) directly, so a Rust binary connects to Oracle with nothing else installed — which is what makes small, auditable tools like an MCP server for AI agents practical.
How it was verified
Instead of claiming parity, the driver runs python-oracledb’s own conformance suite: 2,462 tests passing. The port is clean-room — written from protocol behaviour and tests, not copied code — and contains no unsafe.