SQL Server
Permite que assistentes de IA acessem e consultem bancos de dados SQL Server.
GitHubExperimente este MCPPatrocinado
Documentação
Servidor MCP do SQL Server
Um servidor Model Context Protocol (MCP) que fornece aos assistentes de IA capacidades de acesso a bancos de dados SQL Server.
Recursos
- Executar consultas SQL com limites de segurança automáticos
- Inspeção e exploração de esquemas de banco de dados
- Estatísticas de tabelas e monitoramento de desempenho
- Capacidades avançadas de busca para tabelas e colunas
- Funcionalidade de backup de tabelas
- Inserção de dados com tratamento de conflitos
- Análise de planos de execução de consultas
- Monitoramento da saúde da conexão
Início Rápido
1. Configurar o Ambiente
# Navigate to project directory
cd C:\Users\benha\Desktop\sql-server-mcp
# Create virtual environment
python -m venv venv
venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
2. Configurar a Conexão com o Banco de Dados
Edite o arquivo .env com suas credenciais do SQL Server:
SQL_SERVER_HOST=192.168.1.117
SQL_SERVER_DATABASE=EM_Data
SQL_SERVER_USERNAME=benhg
SQL_SERVER_PASSWORD=your_actual_password
SQL_SERVER_PORT=1433
3. Testar o Servidor
python -m sql_server_mcp.server
Integração com Ferramentas de IA
Claude Desktop
Adicione ao seu arquivo de configuração do Claude Desktop:
Localização:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Configuração:
{
"mcpServers": {
"sql-server": {
"command": "python",
"args": ["-m", "sql_server_mcp.server"],
"cwd": "C:\\Users\\benha\\Desktop\\sql-server-mcp",
"env": {
"SQL_SERVER_HOST": "192.168.1.117",
"SQL_SERVER_DATABASE": "EM_Data",
"SQL_SERVER_USERNAME": "benhg",
"SQL_SERVER_PASSWORD": "your_password_here",
"SQL_SERVER_PORT": "1433"
}
}
}
}
VS Code
- Instale a extensão "Model Context Protocol"
- Adicione ao settings.json do VS Code:
{
"mcp.servers": {
"sql-server": {
"command": "python",
"args": ["-m", "sql_server_mcp.server"],
"cwd": "C:\\Users\\benha\\Desktop\\sql-server-mcp"
}
}
}
Cursor
Adicione à configuração MCP do Cursor:
{
"mcp": {
"servers": {
"sql-server": {
"command": "python",
"args": ["-m", "sql_server_mcp.server"],
"cwd": "C:\\Users\\benha\\Desktop\\sql-server-mcp"
}
}
}
}
Ferramentas Disponíveis
- execute_query - Executar consultas SQL com limites de segurança
- get_schema - Inspecionar a estrutura do banco de dados
- get_table_info - Informações detalhadas da tabela com amostras
- explain_query - Planos de execução de consultas
- check_connection - Status de conectividade do banco de dados
- get_table_stats - Tamanho da tabela e métricas de desempenho
- search_tables - Encontrar tabelas e colunas por nome
- backup_table - Criar backups de tabelas
- insert_data - Inserir dados com tratamento de conflitos
Exemplos de Uso
Uma vez integrado ao Claude, você pode perguntar:
- "Mostre-me o esquema da minha tabela SeriesRecord"
- "Execute: SELECT TOP 10 * FROM SeriesRecord WHERE Source = 'NBP'"
- "Quais tabelas eu tenho no meu banco de dados?"
- "Crie um backup da minha tabela SeriesRecord"
- "Procure por tabelas que contenham 'GDP'"
- "Mostre-me estatísticas de todas as minhas tabelas"
Recursos de Segurança
- Limites automáticos de consulta (TOP 1000 por padrão)
- Suporte a consultas parametrizadas
- Configuração baseada em ambiente
- Pool de conexões e verificações de saúde
- Tratamento abrangente de erros
Desenvolvimento
Executando Testes
pip install pytest pytest-asyncio
pytest tests/
Estrutura do Projeto
sql-server-mcp/
├── sql_server_mcp/
│ ├── __init__.py
│ └── server.py
├── tests/
│ ├── __init__.py
│ └── test_server.py
├── requirements.txt
├── pyproject.toml
├── .env
└── README.md
Solução de Problemas
Problemas Comuns
- Driver ODBC Não Encontrado: Instale o Microsoft ODBC Driver 17 para SQL Server
- Falha na Conexão: Verifique o endereço do servidor, as credenciais e a conectividade de rede
- Permissão Negada: Garanta que o usuário do banco de dados tenha as permissões apropriadas
Testando a Conexão
# Test ODBC drivers
import pyodbc
print(pyodbc.drivers())
# Test basic connection
from sqlalchemy import create_engine, text
engine = create_engine('mssql+pyodbc://user@server:port/database?driver=ODBC+Driver+17+for+SQL+Server')
with engine.connect() as conn:
result = conn.execute(text('SELECT 1'))
print('Connection successful!')
Licença
Licença MIT - consulte o arquivo LICENSE para obter detalhes.