Skip to main content
Glama

MCP Database Server

MseeP.ai Security Assessment Badge

MCP Database Server

This MCP (Model Context Protocol) server provides database access capabilities to Claude, supporting SQLite, SQL Server, PostgreSQL, and MySQL databases.

Installation

  1. Clone the repository:

git clone https://github.com/executeautomation/mcp-database-server.git cd mcp-database-server
  1. Install dependencies:

npm install
  1. Build the project:

npm run build

Usage Options

There are two ways to use this MCP server with Claude:

  1. Direct usage: Install the package globally and use it directly

  2. Local development: Run from your local development environment

Direct Usage with NPM Package

The easiest way to use this MCP server is by installing it globally:

npm install -g @executeautomation/database-server

This allows you to use the server directly without building it locally.

Local Development Setup

If you want to modify the code or run from your local environment:

  1. Clone and build the repository as shown in the Installation section

  2. Run the server using the commands in the Usage section below

Usage

SQLite Database

To use with an SQLite database:

node dist/src/index.js /path/to/your/database.db

SQL Server Database

To use with a SQL Server database:

node dist/src/index.js --sqlserver --server <server-name> --database <database-name> [--user <username> --password <password>]

Required parameters:

  • --server: SQL Server host name or IP address

  • --database: Name of the database

Optional parameters:

  • --user: Username for SQL Server authentication (if not provided, Windows Authentication will be used)

  • --password: Password for SQL Server authentication

  • --port: Port number (default: 1433)

PostgreSQL Database

To use with a PostgreSQL database:

node dist/src/index.js --postgresql --host <host-name> --database <database-name> [--user <username> --password <password>]

Required parameters:

  • --host: PostgreSQL host name or IP address

  • --database: Name of the database

Optional parameters:

  • --user: Username for PostgreSQL authentication

  • --password: Password for PostgreSQL authentication

  • --port: Port number (default: 5432)

  • --ssl: Enable SSL connection (true/false)

  • --connection-timeout: Connection timeout in milliseconds (default: 30000)

MySQL Database

Standard Authentication

To use with a MySQL database:

node dist/src/index.js --mysql --host <host-name> --database <database-name> --port <port> [--user <username> --password <password>]

Required parameters:

  • --host: MySQL host name or IP address

  • --database: Name of the database

  • --port: Port number (default: 3306)

Optional parameters:

  • --user: Username for MySQL authentication

  • --password: Password for MySQL authentication

  • --ssl: Enable SSL connection (true/false or object)

  • --connection-timeout: Connection timeout in milliseconds (default: 30000)

AWS IAM Authentication

For Amazon RDS MySQL instances with IAM database authentication:

Prerequisites:

  • AWS credentials must be configured (the RDS Signer uses the default credential provider chain)

  • Configure using one of these methods:

    • aws configure (uses default profile)

    • AWS_PROFILE=myprofile environment variable

    • AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables

    • IAM roles (if running on EC2)

node dist/src/index.js --mysql --aws-iam-auth --host <rds-endpoint> --database <database-name> --user <aws-username> --aws-region <region>

Required parameters:

  • --host: RDS endpoint hostname

  • --database: Name of the database

  • --aws-iam-auth: Enable AWS IAM authentication

  • --user: AWS IAM username (also the database user)

  • --aws-region: AWS region where RDS instance is located

Note: SSL is automatically enabled for AWS IAM authentication

Configuring Claude Desktop

Direct Usage Configuration

If you installed the package globally, configure Claude Desktop with:

{ "mcpServers": { "sqlite": { "command": "npx", "args": [ "-y", "@executeautomation/database-server", "/path/to/your/database.db" ] }, "sqlserver": { "command": "npx", "args": [ "-y", "@executeautomation/database-server", "--sqlserver", "--server", "your-server-name", "--database", "your-database-name", "--user", "your-username", "--password", "your-password" ] }, "postgresql": { "command": "npx", "args": [ "-y", "@executeautomation/database-server", "--postgresql", "--host", "your-host-name", "--database", "your-database-name", "--user", "your-username", "--password", "your-password" ] }, "mysql": { "command": "npx", "args": [ "-y", "@executeautomation/database-server", "--mysql", "--host", "your-host-name", "--database", "your-database-name", "--port", "3306", "--user", "your-username", "--password", "your-password" ] }, "mysql-aws": { "command": "npx", "args": [ "-y", "@executeautomation/database-server", "--mysql", "--aws-iam-auth", "--host", "your-rds-endpoint.region.rds.amazonaws.com", "--database", "your-database-name", "--user", "your-aws-username", "--aws-region", "us-east-1" ] } } }

