// the find
centralmind/gateway
Universal MCP-Server for your Databases optimized for LLMs and AI-Agents.
centralmind/gateway connects your database to AI agents by generating a REST or MCP server from your schema — you point it at Postgres, MySQL, ClickHouse, etc., and it produces parameterized endpoints with Swagger docs. The LLM runs once at discovery time to produce a YAML config; after that the gateway just executes the pre-generated SQL. It's aimed at anyone building agentic workflows that need structured data access without writing a custom API layer.
The separation between the LLM-heavy discovery phase and the runtime serving phase is sound engineering — you're not paying token costs on every query, and the generated YAML is auditable and version-controllable. The plugin architecture is genuinely extensible: PII redaction, LRU caching, OpenTelemetry tracing, OAuth, and Lua-based row-level security are all first-class and composable. The database coverage is unusually wide for a project this size — Postgres, MySQL, ClickHeel, Snowflake, BigQuery, DuckDB, Oracle, SQLite, Elasticsearch, MongoDB all have dedicated connector directories with integration tests. Go binary distribution via Docker or goreleaser keeps the ops story simple.
Write operations (INSERT/UPDATE/DELETE) are explicitly on the roadmap but not yet implemented, so this is currently read-only — that's a hard stop for any agent that needs to mutate data. The LLM-generated SQL is fixed at discovery time; there's no mechanism for agents to construct ad-hoc queries at runtime, which limits usefulness for exploratory analytical workloads where the agent would naturally want to filter and aggregate dynamically. The PII redaction via regex is easy to misconfigure — a wrong pattern silently passes through sensitive data with no indication it was missed, and the Presidio integration requires running a separate Python service which adds infrastructure burden. The project is still pre-1.0 with active roadmap gaps, and the YAML config schema isn't formally versioned, so you can expect breaking changes.