mcpField
A
ArcadeDB MCP Server

ArcadeDB MCP Server

ローカル
github.com/ArcadeDataデータベース1.2k今日更新

ArcadeDB MCP Server について

ArcadeDB MCP Serverは、ArcadeDBに組み込まれたMCPインターフェースです。グラフ、ドキュメント、ベクトル、時系列データを扱うチーム向けのトランザクション型マルチモデルデータベースで、AIアシスタントやLLMから利用できます。

主な機能

  1. 01トランザクション型マルチモデルデータベース
  2. 02グラフ、ドキュメント、キー・バリュー、ベクトルモデル
  3. 03SQL、Cypher、Gremlin、GraphQL対応
  4. 04全文検索と地理空間クエリ
  5. 05組み込みMCPサーバー

活用シーン

  1. 01AIアシスタントからArcadeDBへの接続
  2. 02グラフアプリケーションやナレッジグラフの構築
  3. 03時系列分析の実行
  4. 04グラフ探索とベクトル類似度の併用

MCP 対応

ArcadeDBは、AIアシスタントやLLMとの連携向けにModel Context Protocolサーバーを内蔵しています。READMEにはツールやトランスポートの詳細は記載されていません。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"com-arcadedb": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"docker.io/arcadedata/arcadedb:26.4.1-SNAPSHOT"
]
}
}
}
起動コマンドdocker run -i --rm docker.io/arcadedata/arcadedb:26.4.1-SNAPSHOT

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocidocker.io/arcadedata/arcadedb:26.4.1-SNAPSHOT

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

ArcadeDB

極めて高いパフォーマンスを実現するマルチモデル DBMS

README の画像   README の画像   README の画像   README の画像   README の画像   README の画像   README の画像   DeepWiki に質問   Bolt ドライバー   README の画像 README の画像   README の画像   README の画像   README の画像   README の画像

テストスイート実行頻度ステータス
Java CI - テストmainへのプッシュごとJava CI - テスト
HA統合テスト(Raft、組み込み)毎日HA統合テスト(Raft、組み込み)
HA耐障害性テスト(Docker、障害注入)毎日HA耐障害性テスト(Docker、障害注入)
HAカオステスト(ランダムな障害、60分)毎週HAカオステスト(ランダムな障害、60分)
負荷テスト毎日負荷テスト
Boltドライバーバージョンマトリックス毎日Boltドライバーバージョンマトリックス
ネイティブイメージのビルド毎日ネイティブイメージのビルド
ベンチマーク毎週ベンチマーク

Discordに参加

GitHub   LinkedIn   Bluesky   Twitter   YouTube   Discord   StackOverflow   ブログ

