数据库连接
STDIO为Claude提供多种数据库访问能力
为Claude提供多种数据库访问能力
This MCP (Model Context Protocol) server provides database access capabilities to Claude, supporting SQLite, SQL Server, PostgreSQL, and MySQL databases.
git clone https://github.com/executeautomation/database-server.git
cd database-server
npm install
npm run build
There are two ways to use this MCP server with Claude:
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.
If you want to modify the code or run from your local environment:
To use with an SQLite database:
node dist/src/index.js /path/to/your/database.db
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 databaseOptional 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)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 databaseOptional 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)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)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" ] } } }
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" ] } } }
The Claude Desktop configuration file is typically located at:
~/Library/Application Support/Claude/claude_desktop_config.json
%APPDATA%\Claude\claude_desktop_config.json
~/.config/Claude/claude_desktop_config.json
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 tableconfirm : 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 statementformat : "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.
To run the server in development mode:
npm run dev
To watch for changes during development:
npm run watch
MIT