
ArcadeDB
io.github.ArcadeDataPublished by GitHub account ArcadeDatav26.3.1Updated Oct 26, 2026
Multi-Model database with built-in MCP server for SQL, Cypher, Gremlin, and GraphQL.
Overview
Built-in MCP server of the ArcadeDB multi-model database, letting an assistant query and manage graph, document, key/value, time-series and vector data.
- What you can do
- Query and manage ArcadeDB databases through the database's built-in MCP server, which the README lists as the way AI assistants connect.
- Work across models and languages: SQL, Neo4j Cypher, Apache Gremlin, GraphQL and MongoDB query language over graph, document, key/value, search, time-series, vector and geospatial data.
- Use graph features such as 70+ built-in graph algorithms, parallel SQL query execution and materialized views.
- Support AI-oriented workloads such as Graph RAG, recommendation engines, fraud detection and knowledge graphs.
- When to use it
- Worth adding when an assistant should work directly with an ArcadeDB instance — exploring schemas, running Cypher, Gremlin or SQL queries, or building graph and vector retrieval workflows — instead of going through a separate client.
- Requirements
- A running ArcadeDB server (Docker image, release package started with bin/server.sh, or embedded on the JVM) with the MCP server module available; Java 21+ for non-Docker installs. The manifest declares no packages, environment variables or authentication, so connection details must be supplied by the user.
Installation
In SourceWeft
- Open ArcadeDB in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
[ArcadeDB]
Multi Model DBMS Built for Extreme Performance
[Image] [Image] [Image] [Image] [Image] [Image] [Image] [Ask DeepWiki] [Bolt drivers] [Image] [Image] [Image] [Image] [Image] [Image]
[Github] [LinkedIn] [Bluesky] [Twitter] [Youtube] [Discord] [StackOverflow] [Blog]
ArcadeDB is a Multi-Model DBMS created by Luca Garulli, the same founder of OrientDB, after SAP's acquisition. Written from scratch with a brand-new engine made of Alien Technology, ArcadeDB is able to crunch millions of records per second on common hardware with minimal resource usage. ArcadeDB reuses OrientDB's SQL engine (heavily modified) and some utility classes. It's written in LLJ: Low Level Java - still Java21+ but only using low level APIs to leverage advanced mechanical sympathy techniques and reduce Garbage Collector pressure. Highly optimized for extreme performance, it runs from a Raspberry Pi to multiple servers on the cloud.
ArcadeDB is fully transactional DBMS with support for ACID transactions, structured and unstructured data, native graph engine (no joins but links between records), full-text indexing, geospatial querying, and advanced security.
ArcadeDB supports the following models:
- Graph Database (compatible with Neo4j Cypher, Apache Tinkerpop Gremlin and OrientDB SQL)
- Document Database (compatible with the MongoDB driver + MongoDB queries and OrientDB SQL)
- Key/Value (compatible with the Redis driver)
- Search Engine
- Time Series (with InfluxDB Line Protocol, Prometheus remote_write/read, and PromQL support)
- Vector Embedding
- Geospatial
ArcadeDB understands multiple languages:
- SQL (from OrientDB SQL)
- Neo4j Cypher (Open Cypher)
- Apache Gremlin (Apache Tinkerpop v3.7.x)
- GraphQL Language
- MongoDB Query Language
ArcadeDB key capabilities:
- 70+ Built-in Graph Algorithms — Pathfinding, centrality, community detection, link prediction, graph embeddings, and more — all available out of the box
- Parallel Query Execution — SQL queries leverage multiple CPU cores for faster execution on large datasets
- Materialized Views — Pre-computed query results stored and automatically maintained
- MCP Server — Built-in Model Context Protocol server for AI assistant and LLM integration
- AI Assistant — Integrated AI assistant in Studio (Beta) for query help and database management
- Geospatial Indexing — Native spatial queries and proximity searches with
geo.*SQL functions - TimeSeries — Columnar storage with Gorilla/Delta-of-Delta compression, InfluxDB/Prometheus ingestion, PromQL queries, Grafana integration
- Hash Indexes — Extendible hashing for faster exact-match lookups alongside LSM-Tree indexes
ArcadeDB can be used as:
- Embedded from any language on top of the Java Virtual Machine
- Embedded from Python via bindings: arcadedb-python-bindings
- Remotely by using HTTP/JSON
- Remotely by using a Postgres driver (ArcadeDB implements Postgres Wire protocol)
- Remotely by using a Redis driver (only a subset of the operations are implemented)
- Remotely by using a MongoDB driver (only a subset of the operations are implemented)
- By AI assistants via the built-in MCP Server (Model Context Protocol)
For more information, see the documentation.
Use Cases
Explore real-world examples in the arcadedb-usecases repository — self-contained projects with Docker Compose, SQL schemas, and runnable demos covering:
- Recommendation Engine — graph traversal + vector similarity + time-series
- Knowledge Graphs — co-authorship and citation networks with full-text search
- Graph RAG — retrieval-augmented generation with LangChain4j and Neo4j Bolt
- Fraud Detection — graph, vector, and time-series signals with Cypher
- Real-time Analytics — IoT and service monitoring with time-series
- Social Network Analytics — materialized view dashboards with polyglot queries
- Supply Chain — multi-tier visibility with PostgreSQL protocol and JavaScript
Getting started in 5 minutes
Start ArcadeDB Server with Docker:
--rm deletes the container's anonymous volumes with it, so the two named volumes keep the imported OpenBeer database
(databases) and the users, groups and API tokens the server writes at runtime (config) across runs. For a fresh start, remove
them with docker volume rm arcadedb-config arcadedb-databases.
Pass database settings in ARCADEDB_SETTINGS and any extra JVM flags in JAVA_OPTS: Docker replaces
an environment variable rather than appending to it, so keeping the two apart leaves the image's own
garbage collector and heap sizing (ARCADEDB_OPTS_GC and ARCADEDB_OPTS_MEMORY) intact. The heap is
sized as a percentage of the container memory limit, so docker run -m 512m and a multi-GB
production container both work without further tuning.
The image runs on Java 25, where server.sh also enables compact object headers (-XX:+UseCompactObjectHeaders),
after checking that the JVM accepts the flag (a bare distribution on Java 25 or later does the same); set
ARCADEDB_OPTS_HEADERS to override it, or to an empty value to opt out.
Now open your browser on http://localhost:2480 and play with ArcadeDB Studio and the
imported OpenBeer database to find your favorite beer.
ArcadeDB is cloud-ready with Docker and Kubernetes support.
You can also download the latest release, unpack it on your local hard drive and
start the server with bin/server.sh or bin/server.bat for Windows.
Releases
There are four variants of (about monthly) releases:
full- this is the complete package including all modulesminimal- this package excludes thegremlin,redisw,mongodbw,graphqlmodulesheadless- this package excludes thegremlin,redisw,mongodbw,graphql,studiomodulesbase- core engine, server, and network only — excludes all optional modules (console,gremlin,studio,redisw,mongodbw,postgresw,grpcw,graphql,metrics)
The nightly builds of the repository head can be found here.
You can also build a custom distribution with only the modules you need using the Custom Package Builder:
Available optional modules: console, gremlin, studio, redisw, mongodbw, postgresw, grpcw, graphql, metrics. The
builder supports interactive mode, Docker image generation, and offline builds from local Maven repositories.
An experimental GraalVM native-image build (fast startup, low RAM, no JVM required) is also available - see docs/native-image.md for prerequisites, the build/target matrix, and Docker usage.
Java Versions
Starting from ArcadeDB 24.4.1 code is compatible with Java 21.
Java 21 packages are available on Maven central and docker images on Docker Hub.
We also support Java 17 on a separate branch java17 for those who cannot upgrade to Java 21 yet through GitHub packages.
To use Java 17 inside your project, add the repository to your pom.xml and reference dependencies as follows:
Docker images are available on ghcr.io too:
Embedding Gremlin alongside the engine
Always use the shaded classifier for gremlin when embedding it, whether alongside
arcadedb-engine or on its own. Its ANTLR runtime is relocated into a private package, so it
never collides with the engine's ANTLR 4.13.2 on a shared classpath.
The plain arcadedb-gremlin jar resolves ANTLR to the engine's 4.13.2 (pulled transitively via
arcadedb-engine), which the engine's SQL/Cypher parsers require. TinkerPop's Gremlin
string-query parser ships a precompiled ANTLR 4.9.1 parser that only deserializes against the
relocated runtime inside the shaded jar, so the plain jar alone will not run Gremlin string
queries - use the shaded classifier.
Building and Testing
Build the entire project (skipping tests):
Build the Docker image (skipping tests):
Running Unit Tests:
Run the full unit test suite:
Some tests are tagged to indicate their cost:
slow- functional tests that take noticeably long (large batches, multi-second elapsed time, big payloads)benchmark- microbenchmarks not intended for regular CI runs; excluded by default (see below)
benchmark-tagged tests are excluded by default, so a plain mvn test already skips them. To also skip
slow tests and run only the fast ones:
To run only a specific tag (e.g. benchmark tests in isolation), clear the default exclusion or it cancels out the selection and nothing runs:
Running Integration Tests:
Run all the integration tests (requires Docker):
Run integration tests excluding the end-to-end, load, and HA tests:
Running End-to-End Tests:
All end-to-end tests (requires Docker):
Test Suites at a Glance
The codebase is covered by several complementary test suites, each with a distinct scope. The "CI" column says when each one runs; the scheduled ones have a status badge at the top of this page.
Community
Join our growing community around the world, for ideas, discussions and help regarding ArcadeDB.
- Chat live with us on Discord
- Follow us on Twitter
- or on Bluesky
- Connect with us on LinkedIn
- or on Facebook
- Questions tagged
#arcadedbon Stack Overflow - View our official Blog
Security
For security issues kindly email us at [email protected] instead of posting a public issue on GitHub.
License and Attribution
ArcadeDB is Free for any usage and licensed under the liberal Open Source Apache 2 license. We are committed to remaining Open Source Forever — see our Governance for the structural guarantees that make this more than a promise. If you need commercial support, or you need to have an issue fixed ASAP, check our pricing page.
For third-party attributions and copyright notices, see:
- NOTICE - Required legal attributions
- ATTRIBUTIONS.md - Detailed third-party acknowledgments
- LICENSE - Full license text
- GOVERNANCE.md - License guarantee and project governance
Thanks To
[Image] for providing YourKit Profiler to our committers.
Contributing
We would love for you to get involved with ArcadeDB project. If you wish to help, you can learn more about how you can contribute to this project in the contribution guide.
Have fun with data!
The ArcadeDB Team
Stargazers over time
[Stargazers over time]Source: README.md at commit 888b83c
Tools
0Version history
1- v26.3.1LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts