MCP Database Server
Fornece acesso a banco de dados para SQLite, SQL Server, PostgreSQL e MySQL.
Documentação
MCP Database Server
Este servidor MCP (Model Context Protocol) fornece capacidades de acesso a banco de dados para o Claude, suportando bancos de dados SQLite, SQL Server, PostgreSQL e MySQL.
Instalação
- Clone o repositório:
git clone https://github.com/executeautomation/mcp-database-server.git
cd mcp-database-server
- Instale as dependências:
npm install
- Compile o projeto:
npm run build
Opções de Uso
Há duas maneiras de usar este servidor MCP com o Claude:
- Uso direto: Instale o pacote globalmente e use-o diretamente
- Desenvolvimento local: Execute a partir do seu ambiente de desenvolvimento local
Uso Direto com Pacote NPM
A maneira mais fácil de usar este servidor MCP é instalá-lo globalmente:
npm install -g @executeautomation/database-server
Isso permite que você use o servidor diretamente sem compilá-lo localmente.
Configuração de Desenvolvimento Local
Se você quiser modificar o código ou executar a partir do seu ambiente local:
- Clone e compile o repositório conforme mostrado na seção Instalação
- Execute o servidor usando os comandos na seção Uso abaixo
Uso
Banco de Dados SQLite
Para usar com um banco de dados SQLite:
node dist/src/index.js /path/to/your/database.db
Banco de Dados SQL Server
Para usar com um banco de dados SQL Server:
node dist/src/index.js --sqlserver --server <server-name> --database <database-name> [--user <username> --password <password>]
Parâmetros obrigatórios:
--server: nome do host ou endereço IP do SQL Server--database: Nome do banco de dados
Parâmetros opcionais:
--user: Nome de usuário para autenticação do SQL Server (se não fornecido, a Autenticação do Windows será usada)--password: Senha para autenticação do SQL Server--port: Número da porta (padrão: 1433)
Banco de Dados PostgreSQL
Para usar com um banco de dados PostgreSQL:
node dist/src/index.js --postgresql --host <host-name> --database <database-name> [--user <username> --password <password>]
Parâmetros obrigatórios:
--host: nome do host ou endereço IP do PostgreSQL--database: Nome do banco de dados
Parâmetros opcionais:
--user: Nome de usuário para autenticação do PostgreSQL--password: Senha para autenticação do PostgreSQL--port: Número da porta (padrão: 5432)--ssl: Habilitar conexão SSL (verdadeiro/falso)--connection-timeout: Tempo limite de conexão em milissegundos (padrão: 30000)
Banco de Dados MySQL
Autenticação Padrão
Para usar com um banco de dados MySQL:
node dist/src/index.js --mysql --host <host-name> --database <database-name> --port <port> [--user <username> --password <password>]
Parâmetros obrigatórios:
--host: nome do host ou endereço IP do MySQL--database: Nome do banco de dados--port: Número da porta (padrão: 3306)
Parâmetros opcionais:
--user: Nome de usuário para autenticação do MySQL--password: Senha para autenticação do MySQL--ssl: Habilitar conexão SSL (verdadeiro/falso ou objeto)--connection-timeout: Tempo limite de conexão em milissegundos (padrão: 30000)
Autenticação AWS IAM
Para instâncias MySQL do Amazon RDS com autenticação de banco de dados IAM:
Pré-requisitos:
- As credenciais AWS devem ser configuradas (o RDS Signer usa a cadeia padrão de provedores de credenciais)
- Configure usando um destes métodos:
aws configure(usa o perfil padrão)AWS_PROFILE=myprofile: variável de ambienteAWS_ACCESS_KEY_IDeAWS_SECRET_ACCESS_KEY: variáveis de ambiente- Funções IAM (se estiver executando em EC2)
node dist/src/index.js --mysql --aws-iam-auth --host <rds-endpoint> --database <database-name> --user <aws-username> --aws-region <region>
Parâmetros obrigatórios:
--host: nome do host do endpoint RDS--database: Nome do banco de dados--aws-iam-auth: Habilitar autenticação AWS IAM--user: Nome de usuário AWS IAM (também o usuário do banco de dados)--aws-region: Região AWS onde a instância RDS está localizada
Nota: SSL é habilitado automaticamente para autenticação AWS IAM
Configurando o Claude Desktop
Configuração de Uso Direto
Se você instalou o pacote globalmente, configure o Claude Desktop com:
{
"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"
]
}
}
}
Configuração de Desenvolvimento Local
Para desenvolvimento local, configure o Claude Desktop para usar sua versão compilada localmente:
{
"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"
]
}
}
}
O arquivo de configuração do Claude Desktop geralmente está localizado em:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
Ferramentas de Banco de Dados Disponíveis
O MCP Database Server fornece as seguintes ferramentas que o Claude pode usar:
| Ferramenta | Descrição | Parâmetros Obrigatórios |
|---|---|---|
read_query | Executa consultas SELECT para ler dados | query: instrução SQL SELECT |
write_query | Executa consultas INSERT, UPDATE ou DELETE | query: instrução SQL de modificação |
create_table | Cria novas tabelas no banco de dados | query: instrução CREATE TABLE |
alter_table | Modifica o esquema de tabela existente | query: instrução ALTER TABLE |
drop_table | Remove uma tabela do banco de dados | table_name: Nome da tabela confirm: Sinalizador de segurança (deve ser verdadeiro) |
list_tables | Obtém uma lista de todas as tabelas | Nenhum |
describe_table | Visualiza informações de esquema de uma tabela | table_name: Nome da tabela |
export_query | Exporta resultados de consulta como CSV/JSON | query: instrução SQL SELECT format: "csv" ou "json" |
append_insight | Adiciona um insight de negócios ao memorando | insight: Texto do insight |
list_insights | Lista todos os insights de negócios | Nenhum |
Para exemplos práticos de como usar essas ferramentas com o Claude, veja Exemplos de Uso.
Documentação Adicional
- Guia de Configuração do SQL Server: Detalhes sobre como conectar-se a bancos de dados SQL Server
- Guia de Configuração do PostgreSQL: Detalhes sobre como conectar-se a bancos de dados PostgreSQL
- Exemplos de Uso: Exemplos de consultas e comandos para usar com o Claude
Desenvolvimento
Para executar o servidor em modo de desenvolvimento:
npm run dev
Para observar alterações durante o desenvolvimento:
npm run watch
Requisitos
- Node.js 18+
- Para conectividade com SQL Server: SQL Server 2012 ou posterior
- Para conectividade com PostgreSQL: PostgreSQL 9.5 ou posterior
Licença
MIT