Skip to main content
Glama

TestGraph

Experimenteller KI-nativer Erfahrungsgraph für geteiltes, überprüfbares Gedächtnis über KI-Assistenten hinweg.

Status: working vorab release research system. Die Architektur und die MCP-Workflows wurden mit mehreren KI-Clients erprobt, aber das Projekt wird noch nicht als stabiler Produktionsdienst oder API bereitgestellt.

TestGraph speichert menschliche Bewertungen und KI-abweichende Strukturen als dauerhaftes Graphwissen, während Beweise, Quelle und serverseitig überprüfbarer Ablauf getrennt von den Modellannahmen gehalten werden. Es ist so konzipiert, dass verschiedene KI-Systeme zum gleichen Wissen beitragen und es wiederverwenden können, ohne dass vorab ein vollständiges Domänschema erforderlich ist.

Projektziele

  1. Schema-Entstehung: Geben Sie mehreren KIs unerfahrene Erfahrungen und erhalten Sie eine nützliche Struktur, ohne die Kategorien vorher zu entwerfen.

  2. Gesteuerte Diskrepanz: Konkfliktierende Klassifikationen konvergieren durch die Analyse von Beweisen und durch Server-Steuerung, anstatt Hin-und-Her zu wechseln.

  3. Wahrheitsgetreue Ausführung: Modelle können nicht behaupten, dass Discovery, Anreicherung oder Abgleich stattgefunden haben, wenn der Server es nicht bestätigen kann.

  4. Übergeordnete Wie: TestGraph nutzt die aufrufende KI bewusst als seine semantische und Entdeckungs-Engine. Die KI soll ihre verfügbaren Denk-, Abruf- und Werkzeugfähigkeiten auf unbesprochene Themen anwenden, Strukturen und Beziehungen ableiten und Beweise harmonisieren, ohne dass TestGraph die domänspezifische Form vorgibt. TestGraph stellt die stabilen Graph-Präprodukte, Persistenz und Serversseitige Verifizierung; Eine aufrufende KI trägt die offene Intelligenz.

Diese Ziele sind Abnahme-Kriterien für TestGraph’s Architektur und die zugrundeliegende Architektur, nicht weniger instruction für einzelne KI-Clients.

Related MCP server: Graph-Mem MCP

Standard-Wörterbuchmodell

  • Reviews werden gegen stabile IDs gespeichert, nicht gegen D verpasste Standort-Pfade. Flexible Eingabe wird über mehrere Standard-Typen und globale Aliase identischen; Schreibweise, Satzzeichen, Besitzform und normale Pluralformen werden automatisch normalisiert. Unbekannte können Typen nach einer Zuführung von Wörterbuch-Kandidaten erstellt werden.

  • Klassifizierung ist eigene Metadaten. z., ferry gehört zu transportation, ergibt ein kombinierbares Filtersystem für typisierte Reviews, behindert aber nicht den Bereich, in wuw ein ERP-Typ gespeichert wird. review ist der Rekordtyp, kein Vokabular-Knoten. Wiederverwendbare Strukturwerte haben eigene IDs und Aliase und sind an mehreren Subjekttypen anbringbar.

  • Migration 0009_flat_standard_vocabulary verwirft bewusst die alten v2-Konzept-/Review-Daten, erhält aber Benutzer, OAuth-Zustand, Fähigkeiten-Schlüssel und die benutzereigene Zugangsdaten unbeeinflusst.

Lokales Setup

  1. Python 3.11+ Virtualenv erstellen.

  2. Dependencies installieren.

pip install -r requirements.txt
  1. .env.example nach .env kopieren und jeden Platzhalter-Secret-Wertpunkte A ersetzen.

  2. Migrationen anwenden.

alembic upgrade head
  1. Schemas und Demozugänge bereitstellen.

python -m scripts.seed
  1. Anwendungsstart.

python run.py

Öffnen Sie http://127.0.0.1:8000 und http://127.0.0.1:8000/docs.

Duplikate von Beispiel-, Entwicklungs- und System-Zugangs zum ersten Mal mit anderen Zielgerichts. Als – TOKEN, API-Keys, OAuth-Verbindungscodes und Owner-Kennungen dürfen nie ins Git-Repository festgelegt werden.

MCP und OAuth

TestGraph beinhaltet derzeit eine Tool-MCP-App. Der Multi-Modell-Integrationsfluss wird über /mcp-v2 ausgeführt. Die Produktionsverbindung verwendet OAuth 2.1 Authorization Code + PKCE. Ein verbundener KI erhält ein kurzlebiges Token mit definierten Berechtigungen; er bekommt keine Verbindungscodes, API-Key oder TestGraph-Owner-Id.

Die MCP-Oberfläche enthält der Mitgliedsfunktionen Suchen/Abrufen/Speichern für Reviews und die neueren Graph-/Verarbeitungsfunktionen für Multi-Modell-Experimente. Die bereitgestellte MCP-Schema ist der Maßstab, sie ist permanent unvoll.

Vor einer Produktion werden Sie eine lange variable OAUTH_CONNECTION_CODESetzen Sie den korrekten OAUTH_OWNER_USER_ID und vermeiden Sie, dass die Produktions-Secrets nur in dem Umgebung bleiben.

Import der Verweil-UCI-Rezept Reviews

Nach der Migration und dem Aufruf python -m scripts.seed führen Sie folgenden Check durch:

python -m scripts.import_uci_recipe_reviews --representative-reviews 100 --load

Dieses lädt den CC BY 4.0 UCI-Datensatz herunter und sucht aus jedem der 100 Rezepte eine dichte Rezension aus. Es schreibt die konvertierten Daten nach data/uci_recipe_reviews_100.json und setzt sie in der DB. Der Start ist gefahrlos: Bereits vorhandene Ids verhindern Duplikate.

Der Review-Text selbst, 0-5-Sterne-Wertung, Zeitstempel, Votes, Quellen-Id, Lizenz und Attribution werden in Provenance-Einträgen abgelegt. Der Import beinhaltet Auswertung von Aussagen zu Geschmack, Rezeptionsniveau, Timing, Zutatenverfügbarkeit, Schwierigkeit, Wiederholbarkeit und Modifikationen. Jede Zeile hat eine zugehörige Quelle; Unbelegtes bleibt darauf null.

Um die bereits vorhandene ohne zusätzlichen Netzwerkrundruf zu verwenden:

python -m scripts.import_uci_recipe_reviews --load-bundle data/uci_recipe_reviews_100.json

Entwicklung-Version Löschung

Eine Implementierungs-Lösch-Seite ist verfügbar unter /devdemo/reset. Sie ist geschützt und klein; bei Aufruf wird nur unter injektiver Freischaltung eine Anfrage akzeptiert.

ENABLE_DEVELOPMENT_RESET=true

Die Seite löscht alle v1-v2-Kennwerte und Wissensdaten zurück, während Benutzerdaten, OAuth - komplexes Verknüpfungen und Capability-Schlüssel beibehalten werden. Diese Seite muss in einer normalen Bereitstellung für die Production die Empfehlung nicht aktiv sein.

Tests

pytest -q

Ein Fortschritt darf nur ausgeliefert werden, wenn die gesamte Testsuite für den Release-Stand läuft und der Release-Check RELEASE_CHECKLIST.md zufriedenstellend bestanden ist.

Railway- Deploy

  1. Das Git-Repository an GitHub pushen.

  2. Railway-Projekt aus dem GitHub-Repo erstellen.

  3. PostgreSQL hinzufügen.

  4. Dafür die DATABASE_URL des Postgres-Dienstes angeben; keine entwickelte URL als String verwenden.

  5. Product. Variablen mit eindeutigen zufälligen Tokens:

ENVIRONMENT=production
APP_SECRET=<random secret>
DEVELOPMENT_API_KEY=<long random key; development/admin use only>
CLIENT_API_KEYS={}
OAUTH_OWNER_USER_ID=<owner UUID>
OAUTH_CONNECTION_CODE=<long random connection code>
PUBLIC_BASE_URL=https://<your-domain>
ALLOWED_HOSTS=["<your-domain>","<railway-domain>"]
CORS_ORIGINS=["https://<your-domain>"]
ENABLE_DEVELOPMENT_RESET=false

railway.json steuert Migrationen vor Deploy, Uvicorn start using Railway's $PORT, und den Start Gesundheitsstatus unter /health/ready.

Die app wandelt Railway's postgresql:// in SQLAlchemy's postgresql+psycopg:// um, weil sie die Psycopg 3 collection. In einer Produktion mit nicht resolberner Datenbank wird der Prozess gestoppt, und nicht unaufgefordet Fallback zu SQLite.

Umsetzung Architektur

