mcp-mysql-simple
Simple MySQL MCP Server
Documentation
Servidor MCP MySQL Otimizado
Servidor MCP (Model Context Protocol) para MySQL com arquitetura limpa e princípios SOLID.
🆕 Melhorias na v1.1.0
✨ Arquitetura Otimizada
- Separação de Responsabilidades: Classes especializadas para cada função
- SOLID Principles: Código mais maintível e extensível
- Clean Architecture: Estrutura modular e testável
🔒 Segurança Aprimorada
- Validação de Queries: Proteção contra operações perigosas
- Sanitização: Nomes de tabelas validados
- SQL Injection Protection: Parâmetros seguros
🚀 Performance e Confiabilidade
- Conexão Reutilizada: Gerenciamento eficiente de recursos
- Tratamento de Erros: Mensagens consistentes e informativas
- Shutdown Gracioso: Encerramento controlado de conexões
🏗️ Arquitetura
MySQLMCPServer
├── DatabaseConfig (Configurações)
├── DatabaseConnection (Conexão MySQL)
├── QueryValidator (Validação e Segurança)
├── ResponseFormatter (Formatação)
├── ToolsHandler (Ferramentas)
├── ResourcesHandler (Recursos)
└── PromptsHandler (Templates)🎯 Conceitos MCP Implementados
1. Tools (Ferramentas)
- `execute_query`: Executa queries SQL com validação
- `describe_table`: Descreve estrutura de tabelas
2. Resources (Recursos)
- `mysql://databases`: Lista de bancos disponíveis
- `mysql://tables`: Tabelas do banco atual
- `mysql://schema`: Schema completo
3. Prompts (Templates)
- `analyze_table`: Análise detalhada de tabela
- `find_large_tables`: Tabelas com mais registros
- `database_overview`: Visão geral do banco
🚀 Instalação e Uso
1. Instalar Dependências
npm install2. Configurar MySQL
Crie um arquivo `.env`:
MYSQL_HOST=localhost
MYSQL_PORT=3306
MYSQL_USER=root
MYSQL_PASSWORD=sua_senha
MYSQL_DATABASE=seu_banco3. Compilar e Executar
# Compilar
npm run build
# Executar
npm start
# Desenvolvimento
npm run dev4. Testar Conexão
npm run test:connection🔧 Configuração Claude Desktop
Adicione ao `claude_desktop_config.json`:
{
"mcpServers": {
"mysql-optimized": {
"command": "node",
"args": ["/caminho/para/dist/index.js"],
"env": {
"MYSQL_HOST": "localhost",
"MYSQL_PORT": "3306",
"MYSQL_USER": "root",
"MYSQL_PASSWORD": "sua_senha",
"MYSQL_DATABASE": "seu_banco"
}
}
}
}🛡️ Segurança
Validações Implementadas:
- ✅ Bloqueio de `DROP DATABASE/TABLE`
- ✅ Proteção contra `DELETE ... WHERE 1=1`
- ✅ Sanitização de nomes de tabelas
- ✅ Validação de queries vazias
- ✅ Tratamento seguro de parâmetros
Práticas de Segurança:
- 🔒 Conexões controladas
- 🔒 Logs de erro seguros
- 🔒 Isolamento de responsabilidades
- 🔒 Validação de entrada
📊 Exemplo de Uso
// Executar query segura
{
"name": "execute_query",
"arguments": {
"query": "SELECT * FROM usuarios LIMIT 5",
"database": "meu_banco"
}
}
// Analisar tabela
{
"name": "describe_table",
"arguments": {
"table_name": "usuarios"
}
}🔍 Debug e Logs
O servidor fornece logs informativos:
- ✅ Conexão estabelecida
- 🔄 Queries executadas
- ❌ Erros com detalhes
- 🔚 Shutdown gracioso
📈 Roadmap
- [ ] Cache de resultados
- [ ] Métricas de performance
- [ ] Pool de conexões
- [ ] Suporte a transações
- [ ] Interface web de monitoramento
🤝 Contribuição
1. Fork o projeto
2. Crie uma branch (`git checkout -b feature/nova-funcionalidade`)
3. Commit suas mudanças (`git commit -m 'Adiciona nova funcionalidade'`)
4. Push para a branch (`git push origin feature/nova-funcionalidade`)
5. Abra um Pull Request
📝 Changelog
v1.1.0 (2025-01-XX)
- ✨ Arquitetura otimizada com SOLID
- 🔒 Validação e segurança aprimoradas
- 🚀 Performance melhorada
- 📚 Documentação expandida
v1.0.0 (2025-01-XX)
- 🎉 Versão inicial
- 🔧 Implementação básica MCP
- 🗄️ Suporte MySQL completo
📄 Licença
MIT License - veja o arquivo LICENSE para detalhes.
Criado com ❤️ para demonstrar o protocolo MCP da Anthropic
Frequently asked questions
What is mcp-mysql-simple?
mcp-mysql-simple is Simple MySQL MCP Server
How do I install mcp-mysql-simple?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is mcp-mysql-simple open source?
Yes — it is hosted on GitHub at https://github.com/fabiovige/mcp-mysql-simple.
Related MCP tools
🔥 Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM clients.
Use any LLMs (Large Language Models) for Deep Research. Support SSE API and MCP server.
Enhanced MCP server for interactive user feedback and command execution in AI-assisted development, featuring dual interface support (Web UI and Desktop Application) with intelligent environment detection and cross-platform compatibility.
A powerful Zotero AI and MCP plugin with ChatGPT, Gemini 3.7, Claude Fable 5, Claude Opus 5, DeepSeek V4, Grok, OpenRouter, Kimi k3, GLM 5.3, SiliconFlow, GPT-oss, Gemma 4, Qwen 3.8
Connect your browser to AI models. Just use Dia on Chrome, Arc or Firefox.
文颜 MCP Server 可以让 AI 自动将 Markdown 文章排版后发布至微信公众号。
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP