Ü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 ROLEaus, 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
NOTIFYKanä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