← Back to directory
COMPARE UP TO 4 SERVERS

Compare MCP servers

Compare scores, permissions, risks, and fit in one decision-focused table.

DimensionMemory VaultSelf-hosted AI memory database with hybrid search, MCP tools, and a knowledge graph.MCP Toolbox for DatabasesGoogle's official database MCP toolbox — define AI-accessible database tools via config
FMRS56 / 100 · C74 / 100 · B
Reliability9 / 2013 / 20
Security and permissions12 / 2013 / 20
Maintenance11 / 2017 / 20
Documentation14 / 2016 / 20
Setup experience10 / 2015 / 20
Best for
  • Individual developers who want memory data fully self-hosted and never sent to the cloud
  • Users already comfortable operating PostgreSQL
  • People who want cross-session memory in Claude Desktop or Claude Code
  • Builders layering memory under their own AI tooling without maintaining a separate vector database (single instance)
  • Teams that want precise control over which database operations an AI can perform, rather than open arbitrary SQL execution
  • Scenarios needing a unified MCP setup across multiple database engines
Not for
  • Organizations needing multi-user or multi-tenant team collaboration (v1.0 is single-instance; team features are planned PRO)
  • Users who want a zero-ops hosted service
  • Projects requiring multilingual entity extraction (NER is English-only)
  • Anyone unwilling to run and maintain PostgreSQL
  • Deployments expecting transport encryption to come from the server itself (you must add a reverse proxy or tunnel)
  • Lightweight cases that just want to run a few ad-hoc SQL queries without maintaining a tools.yaml config (a simpler single-database MCP may be a better fit)
Required permissions
  • Read/write access to the PostgreSQL database (DB_USER needs read/write on the memory vault database)
  • The database password (DB_PASSWORD is a secret value)
  • In stdio mode, a local process that reads environment variables and connects to the database
  • When HTTP/SSE is enabled, a listening port plus bearer token validation on every request
  • The dashboard stores its bearer token in browser localStorage
  • Database credentials (username/password/connection string) are supplied via env vars or config
  • A tool's actual permission is whatever SQL statement is defined in tools.yaml — designed for least privilege, but misconfiguration can still over-expose access
Risks and side effects
  • With stdio, database credentials sit in plaintext in the client config's env block
  • The HTTP/SSE transport has no transport encryption of its own; tokens travel in a header, so put TLS in front of it
  • Publishing the container port on 0.0.0.0 reaches the whole network
  • API_AUTH_ENABLED=false only opens the REST API (the MCP transport still returns 401) and is a local-development convenience only
  • Known knowledge-graph limits: no fuzzy entity matching (PostgreSQL and Postgres stay separate), no re-extraction on edit, and one name can appear as both a Person and a Project entity
  • Single-maintainer project — reviews and responses depend on the maintainer's available time
  • If tools.yaml defines SQL statements that allow unconstrained writes or deletes, the AI could accidentally modify data
  • The prebuilt toolsets (--prebuilt) favor convenience and may expose broader query capability than a specific business actually needs — use a custom tools.yaml in production
Supported clientsClaude Desktop, Claude CodeClaude Code, Gemini CLI, Zed, Antigravity
Tools60