Kurzangezüge GPT Exception. SampleMereIt may be.

  • Calling-AI wird als eigener semantischer- und Entdecken-Engine mit Server-Verifizierung und der Persistenz-Server betrieben

  • Fest definierte flache Subjekt-ID

  • Einheitliche Benennung und Alias–Geltung

  • Semantisch anstatt linearer Storage-Beziehungen

  • Versionsk ан style Schema-registry

  • mDB-Independent Py-Validation (JSON/JSONB)

  • Berechtigungsfluss mit Versionsnummer

  • Begrenzte Client Priviligen

  • Zentral festgelegte Lesebedingungen

  • Korrekte Auflösung von Metabereichen

  • OAuth 2.1 Authorization Code + PKCE, Dynamic Client Provisioning, Token-Rotation und Scope-Level-API-Zugriff

  • Ein MCP-Endpunkt für autorisierte KI-Anbindung

  • Idempotent – Zustandsbeleg ohne Seiteneffekte

  • Provenance+, Konsentum, Owner und Sichtbarkeit

  • Reviewer/Reader-Relankspairing und spezifische Relevanzscore

  • Audit-Log und Soft-Delete

  • Request-IDs, konsistente JSON-Fehler, Request-Anzahl-Begrenzung und paginations-fähige Serveranbindung

  • Alembic-Migrationen

  • SQLite lokal, PostgreSQL in Production

  • Cross-Model-Abgleich

Verhaltensregeln für sichere Aufrufe und Bearbeitung

  • Public Listen zeigen nur Folk-Live- und öffentliche Einträge.

  • exact IDs können auch eine öffentliche unlisted-Ressource abrufen.

  • Drafts und private Communityseiten erfordern entsprechende Sichtbarkeitsgrade.

  • Aggregierte Videos id werden nie reducir.

  • Vor Submit müssen mügliche Objekte korrekt aufgelöst sein.

  • Protective Versioning durch Algorithmen.

  • Optionale Client-Credentials müssen den Zustand zu vermeiden und die Grenzen überwachen.

Lizenz

TestGraph ist unter der GNU Affero General Public License v3.0 (AGPL-3.0) freigegeben. Siehe LICENSE.

AGPL-3.0 erlaubt Nutzung, Bearbeitung und Verteilung gemessen unter den Abschnitten, beinhaltet die Server-Source-Lesen bei solchen weitergegebenen Versionen.

VerGewisse Aspekteund. Für alternative Kommerzielle License-Modelle gibt es duke.

Derbei testgraph@mail`, firmiert Chat: Alternatives Gatlin, verweisenções أم er.

Anbit informieren. Alle Angaben-Parks, siehe CONTRIBUTING.md.

Befor you make public

Prior to any public release, use handouts RELEASE_CHECKLIST.md dan SECURITY.md. Besonders safe: GeksCheck, InnenCheck, public Mausfall, alle Testnr at, release and instantiation zwecks „er ka“ mit Datei. Check expected launch version.

Before making the repository public

Führen Sie RELEASE_CHECKLIST.md und SECURITY.md aus, insbesondere die investigation of old Secrets ,(Clearly see all files with Secret-Editor)**, confirm non-check electron quiet*. Run image: run the whole check.

A
license - permissive license
Not graded
quality - not tested
A
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
2Releases (12mo)
Commit activity

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    A graph-based MCP server that provides AI coding agents with persistent memory to store patterns, track complex relationships, and retrieve knowledge across sessions. It leverages graph structures to handle temporal queries and relational paths that traditional vector stores often miss.
    234
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    A universal MCP server providing persistent, structured memory through a knowledge graph with graph storage, semantic vector search, and multi-hop traversal for AI agents and IDEs.
    1
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    MCP server providing persistent AI memory with four-tier retrieval (SQLite FTS5, graph, vector, LLM agent) to give AI assistants structured, long-term memory without RAG.
    1
    Apache 2.0
  • F
    license
    Not graded
    quality
    B
    maintenance
    A self-hosted, temporal knowledge-graph memory for AI coding agents — shared across projects, queryable across time, written and read via MCP by any Claude Code session.

View all related MCP servers

Related MCP Connectors

  • Shared, governed long-term memory for AI agents across tools and sessions via MCP and REST.

  • Your memory, everywhere AI goes. Build knowledge once, access it via MCP anywhere.

  • AI Agent with Architectural Memory. Impact analysis (free), tests and code from the graph (pro).

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/BBCBasic/TestGraph'

If you have feedback or need assistance with the MCP directory API, please join our Discord server