MCP Software Engineer Server

Um servidor MCP que permite que uma IA funcione como um engenheiro de software full-stack com capacidades completas de desenvolvimento.

Documentação

Servidor de Engenharia de Software MCP

Um servidor abrangente do Model Context Protocol (MCP) que permite que o Claude atue como um engenheiro de software full-stack com capacidades completas de desenvolvimento.

Recursos

🚀 Gerenciamento de Projetos

  • Criação de Projetos: Inicialize projetos com frameworks populares (React, Vue, Angular, Express, FastAPI, Django, etc.)
  • Modelos Full-Stack: Modelos prontos para uso com integração de frontend, backend e banco de dados
  • Seleção de Stack de Tecnologia: Configuração automática com TypeScript, autenticação, testes e mais

💾 Operações de Banco de Dados

  • Suporte a Múltiplos Bancos de Dados: PostgreSQL, MySQL, SQLite, MongoDB, Redis
  • Integração com ORM: Prisma, TypeORM, Sequelize, Mongoose, Drizzle
  • Gerenciamento de Migrações: Crie e execute migrações de banco de dados
  • Geração de Modelos: Gere automaticamente modelos e esquemas de banco de dados
  • Seeding e Backup: Utilitários de seeding e backup de banco de dados

🎨 Desenvolvimento Frontend

  • Geração de Componentes: Crie componentes React, Vue, Angular, Svelte
  • Soluções de Estilo: Tailwind CSS, Bootstrap, Material-UI, Styled Components
  • Páginas e Roteamento: Configure páginas com roteamento (React Router, Vue Router, etc.)
  • Gerenciamento de Estado: Redux, Zustand, Vuex, Pinia, NgRx
  • Manipulação de Formulários: React Hook Form, Formik, VeeValidate com validação
  • Otimização de Bundle: Configurações de otimização Webpack, Vite

⚙️ Desenvolvimento Backend

  • Endpoints de API: Criação de API RESTful com operações CRUD completas
  • Autenticação: JWT, OAuth2, Passport.js, autenticação baseada em sessão
  • Middleware: Middleware personalizado para autenticação, CORS, limitação de taxa, logging
  • WebSockets: Configuração de comunicação em tempo real
  • Trabalhos em Segundo Plano: Filas de tarefas com Bull, Agenda, Celery
  • Validação: Validação de requisições com Joi, Yup, Zod, Pydantic

🚢 Implantação e DevOps

  • Containerização: Geração de Docker e Docker Compose
  • Implantação em Nuvem: AWS, GCP, Azure, Vercel, Netlify, Heroku
  • Pipelines CI/CD: GitHub Actions, GitLab CI, Jenkins
  • SSL/TLS: Let's Encrypt, Cloudflare, AWS ACM
  • Balanceamento de Carga: Nginx, HAProxy, balanceadores de carga em nuvem
  • Monitoramento: Prometheus, Grafana, Sentry, DataDog

🧪 Testes e Qualidade

  • Frameworks de Teste: Jest, Vitest, Pytest, Mocha
  • Tipos de Teste: Testes unitários, de integração, ponta a ponta
  • Qualidade de Código: ESLint, Prettier, hooks Git com Husky
  • Varredura de Segurança: Varredura de vulnerabilidades em dependências e código

🔧 Ferramentas de Desenvolvimento

  • Controle de Versão: Inicialização de repositório Git com melhores práticas
  • Operações de Arquivo: Operações avançadas de sistema de arquivos
  • Cache: Redis, Memcached, cache em memória
  • Filas de Mensagens: RabbitMQ, Kafka, SQS, filas Redis
  • Integração com IA: OpenAI, Anthropic, HuggingFace, TensorFlow

Instalação

  1. Clone o repositório:
git clone <repository-url>
cd mcp-software-engineer
  1. Instale as dependências:
npm install
  1. Compile o servidor:
npm run build
  1. Configure o Claude Desktop: Adicione ao seu arquivo de configuração do Claude Desktop:
{
  "mcpServers": {
    "software-engineer": {
      "command": "node",
      "args": ["/path/to/mcp-software-engineer/dist/index.js"],
      "env": {}
    }
  }
}

Ferramentas Disponíveis

