2 min di lettura

Chi siamo e Architettura

PgArachne™ funge da server web leggero e ad alte prestazioni che si interpone tra i tuoi client HTTP e il database PostgreSQL. Elimina la necessità di linguaggi backend tradizionali (come Python, Node.js o PHP) mappando le richieste HTTP direttamente alle funzioni del database.

Capacità Tecniche Principali

  • Gateway JSON-RPC 2.0: Tutte le interazioni API seguono la rigorosa specifica JSON-RPC 2.0. Non ci sono endpoint REST da progettare; chiami semplicemente le funzioni SQL per nome tramite richieste POST.
  • Autenticazione Nativa DB: Nessuna tabella utenti separata. Gli utenti accedono con le loro reali credenziali PostgreSQL per ricevere un JWT. In alternativa, gli account di servizio possono utilizzare Token API persistenti.
  • Mascheramento dei Ruoli: PgArachne™ si connette come utente proxy ma esegue ogni richiesta utilizzando SET LOCAL ROLE per passare all’identità dell’utente autenticato. La sicurezza a livello di riga (Row-Level Security – RLS) funziona automaticamente.
  • MCP (Model Context Protocol): Un endpoint MCP nativo consente ai client IA come Claude Desktop, Cursor e altri strumenti MCP-compatibili di scoprire e chiamare le tue funzioni PostgreSQL direttamente come strumenti — senza alcun codice di collegamento aggiuntivo. Si applica la stessa autenticazione e sicurezza dei ruoli. Tramite MCP vengono esposti anche le risorse (tabelle/viste) e i modelli di prompt.
  • Notifiche in tempo reale (SSE): Iscriviti ai canali PostgreSQL NOTIFY via SSE per aggiornamenti live senza polling.
  • Server di File Statici: PgArachne™ può servire asset statici (HTML, JS, CSS), consentendoti di ospitare Single Page Application (SPA) o lo strumento Explorer direttamente.

Questa architettura semplifica drasticamente lo stack: Database ↔ PgArachne ↔ Frontend/Agente IA.

Struttura degli endpoint: Tutti gli endpoint del database condividono un prefisso comune (predefinito db, configurabile tramite API_PREFIX):
POST /{prefisso}/{database}/jsonrpc — gateway JSON-RPC 2.0
GET  /{prefisso}/{database}/sse    — stream PostgreSQL NOTIFY
POST /{prefisso}/{database}/mcp   — Model Context Protocol

Visualizza Dettagli Decisioni Architetturali