Read-only PostgreSQL access for an AI agent. Nine tools, 182 tests, writes refused three separate times.
npx postgres-schema-mcp
Or install the attached .mcpb bundle in a desktop client that prefers a single file. It carries its own dependencies and prompts for the connection string rather than having it pasted into a config file.
Changes since 0.1.0
Both binaries now answer --help and --version before reading any configuration. In 0.1.0 there was no argument handling, so --help fell through to the config loader and replied "DATABASE_URL is required", which reads as a broken package rather than as a server waiting to be told where its database is.
Each binary describes only its own settings: the stdio help does not mention tokens, and the HTTP help does, along with the command that generates one.
Eighteen new tests. The help tests run with a deliberately emptied environment, so a regression cannot hide behind a DATABASE_URL that happens to be set on the machine running them. One asserts the version matches across package.json, the MCP handshake and the bundle manifest, since three different consumers read it and nothing else keeps them in step.
Setting it up
Do not point this at a superuser. The README has the GRANT statements for a role that can only read.