{
  "markdown": "# ![ArcadeDB](https://arcadedb.com/assets/images/arcadedb-logo.png)\n\n<h2 align=\"center\">Multi Model DBMS Built for Extreme Performance</h2>\n\n<p align=\"center\">\n  <a href=\"https://github.com/ArcadeData/arcadedb/releases\"><img src=\"https://img.shields.io/github/v/release/arcadedata/arcadedb?color=%23ff00a0&include_prereleases&label=version&sort=semver\"></a>\n  &nbsp;\n  <a href=\"https://github.com/sponsors/ArcadeData\"><img src=\"https://img.shields.io/badge/Sponsor-%E2%9D%A4-e25555.svg\"></a>\n  &nbsp;\n  <a href=\"https://opensource.org/licenses/Apache-2.0\"><img src=\"https://img.shields.io/badge/License-Apache%202.0-green.svg\"></a>\n  &nbsp;\n  <a href=\"https://docs.oracle.org/en/java/21/\"><img src=\"https://img.shields.io/badge/Java-%3D21-green.svg\"></a>\n  &nbsp;\n  <a href=\"https://docs.oracle.org/en/java/17/\"><img src=\"https://img.shields.io/badge/Java-%3D17-green.svg\"></a>\n  &nbsp;\n  <a href=\"https://api.reuse.software/info/github.com/ArcadeData/arcadedb\"><img src=\"https://api.reuse.software/badge/github.com/ArcadeData/arcadedb\"></a>\n  &nbsp;\n  <a href=\"https://hub.docker.com/repository/docker/arcadedata/arcadedb/general\"><img src=\"https://img.shields.io/docker/pulls/arcadedata/arcadedb\"></a>\n  &nbsp;\n  <a href=\"https://deepwiki.com/ArcadeData/arcadedb\"><img src=\"https://deepwiki.com/badge.svg\" alt=\"Ask DeepWiki\"></a>\n  &nbsp;\n  <a href=\"bolt/conformance/COMPATIBILITY.md\"><img src=\"https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/ArcadeData/arcadedb/main/bolt/conformance/badge.json\" alt=\"Bolt drivers\"></a>\n  &nbsp;\n  <a href=\"https://github.com/ArcadeData/arcadedb/actions/workflows/mvn-deploy.yml\">\n    <img src=\"https://github.com/ArcadeData/arcadedb/actions/workflows/mvn-deploy.yml/badge.svg\">\n  </a>\n\n <a href=\"https://github.com/ArcadeData/arcadedb/actions/workflows/ha-resilience-tests.yml\">\n      <img src=\"https://github.com/ArcadeData/arcadedb/actions/workflows/ha-resilience-tests.yml/badge.svg\">\n    </a>\n <a href=\"https://github.com/ArcadeData/arcadedb/actions/workflows/load-tests.yml\">\n      <img src=\"https://github.com/ArcadeData/arcadedb/actions/workflows/load-tests.yml/badge.svg\">\n    </a>\n\n  <a href=\"https://codecov.io/github/ArcadeData/arcadedb\">\n   <img src=\"https://codecov.io/github/ArcadeData/arcadedb/graph/badge.svg?token=0690JAJHIO\"/>\n  </a>\n  &nbsp;\n  <a href=\"https://www.codacy.com/gh/ArcadeData/arcadedb/dashboard?utm_source=github.com&utm_medium=referral&utm_content=ArcadeData/arcadedb&utm_campaign=Badge_Coverage\">\n    <img src=\"https://app.codacy.com/project/badge/Coverage/1f971260db1e46638bd3fd91e3ebf668\">\n  </a>\n  &nbsp;\n  <a href=\"https://app.codacy.com/gh/ArcadeData/arcadedb?utm_source=github.com&utm_medium=referral&utm_content=ArcadeData/arcadedb&utm_campaign=Badge_Grade_Settings\">\n    <img src=\"https://api.codacy.com/project/badge/Grade/d40cc721f39b49eb81408307960f145b\">\n  </a>\n  &nbsp;\n  <a href=\"https://www.meterian.io/report/gh/ArcadeData/arcadedb\">\n    <img src=\"https://www.meterian.io/badge/gh/ArcadeData/arcadedb/security?branch=main\">\n  </a>\n  &nbsp;\n  <a href=\"https://www.meterian.io/report/gh/ArcadeData/arcadedb\">\n    <img src=\"https://www.meterian.io/badge/gh/ArcadeData/arcadedb/stability?branch=main\">\n  </a>\n</p>\n\n<p align=\"center\">\n  <a href=\"https://discord.gg/w2Npx2B7hZ\"><img width=\"208\" height=\"97\" src=\"https://arcadedb.com/assets/images/discord_button.png\" alt=\"Join Discord\"></a>\n</p>\n\n<p align=\"center\">\n\t<a href=\"https://github.com/arcadedata/arcadedb\"><img height=\"25\" src=\"studio/src/main/resources/static/images/social/github.svg\" alt=\"Github\"></a>\n\t&nbsp;\n  <a href=\"https://www.linkedin.com/company/arcadedb/\"><img height=\"25\" src=\"studio/src/main/resources/static/images/social/linkedin.svg\" alt=\"LinkedIn\"></a>\n  &nbsp;\n  <a href=\"https://bsky.app/profile/arcadedb.bsky.social\"><img height=\"25\" src=\"studio/src/main/resources/static/images/social/bluesky.svg\" alt=\"Bluesky\"></a>\n  &nbsp;\n  <a href=\"https://twitter.com/arcade_db\"><img height=\"25\" src=\"studio/src/main/resources/static/images/social/twitter.svg\" alt=\"Twitter\"></a>\n  &nbsp;\n  <a href=\"https://www.youtube.com/@ArcadeDB\"><img height=\"25\" src=\"studio/src/main/resources/static/images/social/youtube.svg\" alt=\"Youtube\"></a>\n  &nbsp;\n  <a href=\"https://discord.gg/w2Npx2B7hZ\"><img height=\"25\" src=\"studio/src/main/resources/static/images/social/discord.svg\" alt=\"Discord\"></a>\n  &nbsp;\n  <a href=\"https://stackoverflow.com/questions/tagged/arcadedb\"><img height=\"25\" src=\"studio/src/main/resources/static/images/social/stack-overflow.svg\" alt=\"StackOverflow\"></a>\n\t&nbsp;\n\t<a href=\"https://arcadedb.com/blog/\"><img height=\"25\" src=\"studio/src/main/resources/static/images/social/blog.svg\" alt=\"Blog\"></a>\n</p>\n\n\n\nArcadeDB is a Multi-Model DBMS created by Luca Garulli, the same founder\nof [OrientDB](https://github.com/orientechnologies/orientdb),\nafter SAP's acquisition. Written from scratch with a brand-new engine made of Alien Technology, ArcadeDB is able to crunch millions\nof records per second on common hardware with minimal resource usage. ArcadeDB reuses OrientDB's SQL engine (heavily modified) and\nsome utility classes. It's written in LLJ: Low Level Java - still Java21+ but only using low level APIs to leverage advanced\nmechanical sympathy techniques and reduce Garbage Collector pressure. Highly optimized for extreme performance, it runs\nfrom a Raspberry Pi to multiple servers on the cloud.\n\nArcadeDB is fully transactional DBMS with support for ACID transactions, structured and unstructured data, native graph engine (no\njoins but links between records), full-text indexing, geospatial querying, and advanced security.\n\nArcadeDB supports the following models:\n\n- [Graph Database](https://docs.arcadedb.com#graph-model) (compatible with Neo4j Cypher, Apache Tinkerpop Gremlin and OrientDB SQL)\n- [Document Database](https://docs.arcadedb.com#document-model) (compatible with the MongoDB driver + MongoDB queries and OrientDB\n  SQL)\n- [Key/Value](https://docs.arcadedb.com#keyvalue-model) (compatible with the Redis driver)\n- [Search Engine](https://docs.arcadedb.com/#searchengine-model)\n- [Time Series](https://docs.arcadedb.com/#timeseries-model) (with InfluxDB Line Protocol, Prometheus remote_write/read, and PromQL\n  support)\n- [Vector Embedding](https://docs.arcadedb.com/#vector-model)\n- [Geospatial](https://docs.arcadedb.com/#geospatial-model)\n\nArcadeDB understands multiple languages:\n\n- [SQL](https://docs.arcadedb.com#sql) (from OrientDB SQL)\n- Neo4j [Cypher (Open Cypher)](https://docs.arcadedb.com#cypher)\n- [Apache Gremlin (Apache Tinkerpop v3.7.x)](https://docs.arcadedb.com#gremlin-api)\n- [GraphQL Language](https://docs.arcadedb.com#graphql)\n- [MongoDB Query Language](https://docs.arcadedb.com#mongodb-query-language)\n\nArcadeDB key capabilities:\n\n- **70+ Built-in Graph Algorithms** — Pathfinding, centrality, community detection, link prediction, graph embeddings, and more —\n  all available out of the box\n- **Parallel Query Execution** — SQL queries leverage multiple CPU cores for faster execution on large datasets\n- **Materialized Views** — Pre-computed query results stored and automatically maintained\n- **MCP Server** — Built-in [Model Context Protocol](https://docs.arcadedb.com/#mcp-server) server for AI assistant and LLM\n  integration\n- **AI Assistant** — Integrated AI assistant in Studio (Beta) for query help and database management\n- **Geospatial Indexing** — Native spatial queries and proximity searches with `geo.*` SQL functions\n- **TimeSeries** — Columnar storage with Gorilla/Delta-of-Delta compression, InfluxDB/Prometheus ingestion, PromQL queries, Grafana\n  integration\n- **Hash Indexes** — Extendible hashing for faster exact-match lookups alongside LSM-Tree indexes\n\nArcadeDB can be used as:\n\n- Embedded from any language on top of the Java Virtual Machine\n- Embedded from Python via bindings: [arcadedb-embedded-python](https://github.com/humemai/arcadedb-embedded-python)\n- Remotely by using [HTTP/JSON](https://docs.arcadedb.com#http-json-api)\n- Remotely by using a [Postgres driver](https://docs.arcadedb.com#postgres-driver) (ArcadeDB implements Postgres Wire protocol)\n- Remotely by using a [Redis driver](https://docs.arcadedb.com#redis-query-language) (only a subset of the operations are\n  implemented)\n- Remotely by using a [MongoDB driver](https://docs.arcadedb.com#mongodb-query-language) (only a subset of the operations are\n  implemented)\n- By AI assistants via the built-in [MCP Server](https://docs.arcadedb.com/#mcp-server) (Model Context Protocol)\n\nFor more information, see the [documentation](https://docs.arcadedb.com).\n\n### Use Cases\n\nExplore real-world examples in the [arcadedb-usecases](https://github.com/ArcadeData/arcadedb-usecases) repository — self-contained\nprojects with Docker Compose, SQL schemas, and runnable demos covering:\n\n- **Recommendation Engine** — graph traversal + vector similarity + time-series\n- **Knowledge Graphs** — co-authorship and citation networks with full-text search\n- **Graph RAG** — retrieval-augmented generation with LangChain4j and Neo4j Bolt\n- **Fraud Detection** — graph, vector, and time-series signals with Cypher\n- **Real-time Analytics** — IoT and service monitoring with time-series\n- **Social Network Analytics** — materialized view dashboards with polyglot queries\n- **Supply Chain** — multi-tier visibility with PostgreSQL protocol and JavaScript\n\n### Getting started in 5 minutes\n\nStart ArcadeDB Server with Docker:\n\n```\ndocker run --rm -p 2480:2480 \\\n           -e ARCADEDB_SETTINGS=\"-Darcadedb.server.rootPassword=playwithdata -Darcadedb.server.defaultDatabases=Imported[root]{import:https://github.com/ArcadeData/arcadedb-datasets/raw/main/orientdb/OpenBeer.gz}\" \\\n           arcadedata/arcadedb:latest\n```\n\nPass database settings in `ARCADEDB_SETTINGS` and any extra JVM flags in `JAVA_OPTS`: Docker replaces\nan environment variable rather than appending to it, so keeping the two apart leaves the image's own\ngarbage collector and heap sizing (`ARCADEDB_OPTS_GC` and `ARCADEDB_OPTS_MEMORY`) intact. The heap is\nsized as a percentage of the container memory limit, so `docker run -m 512m` and a multi-GB\nproduction container both work without further tuning.\n\nNow open your browser on http://localhost:2480 and play with [ArcadeDB Studio](https://docs.arcadedb.com/#studio) and the\nimported `OpenBeer` database to find your favorite beer.\n\n![ArcadeDB Studio](https://arcadedb.com/assets/images/openbeer-demo-graph.png)\n\nArcadeDB is cloud-ready with [Docker](https://docs.arcadedb.com/arcadedb/how-to/operations/install-docker) and [Kubernetes](https://docs.arcadedb.com/arcadedb/how-to/operations/kubernetes)\nsupport.\n\nYou can also [download the latest release](https://github.com/ArcadeData/arcadedb/releases), unpack it on your local hard drive and\nstart the server with `bin/server.sh` or `bin/server.bat` for Windows.\n\n### Releases\n\nThere are four variants of (about monthly) releases:\n\n- `full` - this is the complete package including all modules\n- `minimal` - this package excludes the `gremlin`, `redisw`, `mongodbw`, `graphql` modules\n- `headless` - this package excludes the `gremlin`, `redisw`, `mongodbw`, `graphql`, `studio` modules\n- `base` - core engine, server, and network only — excludes all optional modules (`console`, `gremlin`, `studio`, `redisw`,\n  `mongodbw`, `postgresw`, `grpcw`, `graphql`, `metrics`)\n\nThe nightly builds of the repository head can be\nfound [here](https://central.sonatype.com/service/rest/repository/browse/maven-snapshots/com/arcadedb/arcadedb-package/).\n\nYou can also build a **custom distribution** with only the modules you need using\nthe [Custom Package Builder](https://docs.arcadedb.com/#custom-package-builder):\n\n```bash\ncurl -fsSL https://github.com/ArcadeData/arcadedb/releases/download/26.3.1/arcadedb-builder.sh | \\\n  bash -s -- --version=26.3.1 --modules=gremlin,studio\n```\n\nAvailable optional modules: `console`, `gremlin`, `studio`, `redisw`, `mongodbw`, `postgresw`, `grpcw`, `graphql`, `metrics`. The\nbuilder supports interactive mode, Docker image generation, and offline builds from local Maven repositories.\n\nAn experimental GraalVM **native-image** build (fast startup, low RAM, no JVM required) is also available - see\n[docs/native-image.md](docs/native-image.md) for prerequisites, the build/target matrix, and Docker usage.\n\n### Java Versions\n\nStarting from ArcadeDB 24.4.1 code is compatible with Java 21.\n\nJava 21 packages are available on [Maven central](https://repo.maven.apache.org/maven2/com/arcadedb/) and docker images\non [Docker Hub](https://hub.docker.com/r/arcadedata/arcadedb).\n\nWe also support Java 17 on a separate branch `java17` for those who cannot upgrade to Java 21 yet through GitHub packages.\n\nTo use Java 17 inside your project, add the repository to your `pom.xml` and reference dependencies as follows:\n\n```xml\n\n<repositories>\n    <repository>\n        <name>github</name>\n        <id>github</id>\n        <url>https://maven.pkg.github.com/ArcadeData/arcadedb</url>\n    </repository>\n</repositories>\n<dependencies>\n<dependency>\n    <groupId>com.arcadedb</groupId>\n    <artifactId>arcadedb-engine</artifactId>\n    <version>26.3.1-java17</version>\n</dependency>\n</dependencies>\n```\n\nDocker images are available on ghcr.io too:\n\n```shell\ndocker pull ghcr.io/arcadedata/arcadedb:26.3.1-java17\n```\n\n### Embedding Gremlin alongside the engine\n\nAlways use the `shaded` classifier for gremlin when embedding it, whether alongside\n`arcadedb-engine` or on its own. Its ANTLR runtime is relocated into a private package, so it\nnever collides with the engine's ANTLR 4.13.2 on a shared classpath.\n\nThe plain `arcadedb-gremlin` jar resolves ANTLR to the engine's 4.13.2 (pulled transitively via\n`arcadedb-engine`), which the engine's SQL/Cypher parsers require. TinkerPop's Gremlin\nstring-query parser ships a precompiled ANTLR 4.9.1 parser that only deserializes against the\nrelocated runtime inside the `shaded` jar, so the plain jar alone will not run Gremlin string\nqueries - use the `shaded` classifier.\n\n```xml\n<dependency>\n    <groupId>com.arcadedb</groupId>\n    <artifactId>arcadedb-engine</artifactId>\n    <version>26.8.1</version>\n</dependency>\n<dependency>\n    <groupId>com.arcadedb</groupId>\n    <artifactId>arcadedb-gremlin</artifactId>\n    <version>26.8.1</version>\n    <classifier>shaded</classifier>\n</dependency>\n```\n\n### Building and Testing\n\nBuild the entire project (skipping tests):\n\n```bash\nmvn clean install -DskipTests\n```\n\nBuild the Docker image (skipping tests):\n\n```bash\nmvn clean install -DskipTests -Pdocker\n```\n\n#### Running Unit Tests:\n\nRun the full unit test suite:\n\n```bash\nmvn test\n```\n\nSome tests are tagged to indicate their cost:\n\n- `slow` - functional tests that take noticeably long (large batches, multi-second elapsed time, big payloads)\n- `benchmark` - microbenchmarks not intended for regular CI runs; excluded by default (see below)\n\n`benchmark`-tagged tests are excluded by default, so a plain `mvn test` already skips them. To also skip\n`slow` tests and run only the fast ones:\n\n```bash\nmvn test -DexcludedGroups=\"slow,benchmark\"\n```\n\nTo run only a specific tag (e.g. benchmark tests in isolation), clear the default exclusion or it\ncancels out the selection and nothing runs:\n\n```bash\nmvn test -Dgroups=\"benchmark\" -DexcludedGroups=\n```\n\n#### Running Integration Tests:\n\nRun all the integration tests (requires Docker):\n\n```bash\nmvn verify -Pintegration\n```\n\nRun integration tests excluding the end-to-end, load, and HA tests:\n\n```bash\nmvn verify -Pintegration -pl !e2e,!load-tests,!e2e-ha\n```\n\n#### Running End-to-End Tests:\n\nAll end-to-end tests (requires Docker):\n\n```bash\nmvn verify -Pintegration -pl e2e,load-tests,e2e-ha\n```\n\n#### Test Suites at a Glance\n\nThe codebase is covered by several complementary test suites, each with a distinct scope:\n\n| Suite | How it runs | Scope |\n|-------|-------------|-------|\n| **Unit tests** | `mvn test` (`*Test`) | Fast, in-process tests of a single component in isolation: engine internals (storage, pages, WAL, indexes, serialization), query parsing and execution (SQL, Cypher, Gremlin, GraphQL), schema, graph traversals, and security. The bulk of coverage; no external services required. Tagged `slow`/`benchmark` tests can be excluded. |\n| **Integration tests** | `mvn verify -Pintegration` (`*IT`) | Tests spanning multiple components or a running server within the same JVM/module: HTTP/REST API, wire protocols (Postgres, MongoDB, Redis, Bolt, gRPC), cross-module behavior, and embedded multi-server clustering. Some require Docker. |\n| **End-to-end (`e2e`)** | `mvn verify -Pintegration -pl e2e` | Black-box tests against a real ArcadeDB server in a Docker container (Testcontainers), exercising it the way external clients do: JDBC/Postgres queries, the remote Java API, server-side JavaScript functions, and the Bolt and gRPC drivers. |\n| **Load tests (`load-tests`)** | `mvn verify -Pintegration -pl load-tests` | Throughput and stability under sustained concurrent workloads against single-server and three-node clusters in containers, including high-volume document and time-series ingestion. Verifies no data loss or corruption under contention. |\n| **HA end-to-end (`e2e-ha`)** | `mvn verify -Pintegration -pl e2e-ha` | Resilience and correctness of the high-availability (Raft) cluster under failure: leader failover, rolling restarts, split-brain, network partitions/delay/packet loss, replication convergence, and cluster-wide operations (backup/restore, import, drop database, user management). Uses Testcontainers and fault injection (Toxiproxy). |\n| **Python client (`e2e-python`)** | `cd e2e-python && pytest tests/` | Verifies the Postgres wire protocol against real Python clients (`psycopg2`, `asyncpg`) and the SQLAlchemy ORM, running against a server in a Docker container (Testcontainers). |\n| **JavaScript client (`e2e-js`)** | `cd e2e-js && npm install && npm test` | Verifies Node.js client compatibility over the Bolt (`neo4j-driver`) and Postgres (`pg`) protocols, running against a server in a Docker container (Jest + Testcontainers). |\n| **C# client (`e2e-csharp`)** | `cd e2e-csharp/ArcadeDB.E2ETests && dotnet test` | Verifies the Postgres wire protocol against a .NET client (`Npgsql`), running against a server in a Docker container (xUnit + Testcontainers). |\n\n\n### Community\n\nJoin our growing community around the world, for ideas, discussions and help regarding ArcadeDB.\n\n- Chat live with us on [Discord](https://discord.gg/w2Npx2B7hZ)\n- Follow us on [Twitter](https://twitter.com/arcade_db)\n- or on [Bluesky](https://bsky.app/profile/arcadedb.bsky.social)\n- Connect with us on [LinkedIn](https://www.linkedin.com/products/arcadedb)\n- or on [Facebook](https://www.facebook.com/arcadedb)\n- Questions tagged `#arcadedb` on [Stack Overflow](https://stackoverflow.com/questions/tagged/arcadedb)\n- View our official [Blog](https://arcadedb.com/blog/)\n\n### Security\n\nFor security issues kindly email us at support@arcadedb.com instead of posting a public issue on GitHub.\n\n### License and Attribution\n\nArcadeDB is Free for any usage and licensed under the liberal [Open Source Apache 2 license](LICENSE). We are committed to remaining\n**Open Source Forever** — see our [Governance](GOVERNANCE.md) for the structural guarantees that make this more than a promise. If\nyou need commercial support, or you need to have an issue fixed ASAP, check our [pricing page](https://arcadedb.com/pricing.html).\n\nFor third-party attributions and copyright notices, see:\n\n- [NOTICE](NOTICE) - Required legal attributions\n- [ATTRIBUTIONS.md](ATTRIBUTIONS.md) - Detailed third-party acknowledgments\n- [LICENSE](LICENSE) - Full license text\n- [GOVERNANCE.md](GOVERNANCE.md) - License guarantee and project governance\n\n### Thanks To\n\n<a href=\"https://www.yourkit.com\"><img src=\"https://www.yourkit.com/images/yklogo.png\"></a> for providing YourKit Profiler to our\ncommitters.\n\n### Contributing\n\nWe would love for you to get involved with ArcadeDB project.\nIf you wish to help, you can learn more about how you can contribute to this project in the [contribution guide](CONTRIBUTING.md).\n\nHave fun with data!\n\nThe ArcadeDB Team\n\n## Stargazers over time\n\n[![Stargazers over time](https://starchart.cc/ArcadeData/arcadedb.svg?variant=adaptive)](https://starchart.cc/ArcadeData/arcadedb)\n",
  "bytes": 20303,
  "sha": "ff1c16145aaec53dce45826eff13237706ca551e63b6d2bff98347fa40771909",
  "repo_slug": "arcadedata/arcadedb",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_com_arcadedb_mcp_server_5e43c955/readme"
}