ArcadeDB は、Luca Garulli が開発したマルチモデル DBMS です。同氏は [SAP による買収](https://github.com/orientechnologies/orientdb)後の OrientDB の創設者でもあります。 Alien Technology で構成されたまったく新しいエンジンを用いて一から開発された ArcadeDB は、一般的なハードウェア上で、リソース使用量を最小限に抑えながら毎秒数百万件のレコードを処理できます。ArcadeDB は OrientDB の SQL エンジン(大幅に変更)と一部のユーティリティクラスを再利用しています。LLJ(Low Level Java)で記述されています。Java 21 以降を使用していますが、高度なメカニカルシンパシー技術を活用し、ガベージコレクターへの負荷を軽減するために、低レベル API のみを使用しています。極めて高いパフォーマンスを実現するよう最適化されており、Raspberry Pi からクラウド上の複数のサーバーまで動作します。

ArcadeDB は完全なトランザクション対応 DBMS で、ACID トランザクション、構造化データと非構造化データ、ネイティブのグラフエンジン(結合ではなくレコード間のリンクを使用)、全文検索インデックス、地理空間クエリ、高度なセキュリティをサポートしています。

ArcadeDB は次のモデルをサポートしています。

ArcadeDB は複数の言語に対応しています。

ArcadeDB の主な機能:

  • 70 種類以上の組み込みグラフアルゴリズム — 経路探索、中心性、コミュニティ検出、リンク予測、グラフ埋め込みなどを、すべてすぐに利用できます
  • 並列クエリ実行 — SQL クエリで複数の CPU コアを活用し、大規模なデータセットをより高速に処理します
  • マテリアライズドビュー — クエリ結果を事前に計算して保存し、自動的に維持します
  • MCP サーバー — AI アシスタントや LLM との連携に対応した、組み込みのModel Context Protocolサーバー
  • AI アシスタント — クエリの支援やデータベース管理に役立つ、Studio に統合された AI アシスタント(ベータ版)
  • 地理空間インデックス — geo.* SQL 関数を使用したネイティブの空間クエリと近接検索
  • 時系列 — Gorilla/Delta-of-Delta 圧縮を使用した列指向ストレージ、InfluxDB/Prometheus からのデータ取り込み、PromQL クエリ、Grafana 連携
  • ハッシュインデックス — LSM-Tree インデックスに加え、拡張可能ハッシュを使用して完全一致検索を高速化

ArcadeDB は次の方法で使用できます。

  • Java 仮想マシン上で、あらゆる言語から組み込みで使用
  • arcadedb-python-bindingsのバインディングを使って Python に組み込みで使用
  • HTTP/JSONを使用してリモートから使用
  • Postgres ドライバーを使用してリモートから使用(ArcadeDB は Postgres Wire プロトコルを実装しています)
  • Redis ドライバーを使用してリモートから使用(実装されているのは操作の一部のみです)
  • MongoDB ドライバーを使用してリモートから使用(実装されているのは操作の一部のみです)
  • 組み込みのMCP サーバー(Model Context Protocol)を介して AI アシスタントから使用

詳しくは、ドキュメントをご覧ください。

ユースケース

arcadedb-usecasesリポジトリで、実際のユースケースをご覧ください。Docker Compose、SQLスキーマ、実行可能なデモを含む自己完結型のプロジェクトで、次の内容を取り上げています。

  • レコメンデーションエンジン — グラフ走査+ベクトル類似度+時系列
  • ナレッジグラフ — 全文検索を備えた共著・引用ネットワーク
  • グラフ RAG — LangChain4j と Neo4j Bolt を使った検索拡張生成
  • 不正検知 — Cypher によるグラフ、ベクトル、時系列シグナル
  • リアルタイム分析 — 時系列を使った IoT とサービスの監視
  • ソーシャルネットワーク分析 — ポリグロットクエリを使ったマテリアライズドビューのダッシュボード
  • サプライチェーン — PostgreSQL プロトコルと JavaScript による多階層の可視化
5 分で始める

Docker で ArcadeDB Server を起動します。

docker run --rm -p 2480:2480 \
           -v arcadedb-config:/home/arcadedb/config \
           -v arcadedb-databases:/home/arcadedb/databases \
           -e ARCADEDB_SETTINGS="-Darcadedb.server.rootPassword=playwithdata -Darcadedb.server.defaultDatabases=Imported[root]{import:https://github.com/ArcadeData/arcadedb-datasets/raw/main/orientdb/OpenBeer.gz}" \
           arcadedata/arcadedb:latest

--rm はコンテナとともに匿名ボリュームを削除するため、名前付きボリューム 2 つを使うと、インポート済みの OpenBeer データベース(databases)と、サーバーが実行時に書き込むユーザー、グループ、API トークン(config)を実行間で保持できます。新しく始める場合は、docker volume rm arcadedb-config arcadedb-databases で削除してください。

データベース設定は ARCADEDB_SETTINGS に、追加の JVM フラグは JAVA_OPTS に渡してください。Docker は環境変数に値を追加せず置き換えるため、この 2 つを分けておけば、イメージ独自のガベージコレクターとヒープサイズ設定(ARCADEDB_OPTS_GC と ARCADEDB_OPTS_MEMORY)が維持されます。ヒープサイズはコンテナのメモリ制限に対する割合で決まるため、追加の調整なしで docker run -m 512m と数 GB の本番コンテナの両方で動作します。 イメージは Java 25 で動作します。このバージョンでは、server.sh は JVM がフラグに対応していることを確認したうえで、コンパクトオブジェクトヘッダー(-XX:+UseCompactObjectHeaders)も有効にします(Java 25 以降の標準ディストリビューションでも同様です)。これを上書きするには ARCADEDB_OPTS_HEADERS を設定します。無効にするには空の値を設定してください。

ブラウザーで http://localhost:2480 を開き、ArcadeDB Studio とインポート済みの OpenBeer データベースを使って、お気に入りのビールを探してみましょう。

ArcadeDB Studio

ArcadeDB は Docker と Kubernetes に対応しており、クラウドですぐに利用できます。

最新リリースをダウンロードして、ローカルのハードドライブに展開し、bin/server.sh または Windows 用の bin/server.bat でサーバーを起動することもできます。

リリース

(約月 1 回の)リリースには、次の 4 種類があります。

  • full - すべてのモジュールを含む完全なパッケージです
  • minimal - gremlin、redisw、mongodbw、graphql モジュールを除外したパッケージです
  • headless - gremlin、redisw、mongodbw、graphql、studio モジュールを除外したパッケージです
  • base - コアエンジン、サーバー、ネットワークのみを含み、すべてのオプションモジュール(console、gremlin、studio、redisw、 mongodbw、postgresw、grpcw、graphql、metrics)を除外します

リポジトリの最新コミットをもとにしたナイトリービルドは、 こちらでご覧いただけます。

カスタムパッケージビルダーを使って、必要なモジュールだけを含むカスタムディストリビューションをビルドすることもできます。

curl -fsSL https://github.com/ArcadeData/arcadedb/releases/download/26.3.1/arcadedb-builder.sh | \
  bash -s -- --version=26.3.1 --modules=gremlin,studio

利用可能なオプションモジュール:console、gremlin、studio、redisw、mongodbw、postgresw、grpcw、graphql、metrics。ビルダーは、対話モード、Docker イメージの生成、ローカルの Maven リポジトリを使ったオフラインビルドに対応しています。

実験的な GraalVM native-image ビルド(高速起動、低 RAM、JVM 不要)も利用できます。前提条件、ビルドとターゲットの対応表、Docker の使用方法については、docs/native-image.mdをご覧ください。

Java バージョン

ArcadeDB 24.4.1 以降のコードは Java 21 と互換性があります。

Java 21 のパッケージは Maven central で、Docker イメージは Docker Hub で入手できます。

まだ Java 21 にアップグレードできない方向けに、GitHub パッケージを通じて、別のブランチ java17 で Java 17 もサポートしています。

プロジェクト内で Java 17 を使用するには、リポジトリを pom.xml に追加し、次のように依存関係を指定します。


<repositories>
    <repository>
        <name>github</name>
        <id>github</id>
        <url>https://maven.pkg.github.com/ArcadeData/arcadedb</url>
    </repository>
</repositories>
<dependencies>
<dependency>
    <groupId>com.arcadedb</groupId>
    <artifactId>arcadedb-engine</artifactId>
    <version>26.3.1-java17</version>
</dependency>
</dependencies>

Docker イメージは ghcr.io でも入手できます。

docker pull ghcr.io/arcadedata/arcadedb:26.3.1-java17
エンジンとともに Gremlin を組み込む

arcadedb-engine とともに組み込む場合でも、単独で組み込む場合でも、Gremlin には必ず shaded classifier を使用してください。ANTLR ランタイムはプライベートなパッケージに再配置されるため、共有クラスパス上でエンジンの ANTLR 4.13.2 と競合することはありません。

通常の arcadedb-gremlin jar は、エンジンの SQL/Cypher パーサーが必要とするエンジンの 4.13.2(arcadedb-engine 経由で推移的に取得されます)に ANTLR を解決します。TinkerPop の Gremlin 文字列クエリパーサーには、再配置されたランタイムに対してのみデシリアライズされる、事前コンパイル済みの ANTLR 4.9.1 パーサーが含まれています。そのため、通常の jar だけでは Gremlin 文字列クエリを実行できません。shaded classifier を使用してください。

<dependency>
    <groupId>com.arcadedb</groupId>
    <artifactId>arcadedb-engine</artifactId>
    <version>26.8.1</version>
</dependency>
<dependency>
    <groupId>com.arcadedb</groupId>
    <artifactId>arcadedb-gremlin</artifactId>
    <version>26.8.1</version>
    <classifier>shaded</classifier>
</dependency>
ビルドとテスト

テストをスキップしてプロジェクト全体をビルドします。

mvn clean install -DskipTests

テストをスキップして Docker イメージをビルドします。

mvn clean install -DskipTests -Pdocker
単体テストの実行:

単体テスト一式をすべて実行します。

mvn test

一部のテストには、実行コストを示すタグが付いています。

  • slow - 実行にかなり時間がかかる機能テスト(大規模なバッチ、数秒に及ぶ実行時間、大きなペイロード)
  • benchmark - 通常の CI 実行を想定していないマイクロベンチマーク。デフォルトでは除外されます(以下を参照)。

benchmark タグ付きのテストはデフォルトで除外されるため、通常の mvn test でもスキップされます。slow テストもスキップして高速なテストのみを実行するには、次のようにします。

mvn test -DexcludedGroups="slow,benchmark"

特定のタグのみを実行する場合(例:benchmark テストのみを単独で実行する場合)は、デフォルトの除外設定を解除してください。解除しないと選択が相殺され、何も実行されません。

mvn test -Dgroups="benchmark" -DexcludedGroups=
統合テストの実行:

統合テストをすべて実行します(Docker が必要です)。

mvn verify -Pintegration

エンドツーエンド、負荷、HA テストを除外して統合テストを実行します。

mvn verify -Pintegration -pl !e2e,!load-tests,!e2e-ha
エンドツーエンドテストの実行:

エンドツーエンドテストをすべて実行します(Docker が必要です)。

mvn verify -Pintegration -pl e2e,load-tests,e2e-ha
テストスイートの概要

コードベースは、対象範囲がそれぞれ異なる複数の相補的なテストスイートでカバーされています。「CI」列には各スイートの実行タイミングが記載されています。スケジュール実行されるスイートには、このページの上部にステータスバッジがあります。

テストスイート実行方法CI範囲
ユニットテストmvn test (*Test)すべての PR単一のコンポーネントを分離した状態で実行する、高速なインプロセステストです。エンジン内部(ストレージ、ページ、WAL、インデックス、シリアライズ)、クエリの解析と実行(SQL、Cypher、Gremlin、GraphQL)、スキーマ、グラフのトラバーサル、セキュリティを対象とします。カバレッジの大部分を占め、外部サービスは不要です。CI では JUnit タグごとにレーンを分けます。slow(長時間の機能テスト)と vector(LSM ベクトルインデックスの再構築)はそれぞれ専用のレーンで実行し、benchmark はデフォルトで除外します。
統合テストmvn verify -Pintegration (*IT)すべての PR同じ JVM/モジュール内の複数のコンポーネント、または稼働中のサーバーにまたがるテストです。HTTP/REST API、ワイヤープロトコル(Postgres、MongoDB、Redis、Bolt、gRPC)、モジュール間の動作を対象とします。一部のテストでは Docker が必要です。
HA 統合テスト(ha-raft)mvn verify -Pintegration -pl ha-raft毎日1 つの JVM 内で起動する複数サーバーの Raft 高可用性クラスターを対象に、レプリケーション、リーダー選出、スキーマとセキュリティの伝播、スナップショットのインストール、遅れているフォロワーの追いつきをテストします。実行時間が長いため、PR パイプラインから分離されています。
エンドツーエンドテスト(e2e)mvn verify -Pintegration -pl e2eすべての PRDocker コンテナ内の実際の ArcadeDB サーバー(Testcontainers)に対するブラックボックステストです。外部クライアントと同じ方法で、JDBC/Postgres クエリ、リモート Java API、サーバー側 JavaScript 関数、Bolt および gRPC ドライバーを使用してテストします。
負荷テスト(load-tests)mvn verify -Pintegration -pl load-tests毎日コンテナ内の単一サーバーおよび 3 ノードクラスターに対して、継続的な同時ワークロードを実行した場合のスループットと安定性をテストします。大量のドキュメントおよび時系列データの取り込みも対象です。競合状態でもデータの損失や破損がないことを検証します。
HA エンドツーエンドテスト(e2e-ha)mvn verify -Pintegration -pl e2e-ha毎日スクリプト化された障害発生時の Raft クラスターの回復性と正確性をテストします。リーダーのフェイルオーバー、ローリング再起動、スプリットブレイン、ネットワークの分断/遅延/パケット損失、レプリケーションの収束、クラスター全体の操作(バックアップ/復元、インポート、データベースの削除、ユーザー管理)を対象とします。Testcontainers と障害注入(Toxiproxy)を使用します。
HA カオステスト(HaChaosIT)mvn verify -Pintegration -pl e2e-ha -Dit.test=HaChaosIT -Dfailsafe.excludedGroups=毎週コンテナ化されたクラスターに対する、長時間(デフォルトで 60 分)のランダム化テストです。シード値を指定したスケジューラーが障害(強制終了、停止、ローリング再起動、一時停止、分離、分断、レイテンシ、パケット損失、60 秒以上フリーズしたフォロワーが Raft ストレージの再フォーマットなしで復旧すること)を注入する間、同時書き込みを実行します。各ステップの後、確認応答済みのすべての書き込みが全レプリカに反映されていることを検証します。各実行ではシード値が出力されるため、-Dchaos.seed=... を指定して失敗を再現できます。-Dchaos.nodes、-Dchaos.duration、-Dchaos.faults、-Dchaos.writers で調整できます。chaos タグが付いているため、通常の e2e-ha 実行ではスキップされます。
ベンチマークmvn verify -Dgroups=benchmark -DexcludedGroups=毎週マイクロベンチマークと比較実行(@Tag("benchmark"))です。測定を行いますが、アサーションは行いません。他のすべての実行では除外されます。
Python クライアント(e2e-python)cd e2e-python && pytest tests/すべての PRDocker コンテナ内のサーバーに対して、実際の Python クライアント(psycopg2、asyncpg)と SQLAlchemy ORM を使用した Postgres ワイヤープロトコル、および公式の neo4j ドライバーを使用した Bolt プロトコルを検証します(Testcontainers)。
JavaScript クライアント(e2e-js)cd e2e-js && npm install && npm testすべての PRDocker コンテナ内のサーバーに対して、Bolt(neo4j-driver)および Postgres(pg)プロトコル経由の Node.js クライアントの互換性を検証します(Jest + Testcontainers)。
C# クライアント(e2e-csharp)cd e2e-csharp/ArcadeDB.E2ETests && dotnet testすべての PRDocker コンテナ内のサーバーに対して、.NET から Postgres ワイヤープロトコル(Npgsql)および Bolt プロトコル(平文および TLS の Neo4j.Driver)を検証します(xUnit + Testcontainers)。
Go クライアント(e2e-go)cd e2e-go && go test ./...すべての PRDocker コンテナ内のサーバーに対して、公式の neo4j-go-driver を使用し、平文および TLS で Bolt との適合性を検証します。他のクライアントテストスイートと同様に、共通のシナリオ仕様 bolt/conformance/spec.yaml を実装しています。
Bolt ドライバーマトリックスbolt-nightly.yml ワークフロー毎日JavaScript、Python、C#、Go の各テストスイートで Bolt テストを再実行し、各公式ドライバーの複数のリリースバージョンを対象に検証した結果を COMPATIBILITY.md に公開します。
Studio(e2e-studio)cd e2e-studio && npm install && npm testすべての PRPlaywright を使用して Studio の Web UI をブラウザーでテストします。データベースの作成、クエリとグラフ、グラフビュー(スタイル、コンテキストメニュー、エクスポート)、テーブルビュー、ベクトル検索を対象とします。
コミュニティ

ArcadeDB に関するアイデア、ディスカッション、サポートを求めて、世界中で広がるコミュニティにぜひご参加ください。

  • Discord でリアルタイムにチャットしましょう
  • Twitter をフォローしてください
  • または Bluesky でフォローしてください
  • LinkedIn でつながりましょう
  • または Facebook でつながりましょう
  • Stack Overflow で #arcadedb タグの付いた質問をご覧ください
  • 公式 ブログ をご覧ください
セキュリティ

セキュリティ上の問題については、GitHub で公開の issue を投稿する代わりに、[email protected] までメールでご連絡ください。

ライセンスと帰属表示

ArcadeDB はあらゆる用途で無料で使用でき、寛容な オープンソース Apache 2 ライセンスの下でライセンスされています。私たちは 永続的なオープンソースであり続けることをお約束します。単なる約束にとどまらない構造的な保証については、ガバナンスをご覧ください。 商用サポートが必要な場合や、問題を ASAP で修正する必要がある場合は、料金ページをご確認ください。

サードパーティの帰属表示と著作権表示については、以下をご覧ください。

  • NOTICE - 必須の法的帰属表示
  • ATTRIBUTIONS.md - サードパーティへの詳細な謝辞
  • LICENSE - ライセンス全文
  • GOVERNANCE.md - ライセンスの保証とプロジェクトのガバナンス
謝辞

README の画像 を提供してくださった YourKit Profiler に感謝します。私たちのコミッターが利用しています。

貢献

ArcadeDB プロジェクトへのご参加を心よりお待ちしています。 ご協力いただける場合は、貢献ガイドでプロジェクトへの貢献方法をご確認ください。

データを楽しみましょう!

ArcadeDB チーム

スターゲイザーの推移

スターゲイザーの推移

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。