Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Database Server

БесплатноНе проверен

An extensible MCP server for database operations that supports PostgreSQL for managing schemas, tables, data, and user permissions. It features automatic migrat

GitHubEmbed

Описание

An extensible MCP server for database operations that supports PostgreSQL for managing schemas, tables, data, and user permissions. It features automatic migration recording for DDL changes and integrates with various AI-powered editors like Cursor, Zed, and Claude Code.

README

MCP server for database operations. Supports PostgreSQL, MySQL, and SQLite with a unified interface and multi-database architecture.

Requirements

  • Node.js >= 18
  • At least one of: PostgreSQL, MySQL, or SQLite

Installation

npm install

Configuration

Multi-Database Support

This server supports managing multiple databases simultaneously. Instead of environment variables, databases are configured in databases.json:

cp databases.example.json databases.json
# Edit databases.json with your connections

databases.json structure:

Field Description
name Unique identifier for the database
description Optional description
connectionString Connection string (format depends on dbType)
dbType Database type: postgres, mysql, or sqlite
enabled Optional boolean, defaults to true. Set false to disable
readonly Optional boolean, defaults to false. Block all write operations

Example:

[
  {
    "name": "production",
    "description": "Main production database",
    "connectionString": "postgresql://user:pass@prod-host:5432/prod_db",
    "dbType": "postgres",
    "enabled": true
  },
  {
    "name": "mysql_prod",
    "description": "MySQL production database",
    "connectionString": "mysql://user:pass@mysql-host:3306/prod_db",
    "dbType": "mysql",
    "enabled": false
  },
  {
    "name": "local_sqlite",
    "description": "Local SQLite file",
    "connectionString": "/home/user/data/app.db",
    "dbType": "sqlite",
    "enabled": false
  }
]

All MCP tools now require a database parameter specifying which database to operate on.

Environment Variables

Variable Description
MIGRATIONS_ENABLED Auto-record DDL changes to migration files (default: true)
MIGRATIONS_DIR Migrations directory (default: ./migrations)

DATABASE_URL is no longer needed - all connections are defined in databases.json.

Usage

Run the server

npm start
# or
npx tsx src/index.ts

MCP configuration by editor

Replace PATH_TO_PROJECT with the absolute path to this project (e.g. /home/user/postgresql-mcp). When the project is your current workspace, VS Code supports ${workspaceFolder}.

Cursor

Add to Cursor MCP settings (.cursor/mcp.json or Settings → MCP):

{
  "mcpServers": {
    "database": {
      "command": "npx",
      "args": ["tsx", "PATH_TO_PROJECT/src/index.ts"]
    }
  }
}

Claude Code

Add a local stdio server via CLI:

claude mcp add --transport stdio database -- npx tsx PATH_TO_PROJECT/src/index.ts

Or add to .mcp.json in the project root (for project scope):

{
  "mcpServers": {
    "database": {
      "command": "npx",
      "args": ["tsx", "PATH_TO_PROJECT/src/index.ts"]
    }
  }
}

VS Code

Add to .vscode/mcp.json (workspace) or user mcp.json (Command Palette → MCP: Open User Configuration):

{
  "servers": {
    "database": {
      "type": "stdio",
      "command": "npx",
      "args": ["tsx", "PATH_TO_PROJECT/src/index.ts"]
    }
  }
}

Zed

Add to settings.json (Command Palette → Preferences: Open User Settings):

{
  "context_servers": {
    "database": {
      "source": "custom",
      "command": "npx",
      "args": ["tsx", "PATH_TO_PROJECT/src/index.ts"]
    }
  }
}

OpenCode

Add to opencode.json or opencode.jsonc in the project root:

{
  "mcp": {
    "database": {
      "type": "local",
      "command": ["npx", "tsx", "PATH_TO_PROJECT/src/index.ts"],
      "enabled": true
    }
  }
}

Tools

Databases

  • db_list_databases - List all configured databases (with enabled status)
  • db_get_database - Get details of a specific database

Important: All tools now require a database parameter to specify which database to operate on. Example: { "database": "production", "schema": "public" }

Schemas

  • db_list_schemas - List schemas
  • db_create_schema - Create schema
  • db_get_schema - Get schema details
  • db_alter_schema - Rename schema
  • db_drop_schema - Drop schema

Tables

  • db_list_tables - List tables
  • db_create_table - Create table
  • db_get_table - Get table details
  • db_alter_table - Alter table
  • db_drop_table - Drop table

Indexes, Views, Sequences, Triggers, Functions, Extensions

  • db_list_* / db_create_* / db_drop_* for each type

Data

  • db_query - Execute SELECT
  • db_insert - Insert rows
  • db_update - Update rows
  • db_delete - Delete rows
  • db_execute_sql - Execute arbitrary SQL

Auth (roles and permissions)

  • db_list_roles - List roles
  • db_create_role - Create role
  • db_create_user - Create user (role with LOGIN)
  • db_alter_role - Alter role
  • db_drop_role - Drop role
  • db_grant_role_membership - Grant role to role
  • db_revoke_role_membership - Revoke role membership
  • db_grant_schema - Grant USAGE/CREATE on schema
  • db_revoke_schema - Revoke schema privileges
  • db_grant_table - Grant SELECT/INSERT/UPDATE/DELETE on table
  • db_revoke_table - Revoke table privileges
  • db_grant_all_tables_in_schema - Grant on all tables in schema
  • db_revoke_all_tables_in_schema - Revoke on all tables in schema
  • db_list_grants - List grants for a role

Migrations

  • db_list_migrations - List applied and pending migrations
  • db_apply_migration - Apply a single migration by filename
  • db_apply_all_migrations - Apply all pending migrations (sync DB)

Each DDL change (create schema, table, index, etc.) is automatically recorded to migrations/ when MIGRATIONS_ENABLED=true.

Agent Skill (multi-platform)

The database-mcp skill helps AI models use this MCP correctly. It works in Cursor, Claude Code, OpenCode, Antigravity, and Gemini CLI.

npm run setup:skills

This creates symlinks so the skill is discoverable in each platform's expected path. Canonical source: skills/database-mcp/.

Build

npm run build

from github.com/roilanrodriguez55/database-mcp

Установка Database Server

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/roilanrodriguez55/database-mcp

FAQ

Database Server MCP бесплатный?

Да, Database Server MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Database Server?

Нет, Database Server работает без API-ключей и переменных окружения.

Database Server — hosted или self-hosted?

Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.

Как установить Database Server в Claude Desktop, Claude Code или Cursor?

Открой Database Server на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare Database Server with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории data