2 Min. Lesezeit

Über & Architektur

PgArachne™ dient als leichter, hochleistungsfähiger Webserver, der zwischen Ihren HTTP-Clients und der PostgreSQL-Datenbank sitzt. Es eliminiert die Notwendigkeit für traditionelle Backend-Sprachen (wie Python, Node.js oder PHP), indem HTTP-Anfragen direkt auf Datenbankfunktionen abgebildet werden.

Wichtige technische Fähigkeiten

  • JSON-RPC 2.0 Gateway: Alle API-Interaktionen folgen der strengen JSON-RPC 2.0-Spezifikation. Es müssen keine REST-Endpunkte entworfen werden; Sie rufen SQL-Funktionen einfach per Namen über POST-Anfragen auf.
  • Native DB-Authentifizierung: Keine separaten Benutzertabellen. Benutzer melden sich mit ihren echten PostgreSQL-Anmeldeinformationen an, um ein JWT zu erhalten. Alternativ können Service-Konten persistente API-Token verwenden.
  • Rollen-Maskierung: PgArachne™ verbindet sich als Proxy-Benutzer, führt aber jede Anfrage mit SET LOCAL ROLE aus, um zur Identität des authentifizierten Benutzers zu wechseln. Row-Level Security (RLS) funktioniert automatisch.
  • MCP (Model Context Protocol): Ein nativer MCP-Endpunkt ermöglicht KI-Clients wie Claude Desktop, Cursor und anderen MCP-kompatiblen Tools, Ihre PostgreSQL-Funktionen direkt als Tools zu entdecken und aufzurufen — ohne jeglichen Verbindungscode. Dieselbe Authentifizierung und Rollensicherheit gilt. Über MCP werden auch Ressourcen (Tabellen/Views) und Prompt-Vorlagen bereitgestellt.
  • Echtzeit-Benachrichtigungen (SSE): Abonnieren Sie PostgreSQL NOTIFY Kanäle über SSE für Live-Updates ohne Polling.
  • Server für statische Dateien: PgArachne™ kann statische Assets (HTML, JS, CSS) bereitstellen, sodass Sie Single Page Applications (SPAs) oder das Explorer-Tool direkt hosten können.

Diese Architektur vereinfacht den Stack drastisch: Datenbank ↔ PgArachne ↔ Frontend/KI-Agent.

Endpunkt-Struktur: Alle Datenbank-Endpunkte teilen ein gemeinsames Präfix (Standard db, konfigurierbar über API_PREFIX):
POST /{prefix}/{datenbank}/jsonrpc — JSON-RPC 2.0 Gateway
GET  /{prefix}/{datenbank}/sse    — PostgreSQL NOTIFY Stream
POST /{prefix}/{datenbank}/mcp   — Model Context Protocol

Detaillierte Architektur-Entscheidungen anzeigen