mcpField
H
Hypabase

Hypabase

ローカル
github.com/hypabaseデータベース1429 週間前に更新

Hypabase について

Hypabaseは、SQLiteに永続化するPython製ハイパーグラフライブラリです。知識グラフやAIエージェントの記憶向けに、複数ノード間の関係を出典と確信度とともに扱えます。

主な機能

  1. 01ハイパーエッジで多ノード関係を表現
  2. 02出典と確信度を記録
  3. 03ローカルSQLiteに永続化
  4. 04出典と確信度による検索
  5. 05名前空間によるデータ分離
  6. 06メモリーMCPサーバーとCLI

活用シーン

  1. 01セッションをまたぐエージェント記憶の保存
  2. 02複数の実体を含む臨床イベントの表現
  3. 03RAG用の抽出関係の保存

MCP 対応

7つのツールを備えたメモリーMCPサーバーが含まれ、MCPクライアントから永続的な構造化記憶を利用・管理できます。

設定

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

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

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

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

詳細

Hypabase

CI PyPI Python License Downloads

プロベナンスと SQLite 永続化に対応した Python ハイパーグラフライブラリです。

インストール

uv add hypabase

クイック例

from hypabase import Hypabase

hb = Hypabase("my.db")

# One edge connecting five entities
hb.edge(
    ["dr_smith", "patient_123", "aspirin", "headache", "mercy_hospital"],
    type="treatment",
    source="clinical_records",
    confidence=0.95,
)

# Query edges involving a node
hb.edges(containing=["patient_123"])

# Find paths between entities
hb.paths("dr_smith", "mercy_hospital")

機能

  • ハイパーエッジ — 1つの関係で2つ以上のノードを接続します
  • プロベナンス — すべてのエッジが source と confidence を持ちます
  • SQLite 永続化 — データはローカルファイルに自動的に保存されます
  • O(1) 頂点集合検索 — ノードの正確な集合を基にエッジを検索します
  • 名前空間の分離 — 1つのファイル内でスコープを限定したビューを利用する .database("name")
  • プロベナンスクエリ — source と min_confidence でフィルタリングし、sources() で要約します
  • メモリ MCP サーバー — AI エージェントの永続メモリ向けの7つのツール(remember、recall、forget、consolidate、connections、who_knows_what、resolve_contradiction)
  • CLI — hypabase init、hypabase node、hypabase edge、hypabase query

プロベナンス

すべてのエッジが source と confidence を持ちます。

hb.edge(
    ["patient_123", "aspirin", "ibuprofen"],
    type="drug_interaction",
    source="clinical_decision_support_v3",
    confidence=0.92,
)

# Bulk provenance via context manager
with hb.context(source="schema_analysis", confidence=0.9):
    hb.edge(["a", "b"], type="fk")
    hb.edge(["b", "c"], type="fk")

# Query by provenance
hb.edges(source="clinical_decision_support_v3")
hb.edges(min_confidence=0.9)

# Overview of all sources
hb.sources()

名前空間の分離

1つのファイル内でデータを別々の名前空間に分離します。

hb = Hypabase("knowledge.db")

drugs = hb.database("drugs")
sessions = hb.database("sessions")

drugs.node("aspirin", type="drug")
sessions.node("s1", type="session")

drugs.nodes()     # -> [aspirin]
sessions.nodes()  # -> [s1]

ハイパーグラフとは?

通常のグラフでは、エッジはちょうど2つのノードを接続します。ハイパーグラフでは、ハイパーエッジと呼ばれる1つのエッジで、任意の数のノードを同時に接続できます。

医療上の出来事を考えてみましょう。*Smith 医師が Mercy Hospital で、頭痛のある患者123にアスピリンを処方します。*従来のグラフでは、これを医師と患者、医師と薬、患者と病院という二項エッジに分割します。その結果、それらが1つの出来事に属するという事実は構造ではなく推論になります。ハイパーグラフでは、これをネイティブに格納し、5つのエンティティすべてを1つのエッジで接続します。

現実世界の関係には、2つを超える要素が関わることが多いため、これは重要です。論文には著者が1人ではなく3人または4人います。取引には、買い手、売り手、製品、決済方法が関わります。化学反応には、反応物と生成物の両方が関わります。これらをペアに押し込めると、そのまとまりは暗黙的になります。

なぜプロベナンスが必要なのですか?

関係が手動入力、LLM による抽出、センサーデータ、臨床記録など、異なるソースから得られる場合、それぞれの出所と信頼度を把握する必要があります。Hypabase は、すべてのエッジに2つのフィールドを持たせることでこれを追跡します。source(出所を示す文字列)と confidence(0から1までの浮動小数点数)です。これらのフィールドでクエリをフィルタリングし、hb.sources() を使ってグラフ内のすべてのソースの概要を取得できます。

ハイパーグラフの活用例
  • ナレッジグラフ — 複雑な現実世界の関係を分解せずに表現します
  • エージェントメモリ — セッションをまたいで保持される、AI エージェント向けの構造化されたクエリ可能なメモリです
  • 生物医学データ — 薬物相互作用、臨床イベント、分子経路
  • RAG パイプライン — 検索拡張生成で取得する関係を保存します
  • サプライチェーン、コラボレーションネットワークなど、2つを超える要素が関わるあらゆる関係

この幅広い考え方は、AGI 向けの知識表現にハイパーグラフに類似した構造を使う OpenCog の AtomSpace など、AI 研究における長い歴史に根ざしています。近年の研究では、検索と推論にハイパーグラフが特化して適用されています。

  • HyperGraphRAG — 医学、農業、コンピューターサイエンス、法律にわたる n 項知識検索
  • Cog-RAG — テーマレベルとエンティティレベルの想起を組み合わせた、二重ハイパーグラフ検索
  • Hypergraph Memory for Multi-step RAG — 長文脈の関係モデリングに向けた、ハイパーグラフベースのメモリ

MCP サーバー

Hypabase には、AI エージェントが構造化された永続メモリとして利用できる、7 つのツールを備えた Memory MCP サーバーが含まれています。Claude Code、Claude Desktop、Cursor、Windsurf、および MCP 互換のあらゆるクライアントで動作します。

uv add hypabase
hypabase-memory

CLI

uv add hypabase
hypabase init
hypabase node dr_smith --type doctor
hypabase edge dr_smith patient_123 aspirin --type treatment --source clinical_records
hypabase query --containing dr_smith
hypabase stats

ドキュメント

docs.hypabase.app

ライセンス

Apache 2.0

コメント

MCP は初めてですか?

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

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