Gerenciamento de Projetos e Arquivos

  • create_project - Crie novos projetos com vários frameworks
  • read_file - Leia o conteúdo de arquivos
  • write_file - Escreva conteúdo em arquivos
  • create_directory - Crie estruturas de diretórios
  • list_files - Liste arquivos e diretórios
  • search_files - Pesquise padrões de texto em arquivos

Ferramentas de Banco de Dados

  • init_database - Inicialize banco de dados com ORM
  • create_migration - Crie migrações de banco de dados
  • run_migrations - Execute migrações
  • generate_model - Gere modelos de banco de dados
  • seed_database - Crie e execute seeds de banco de dados
  • backup_database - Crie backups de banco de dados
  • query_database - Execute consultas de banco de dados

Desenvolvimento Web

  • create_component - Gere componentes de frontend
  • setup_styling - Configure frameworks CSS
  • create_page - Crie páginas com roteamento
  • setup_routing - Configure sistemas de roteamento
  • setup_state_management - Configure gerenciamento de estado
  • setup_forms - Configure manipulação de formulários
  • optimize_bundle - Otimize configurações de build

Desenvolvimento Backend

  • create_api_endpoint - Crie endpoints de API RESTful
  • setup_authentication - Configure sistemas de autenticação
  • create_middleware - Crie middleware personalizado
  • setup_validation - Configure validação de requisições
  • setup_websockets - Configure suporte a WebSocket
  • create_background_job - Crie tarefas em segundo plano
  • setup_logging - Configure sistemas de logging

Implantação e DevOps

  • create_dockerfile - Gere Dockerfiles otimizados
  • create_docker_compose - Crie configurações Docker Compose
  • deploy_to_cloud - Implante em provedores de nuvem
  • setup_ci_cd - Configure pipelines CI/CD
  • setup_monitoring - Configure monitoramento de aplicações
  • setup_ssl - Configure certificados SSL/TLS
  • setup_load_balancer - Configure balanceamento de carga

Testes e Qualidade

  • setup_testing - Configure frameworks de teste
  • create_test - Gere arquivos de teste
  • run_tests - Execute testes com cobertura
  • security_scan - Execute varreduras de segurança

Git e Controle de Versão

  • init_repository - Inicialize repositório Git
  • create_branch - Crie e alterne branches
  • commit_changes - Faça stage e commit de alterações
  • setup_hooks - Configure hooks Git

Exemplos de Uso

Criar uma Aplicação Full-Stack

// Create a new full-stack project
await createProject({
  name: "my-app",
  type: "full-stack",
  path: "/projects",
  features: ["typescript", "database", "auth", "testing", "docker"]
});

// Setup database
await initDatabase({
  type: "prisma",
  database: "postgresql",
  projectPath: "/projects/my-app"
});

// Create API endpoints
await createApiEndpoint({
  name: "User",
  framework: "express",
  methods: ["GET", "POST", "PUT", "DELETE"],
  authentication: true,
  validation: true,
  projectPath: "/projects/my-app"
});

Configurar Frontend com React

// Create React components
await createComponent({
  name: "UserProfile",
  framework: "react",
  type: "functional",
  projectPath: "/projects/my-app",
  styling: "tailwind",
  withTests: true
});

// Setup state management
await setupStateManagement({
  type: "zustand",
  framework: "react",
  projectPath: "/projects/my-app"
});

Implantar na Nuvem

// Create Dockerfile
await createDockerfile({
  framework: "node",
  type: "full-stack",
  projectPath: "/projects/my-app"
});

// Setup CI/CD
await setupCiCd({
  platform: "github-actions",
  projectPath: "/projects/my-app",
  stages: ["test", "build", "deploy"],
  deploymentTarget: "aws"
});

Requisitos

  • Node.js 18 ou superior
  • npm ou yarn
  • Git
  • Docker (opcional, para containerização)
  • Vários runtimes de linguagem dependendo do tipo de projeto

Contribuindo

  1. Faça um fork do repositório
  2. Crie um branch de funcionalidade
  3. Adicione suas melhorias
  4. Escreva testes para novas funcionalidades
  5. Envie um pull request

Licença

Licença MIT - consulte o arquivo LICENSE para detalhes

Suporte

Para problemas e solicitações de recursos, use o rastreador de issues do GitHub.