
Security News
Ruby's Bundler 4.0.18 Extends Cooldown to bundle lock and bundle cache
The supply chain control that delays freshly published gems now covers lockfile generation and gem vendoring in Ruby projects.
@vistal/mcp
Advanced tools
Zero-config MCP server for any database — point it at a DATABASE_URL and let coding agents (Claude Code) query it safely, no SQL and no code
Point it at a database URL. Claude talks to your data. No SQL, no code.
A zero-config MCP server for any database
vistal supports through Prisma
(PostgreSQL, MySQL, SQLite, SQL Server). Give it a DATABASE_URL and it:
prisma db pull) — no schema.prisma needed,No SQL ever reaches the model, and it can only do what the policy allows.
Add it to your .mcp.json — nothing to install or write:
{
"mcpServers": {
"db": {
"command": "npx",
"args": ["-y", "@vistal/mcp"],
"env": { "DATABASE_URL": "postgresql://user:pass@localhost:5432/mydb" }
}
}
}
That's it. Claude can now discover your tables (list_resources,
describe_resource) and read them (query, get, aggregate) — all
policy-gated, all without writing SQL.
You can also run it directly:
DATABASE_URL="postgresql://…" npx @vistal/mcp
# or pass the URL as the first argument
npx @vistal/mcp "postgresql://…"
query / get / aggregate are exposed —
never create / update / delete. Writes require a policy file (below).All via environment variables:
| Variable | Description |
|---|---|
DATABASE_URL | Connection string (required; or pass as the first arg). |
VISTAL_PROVIDER | postgresql | mysql | sqlite | sqlserver | mongodb. Inferred from the URL when omitted. |
VISTAL_TABLES | Comma-separated allow-list. Only these tables are exposed. |
VISTAL_EXCLUDE | Comma-separated deny-list, applied after the allow-list. |
VISTAL_POLICY_FILE | Path to a policy module that takes full control (enables writes — see below). |
VISTAL_CONTEXT | JSON policy context passed to your policy file. Defaults to {}. |
VISTAL_HTTP_PORT | Serve over Streamable HTTP on this port instead of stdio. |
For anything beyond read-only, point VISTAL_POLICY_FILE at a CommonJS module
that receives the configured vistal instance and declares
policies. It takes full
control of access (the allow/deny lists are then ignored):
// db-policy.cjs
module.exports = (vistal) => {
vistal.policy("orders", () => ({ read: true, write: true, delete: false }))
vistal.policy("users", () => ({ read: true, write: false, delete: false }))
}
{ "env": {
"DATABASE_URL": "postgresql://…",
"VISTAL_POLICY_FILE": "./db-policy.cjs"
} }
Use VISTAL_CONTEXT to feed runtime context (tenant, role, …) your policies read:
"VISTAL_CONTEXT": "{\"tenant\":{\"id\":\"acme\"}}".
Claude Code ─MCP─▶ @vistal/mcp
│ prisma db pull + generate → live schema + typed client
│ @vistal/core → policy engine (read-only default)
▼
@vistal/prisma → PrismaClient → your database
The generated client lives in a temp directory and is removed on shutdown; your project is never modified. Requires network access to the database and the ability to run the bundled Prisma CLI.
If you'd rather define your adapter and policies yourself and embed an MCP server
in your own app, use @vistal/mcp-sdk directly.
MIT
FAQs
Zero-config MCP server for any database — point it at a DATABASE_URL and let coding agents (Claude Code) query it safely, no SQL and no code
The npm package @vistal/mcp receives a total of 1 weekly downloads. As such, @vistal/mcp popularity was classified as not popular.
We found that @vistal/mcp demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
The supply chain control that delays freshly published gems now covers lockfile generation and gem vendoring in Ruby projects.

Security News
During a UK cyber test, a Mythos 5 agent used sockpuppets, social engineering, and prompt injection to try to get a maintainer to merge malware.

Company News
Socket is now in the AWS Security Hub Extended plan. Adopt it through AWS, apply committed spend, and block malicious open source packages.