- Reliability 5/20
- The README is internally consistent — the same nine tools appear in both stdio and HTTP modes, and the stdio/SSE/Streamable HTTP/REST access paths are described coherently, so nothing is visibly broken on paper. However, no source code, package manifest, tests, or CI workflows were provided, so the declared tool list cannot be verified against real behavior, and performance claims (up to 100x faster) are unverifiable marketing data. Under the static calibration, reliability cannot exceed 12 without execution evidence, and missing evidence is deducted rather than assumed in the best case, so the score sits near the lower end.
- Security and permissions 9/20
- No red line was triggered: install examples only contain placeholders (your_password, xxx, your-secret-key), the default 'safe' read-only mode explicitly blocks INSERT/UPDATE/DELETE/DROP, and dangerous 'full' mode requires an explicit flag. The README documents permission modes, permission types, data masking, transport-specific permission parameters, and security best practices, showing genuine least-privilege design intent. Deductions: enforcement cannot be verified without source (SQL write-blocking and masking logic may not work as claimed); the SSE example passes the DB password in a URL query string, risking leakage via access logs, proxies, or browser history; elevated modes lack a confirmation step for destructive operations; no row/column-level scoping or audit-log evidence; mandatory TLS for remote transports is not mentioned.
- Maintenance 10/20
- The project has an MIT license, is not archived, npm version/download badges imply published releases, and a CHANGELOG is referenced. Deductions: no release dates, commit history, or issue-response evidence was supplied; no security policy (SECURITY.md) or vulnerability-reporting channel is visible; dependency updates and CI status cannot be confirmed. The 900 stars are a discovery signal only and add no points per the evidence rules. This looks active but with governance and release-tracking gaps.
- Documentation 13/20
- The README is unusually layered and concrete: install commands, an exact Claude Desktop JSON config, HTTP-mode environment variables, endpoint tables with required headers, a 17-database table with types and default ports, permission-mode and transport-naming tables, 55+ platform integration guides, and a docs tree covering deployment, security, multi-tenancy, architecture, and troubleshooting. Deductions: individual MCP tool parameter schemas are absent from the README and only referenced in unprovided doc files; limitations (timeouts, result-size caps) and cost are not disclosed; the referenced docs were not provided and the README itself is untrusted evidence, so real depth cannot be verified.
- Setup experience 12/20
- On paper, setup is a clear few-step path: npm install -g universal-db-mcp, paste the provided JSON into claude_desktop_config.json, restart the client, and query; HTTP mode needs only two environment variables plus a health-check curl; SSE and Streamable HTTP connection examples are complete and cover mainstream clients. Deductions: per static calibration, setup cannot exceed 15 without committed CI/tests, and no execution evidence was provided at all; the 17-driver dependency footprint (especially Oracle/SQL Server native clients) could make real installs fragile; no package.json or bin entry was reviewable to confirm the npx command resolves.