Local Development Configuration

For local development, configure Claude Desktop to use your locally built version:

{ "mcpServers": { "sqlite": { "command": "node", "args": [ "/absolute/path/to/mcp-database-server/dist/src/index.js", "/path/to/your/database.db" ] }, "sqlserver": { "command": "node", "args": [ "/absolute/path/to/mcp-database-server/dist/src/index.js", "--sqlserver", "--server", "your-server-name", "--database", "your-database-name", "--user", "your-username", "--password", "your-password" ] }, "postgresql": { "command": "node", "args": [ "/absolute/path/to/mcp-database-server/dist/src/index.js", "--postgresql", "--host", "your-host-name", "--database", "your-database-name", "--user", "your-username", "--password", "your-password" ] }, "mysql": { "command": "node", "args": [ "/absolute/path/to/mcp-database-server/dist/src/index.js", "--mysql", "--host", "your-host-name", "--database", "your-database-name", "--port", "3306", "--user", "your-username", "--password", "your-password" ] }, "mysql-aws": { "command": "node", "args": [ "/absolute/path/to/mcp-database-server/dist/src/index.js", "--mysql", "--aws-iam-auth", "--host", "your-rds-endpoint.region.rds.amazonaws.com", "--database", "your-database-name", "--user", "your-aws-username", "--aws-region", "us-east-1" ] } } }

The Claude Desktop configuration file is typically located at:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

  • Linux: ~/.config/Claude/claude_desktop_config.json

Available Database Tools

The MCP Database Server provides the following tools that Claude can use:

Tool

Description

Required Parameters

read_query

Execute SELECT queries to read data

query

: SQL SELECT statement

write_query

Execute INSERT, UPDATE, or DELETE queries

query

: SQL modification statement

create_table

Create new tables in the database

query

: CREATE TABLE statement

alter_table

Modify existing table schema

query

: ALTER TABLE statement

drop_table

Remove a table from the database

table_name

: Name of table

confirm

: Safety flag (must be true)

list_tables

Get a list of all tables

None

describe_table

View schema information for a table

table_name

: Name of table

export_query

Export query results as CSV/JSON

query

: SQL SELECT statement

format

: "csv" or "json"

append_insight

Add a business insight to memo

insight

: Text of insight

list_insights

List all business insights

None

For practical examples of how to use these tools with Claude, see Usage Examples.

Additional Documentation

Development

To run the server in development mode:

npm run dev

To watch for changes during development:

npm run watch

Requirements

  • Node.js 18+

  • For SQL Server connectivity: SQL Server 2012 or later

  • For PostgreSQL connectivity: PostgreSQL 9.5 or later

License

MIT

-
security - not tested
A
license - permissive license
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Enables Claude to connect to and interact with SQLite, SQL Server, PostgreSQL, and MySQL databases through natural language. Supports executing queries, managing tables, exporting data, and storing business insights with authentication options including AWS IAM.

  1. Installation
    1. Usage Options
      1. Direct Usage with NPM Package
      2. Local Development Setup
    2. Usage
      1. SQLite Database
      2. SQL Server Database
      3. PostgreSQL Database
      4. MySQL Database
    3. Configuring Claude Desktop
      1. Direct Usage Configuration
      2. Local Development Configuration
    4. Available Database Tools
      1. Additional Documentation
        1. Development
          1. Requirements
            1. License

              MCP directory API

              We provide all the information about MCP servers via our MCP API.

              curl -X GET 'https://glama.ai/api/mcp/v1/servers/an8888allen-maker/mcp-database-server'

              If you have feedback or need assistance with the MCP directory API, please join our Discord server