Skip to main content
Glama
yashdhingra0

uniquery

by yashdhingra0

UniQuery

Stellen Sie Ihre Datenbankfragen in einfachem Englisch – von jedem MCP-Client oder über die Web-UI.

UniQuery verbindet sich im Nur-Lese-Modus mit einer Postgres- oder MongoDB-Datenbank und stellt sie als Agent für natürliche Sprachabfragen bereit. Es bietet zwei Zugänge zu derselben Engine: einen MCP-Server, der in Claude Desktop, Claude Code, Cursor oder jeden anderen MCP-Client integriert werden kann, und eine Next.js-Web-App zum Erkunden von Ergebnissen mit Diagrammen.

Der interessante Teil ist nicht der Schritt von natürlicher Sprache zu SQL – viele Tools können das. Es ist das, was darum herum passiert: PII-Maskierung, bevor Zeilen das Modell erreichen, harte Begrenzungen für Zeilenanzahl und Query-Timeouts, Durchsetzung des Nur-Lese-Modus am Connector und ein semantischer Schema-Speicher, damit der Agent mit der Zeit besser mit Ihrem Schema arbeitet.

Architektur

apps/
  web/                 Next.js 16 + React 19 + Recharts UI
packages/
  core/                The engine — connectors, agent loop, guardrails, viz
    connectors/        Postgres (Neon serverless / pg) and MongoDB, read-only
    agent/             Tool-calling loop over Vercel AI Gateway / Google Gemini
    guardrails/        PII masking + row/timeout clamps
    semantic/          Schema knowledge store with SQL migrations
    viz/               Result-shape classifier that picks a chart type
  mcp-server/          MCP server exposing core over @modelcontextprotocol/sdk

Related MCP server: Vela MCP Server

Schutzmechanismen

Das ist der Grund, warum dies mehr als eine Demo ist:

Schutzmechanismus

Verhalten

Nur-Lese-Zugriff

Connectors führen niemals Schreibvorgänge aus, unabhängig davon, was das Modell generiert

PII-Maskierung

Spalten, die auf email, ssn, phone, dob, credit_card, cvv, passport, api_key, password und ähnliche Namen passen, werden innerhalb der Agent-Tools geschwärzt – maskierte Werte erreichen niemals den LLM-Kontext. Zusätzliche Spalten können manuell markiert werden

Zeilenlimit-Begrenzung

Jede Anfrage wird auf [1, 1000] Zeilen begrenzt, egal was der Agent oder MCP-Client verlangt

Timeout-Begrenzung

Jede Abfrage wird auf [1s, 30s] begrenzt

Zod-validierte Tools

MCP-Tool-Eingaben werden schema-geprüft, bevor sie einen Connector berühren

MCP-Server

Der MCP-Server registriert drei Tools:

  • connectDatabase – registrieren Sie eine Postgres- oder MongoDB-Verbindung unter einer von Ihnen gewählten connectionId

  • askQuestion – stellen Sie eine Frage in natürlicher Sprache an eine registrierte Verbindung; gibt eine Markdown-Tabelle plus eine vorgeschlagene Visualisierung zurück

  • plus ein Tool zur Auflistung von Verbindungen, um zu sehen, was registriert ist

Ergebnisse werden als Markdown-Tabellen (auf 50 Zeilen für die Anzeige begrenzt) mit einem angehängten Diagrammvorschlag – bar, line, table oder none – zurückgegeben, der aus der Form des Ergebnisses abgeleitet wird und nicht vom Modell geraten wird.

Konfiguration in einem MCP-Client

{
  "mcpServers": {
    "uniquery": {
      "command": "node",
      "args": ["/path/to/uniquery/packages/mcp-server/dist/index.js"]
    }
  }
}

Dann, im Client:

Verbinden Sie sich mit meiner Postgres unter postgres://… als analytics, und sagen Sie mir dann, welche fünf Kunden im letzten Quartal den meisten Umsatz erzielt haben.

Erste Schritte

Erfordert Node.js >= 20 und pnpm 11.

pnpm install
pnpm build

# web app
pnpm dev

# MCP server
node packages/mcp-server/dist/index.js

Kopieren Sie .env.example in .env.local und füllen Sie Ihre Datenbank-URL und einen LLM-Schlüssel aus – entweder einen Vercel AI Gateway-Schlüssel (Standard) oder einen Google Gemini-Schlüssel mit provider: "google".

Technologie-Stack

TypeScript · pnpm workspaces · Model Context Protocol SDK · Vercel AI SDK 6 · Google Gemini · Neon serverless Postgres · MongoDB · Zod · Next.js 16 · Recharts · Vitest

Status

Funktionierender Prototyp. Die Engine, die Schutzmechanismen und der MCP-Server sind funktionsfähig; die Web-App deckt den Kernablauf von Abfrage und Diagramm ab.

Lizenz

MIT

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    A
    quality
    C
    maintenance
    Enables read-only exploration and querying of PostgreSQL or MySQL databases via MCP, with schema discovery, safe SQL validation, natural language to SQL conversion, and CSV export.
    11
    1
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables governed, agent-agnostic data exploration by allowing users to ask natural language questions through MCP-compatible agents, executing safe, permission-scoped queries against data sources and returning interactive charts.
    48
    Apache 2.0
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables natural language querying of SQL databases and REST APIs through the MCP protocol, grounded in a semantic layer.
    2,309
    1
    AGPL 3.0
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables read-only access to company data across PostgreSQL, MongoDB Atlas, and flat files through MCP tools, allowing AI assistants to query and retrieve information via natural language.

View all related MCP servers

Related MCP Connectors

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/yashdhingra0/uniquery'

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