Skip to content

The vector database that works with no network and no accounts

Embedded ONNX models, GraphRAG, and eight storage backends. Nothing to sign up for, no API key, no service to run. pip install and search.

A question typed into the dashboard, and every result saying how well it matched and what found it A question goes in, and every result says how well it matched and what found it: meaning, keywords, or both.

pip install vectrixdb
from vectrixdb import Vectrix

db = Vectrix("my_docs")
db.add(["Python is great", "JavaScript powers the web", "Rust is fast"])

results = db.search("programming")
print(results.top.text)

That is the whole setup. The embedding model ships in the package, so the first search works offline on a machine that has never seen an API key.

Every way in

The same collections answer a Python program, the vectrixdb command, a client in TypeScript, Go or Rust, and an assistant over MCP. Each client keeps the same safety rules: no key over plain HTTP, no redirects, certificates always checked.

pip install "vectrixdb[client]"
vectrixdb login --url https://vectors.example.com --device
vectrixdb query "how long do refunds take?" --name handbook

Use the command line on a server

pip install "vectrixdb[client]"
import vectrixdb

db = vectrixdb.connect("https://vectors.example.com", key="...")

Use it from Python, TypeScript, Go or Rust

npm install vectrixdb
import { VectrixClient } from "vectrixdb";

const db = new VectrixClient({ url: "https://vectors.example.com", key: "..." });

Use it from TypeScript · npm

go get github.com/knowusuboaky/VectrixDB/sdk/go/v2
db := vectrixdb.New("https://vectors.example.com", vectrixdb.WithKey(key))

Use it from Go · pkg.go.dev

cargo add vectrixdb
let db = vectrixdb::Client::new("https://vectors.example.com").key(&key).build()?;

Use it from Rust · crates.io · docs.rs

pip install "vectrixdb[mcp]"
vectrixdb mcp --name handbook

Use your collections from an assistant over MCP · Coding agents

See it work

pip install "vectrixdb[api]" and vectrixdb serve give the same collections a REST API and a dashboard. These are the real pages, the real commands and the real containers, filmed by the scripts that keep the pictures current.

The vectrixdb command pointed at a server: a folder ingested, a search whose JSON gives each result's citation, whoami naming the key, and a plain-HTTP address it refuses to send the key to

Command line

vectrixdb pointed at a server: a folder ingested, a search with citations, and a key it will not send over plain HTTP.

One server and one document: the same search run from the Python, TypeScript, Go and Rust clients answers with the same citations

SDKs: Python, TypeScript, Go, Rust

One server, one document, and the same search from four languages, each answering with the same citation.

An assistant connects over MCP, lists the collections and searches: real calls to a sample server and the answers that came back

MCP

An assistant connects, lists the collections and searches them, with real calls and real answers. Every tool: Tools reference.

A key made for one collection sees only that one, a reader may not search, and a call with no key is told where to sign in

MCP keys for a team

A key made for one collection cannot tell the others exist, and every refusal comes back in words.

vectrixdb doctor --offline in an empty folder: the install, the models, the readers and the server each tried and timed

Doctor

vectrixdb doctor tries every part of an install and says what to do about anything missing.

A file added on the Ingest page, its chunks counted as they are written

Ingest

A PDF goes in. The server says what it read: pages, chunks, and a citation for each.

Collections, one opened to its Points, Policy, Builds and Quality tabs

Collections

Every collection with its state, mode and model, and what it holds, tab by tab.

The Evaluate page: three picks, found in the top 10 against search time, and the chunking runs

Evaluate

Every setup ranked on your own questions, and three picks: most found, best balance, fastest.

The Access page: who may read, write and administer, and the state badge in the sidebar

Access

People who sign in as themselves, roles, and a record of who read what.

The Console: a request built, sent, and the curl it shows

Console

Build a request, send it, and copy the curl that does the same.

A walk through Overview, Collections, Evaluate and Audit

The whole walk

Overview, Collections, the evaluation run with its picks, and Audit.

Compose starting the server, the extraction service and Jaeger, then a scan read and a search that finds its words

Containers

Compose starts the server, the extraction service and Jaeger. A scan goes in and a search finds it.

Jaeger with the scan's trace, from the server into the extraction service, and a search's attributes

Traces

One trace from the server into the extraction service: counts and timings, never the text.

Where to go next

  • Getting started

    Learn the library by building something small, end to end.

  • How-to guides

    Recipes for specific jobs: error handling, storage backends, the REST API.

  • Reference

    Signatures and behaviour, generated from the source.

  • Explanation

    Why the search modes differ, and where the pure-Python index runs out.

  • Conversation memory

    Turns, pinned facts and a context block sized to a token budget.

  • Command line

    The vectrixdb command on a server: sign in with a company account, ingest, search.

  • SDKs

    Python, TypeScript, Go and Rust clients, one contract, the same safety rules.

  • MCP server

    Give an assistant a collection to search and remember into.

  • Ship your own client or command

    A company's own acme vectors command or SDK, built on these.

  • Inside your company's registry

    JFrog Artifactory or Nexus: packages, images and models, and only your wrapper allowed in.

  • Run it in containers

    The server, the extraction service and tracing, from one compose file.

  • Use the dashboard

    Every page of the server's dashboard, with pictures, and who sees which.

  • Deploy the server

    One settings file, checked before a start, read by every command.

  • Measure retrieval

    Golden questions written from your own documents, and checked against them.

  • Keys and roles

    Every role, keys scoped to collections and expiring, and who may do what.

  • Size the server for load

    Model calls in line, /ready, threads and memory, so a busy server stays up.

  • Chunking

    The strategies, parent sections and late chunking, and how to pick.

  • What it does not do

    Every limit in one place, with what to do about each.

What is in the box

Search modes Dense, Hybrid, Ultimate, Graph (GraphRAG)
Storage Memory, SQLite, Lakebase, Delta Lake, Cosmos DB, Azure AI Search, OpenSearch, Aurora PostgreSQL
Models Bundled ONNX, or bring your own from HuggingFace
Readers PDF, Word, Excel, Markdown, scans by sight, speech, video
Memory Conversation turns, pinned facts, recency and feedback weighting
Clients Python, TypeScript, Go and Rust, and the vectrixdb command
Assistants MCP server for Claude, VS Code and other MCP clients
Extras Document index with chunking, dashboard, REST API

Install what you need

The core install is deliberately small: vector search, and nothing else.

pip install vectrixdb              # core
pip install vectrixdb[api]         # + REST API and dashboard
pip install vectrixdb[signin]      # + people signing in: single sign-on, passkeys, codes
pip install vectrixdb[mcp]         # + MCP server for assistants
pip install vectrixdb[documents]   # + PDF, Word and Excel readers
pip install vectrixdb[extract]     # + every local reader: documents, OCR, speech, video
pip install vectrixdb[aws]         # + OpenSearch and Aurora
pip install vectrixdb[azure]       # + Azure AI Search and Cosmos DB
pip install vectrixdb[databricks]  # + Lakebase and Delta Lake
pip install vectrixdb[nlp]         # + spaCy for GraphRAG entity extraction
pip install vectrixdb[all]         # every backend, model and server extra; not extract or nlp

The clients for a server somewhere else are small, and need nothing else:

pip install "vectrixdb[client]"                          # Python client and the vectrixdb command
npm install vectrixdb                                    # TypeScript and JavaScript
go get github.com/knowusuboaky/VectrixDB/sdk/go/v2       # Go
cargo add vectrixdb                                      # Rust