mcp-lab-agent 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +237 -0
- package/dist/index.js +992 -0
- package/dist/index.js.map +1 -0
- package/package.json +47 -0
package/README.md
ADDED
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
# mcp-lab-agent
|
|
2
|
+
|
|
3
|
+
MCP server + AI agents para QA automation em **qualquer projeto**. Detecta automaticamente frameworks de teste e estrutura do projeto.
|
|
4
|
+
|
|
5
|
+
## 📚 Documentação Rápida
|
|
6
|
+
|
|
7
|
+
| Guia | Descrição |
|
|
8
|
+
|------|-----------|
|
|
9
|
+
| 🚀 **[Quick Start](QUICKSTART.md)** | Instale em 2 minutos e comece a usar |
|
|
10
|
+
| 📖 **[Como Usar](COMO_USAR.md)** | Guia completo de uso com exemplos |
|
|
11
|
+
| 🧪 **[Teste Comigo](TESTE_COMIGO.md)** | Roteiro para testar e dar feedback |
|
|
12
|
+
| 🔧 **[Instalação](INSTALL.md)** | Opções detalhadas de instalação |
|
|
13
|
+
| ⚙️ **[Setup Cursor](CURSOR_SETUP.md)** | Configuração passo a passo |
|
|
14
|
+
| 🚨 **[Troubleshooting](TROUBLESHOOTING.md)** | Solução de problemas |
|
|
15
|
+
| 🎯 **[Frameworks](FRAMEWORKS.md)** | Frameworks suportados |
|
|
16
|
+
|
|
17
|
+
## Features
|
|
18
|
+
|
|
19
|
+
- **Detecção automática** de frameworks:
|
|
20
|
+
- **E2E/UI**: Cypress, Playwright, WebdriverIO
|
|
21
|
+
- **Unit/Integration**: Jest, Vitest, Mocha, Jasmine
|
|
22
|
+
- **Mobile**: Appium, Detox
|
|
23
|
+
- **API**: Supertest, Pactum
|
|
24
|
+
- **Python**: Robot Framework, pytest, Behave
|
|
25
|
+
- **Execução de testes** com output estruturado (backend, frontend, mobile, API)
|
|
26
|
+
- **Geração de testes** via LLM (Groq, Gemini, OpenAI)
|
|
27
|
+
- **Análise de falhas** e sugestões de correção inteligentes
|
|
28
|
+
- **Bug reports** automáticos em Markdown
|
|
29
|
+
- **Linter** e **coverage** integrados
|
|
30
|
+
- **Templates de teste** para API, UI e Unit
|
|
31
|
+
- **Zero configuração**: funciona em projetos Node.js e Python
|
|
32
|
+
|
|
33
|
+
## Instalação e Uso no Cursor
|
|
34
|
+
|
|
35
|
+
### 🚀 Instalação Rápida (Recomendado)
|
|
36
|
+
|
|
37
|
+
**1. Configure o MCP no Cursor:**
|
|
38
|
+
|
|
39
|
+
Edite ou crie o arquivo `~/.cursor/mcp.json`:
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
mkdir -p ~/.cursor
|
|
43
|
+
nano ~/.cursor/mcp.json
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
**2. Adicione a configuração:**
|
|
47
|
+
|
|
48
|
+
```json
|
|
49
|
+
{
|
|
50
|
+
"mcpServers": {
|
|
51
|
+
"qa-lab-agent": {
|
|
52
|
+
"command": "npx",
|
|
53
|
+
"args": ["-y", "mcp-lab-agent"],
|
|
54
|
+
"cwd": "${workspaceFolder}"
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
**3. Reinicie o Cursor**
|
|
61
|
+
|
|
62
|
+
**4. Pronto!** Abra qualquer projeto e use normalmente no chat.
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
### 📦 Outras Opções de Instalação
|
|
67
|
+
|
|
68
|
+
<details>
|
|
69
|
+
<summary>Opção 1: Build Local (para desenvolvimento)</summary>
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
# Clone e instale
|
|
73
|
+
git clone https://github.com/Wesley-Gomes93/mcp-lab-agent
|
|
74
|
+
cd mcp-lab-agent
|
|
75
|
+
npm install
|
|
76
|
+
npm run build
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Configure no `~/.cursor/mcp.json`:
|
|
80
|
+
|
|
81
|
+
```json
|
|
82
|
+
{
|
|
83
|
+
"mcpServers": {
|
|
84
|
+
"qa-lab-agent": {
|
|
85
|
+
"command": "node",
|
|
86
|
+
"args": ["/caminho/completo/para/mcp-lab-agent/dist/index.js"],
|
|
87
|
+
"cwd": "${workspaceFolder}"
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
**Nota:** Substitua `/caminho/completo/para/mcp-lab-agent` pelo caminho real no seu sistema.
|
|
94
|
+
|
|
95
|
+
</details>
|
|
96
|
+
|
|
97
|
+
<details>
|
|
98
|
+
<summary>Opção 2: Instalação Global com npm link</summary>
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
cd mcp-lab-agent
|
|
102
|
+
sudo npm link
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
Configure no `~/.cursor/mcp.json`:
|
|
106
|
+
|
|
107
|
+
```json
|
|
108
|
+
{
|
|
109
|
+
"mcpServers": {
|
|
110
|
+
"qa-lab-agent": {
|
|
111
|
+
"command": "mcp-lab-agent",
|
|
112
|
+
"cwd": "${workspaceFolder}"
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
</details>
|
|
119
|
+
|
|
120
|
+
## Ferramentas disponíveis
|
|
121
|
+
|
|
122
|
+
### Core Tools
|
|
123
|
+
|
|
124
|
+
| Tool | Descrição |
|
|
125
|
+
|------|-----------|
|
|
126
|
+
| `detect_project` | Detecta frameworks, pastas de teste, backend, frontend |
|
|
127
|
+
| `run_tests` | Executa testes (Cypress, Playwright, Jest, npm test) |
|
|
128
|
+
| `read_project` | Lê package.json, specs existentes |
|
|
129
|
+
| `generate_tests` | Gera spec com LLM (requer API key) |
|
|
130
|
+
| `write_test` | Grava spec no disco |
|
|
131
|
+
| `analyze_failures` | Analisa output de falhas e extrai stack traces |
|
|
132
|
+
|
|
133
|
+
### Novas Ferramentas (v2.0)
|
|
134
|
+
|
|
135
|
+
| Tool | Descrição |
|
|
136
|
+
|------|-----------|
|
|
137
|
+
| `suggest_fix` | Sugere correções para falhas detectadas (seletores, asserções, rede) |
|
|
138
|
+
| `create_bug_report` | Gera bug report estruturado em Markdown a partir de falhas |
|
|
139
|
+
| `list_test_files` | Lista todos os arquivos de teste (filtro por framework/pattern) |
|
|
140
|
+
| `run_linter` | Executa ESLint/Prettier com auto-fix opcional |
|
|
141
|
+
| `install_dependencies` | Instala dependências (npm/yarn/pnpm - detecta automaticamente) |
|
|
142
|
+
| `get_test_coverage` | Gera relatório de cobertura de testes (Jest) |
|
|
143
|
+
| `watch_tests` | Inicia testes em watch mode (Jest/Vitest) |
|
|
144
|
+
| `create_test_template` | Gera boilerplate de teste (API/UI/Unit) para qualquer framework |
|
|
145
|
+
|
|
146
|
+
## Variáveis de ambiente (opcional)
|
|
147
|
+
|
|
148
|
+
Para usar `generate_tests`, configure no `.env` do projeto:
|
|
149
|
+
|
|
150
|
+
- **GROQ_API_KEY** — Groq (gratuito): https://console.groq.com/keys
|
|
151
|
+
- **GEMINI_API_KEY** — Google Gemini (gratuito): https://aistudio.google.com/apikey
|
|
152
|
+
- **OPENAI_API_KEY** — OpenAI (pago): https://platform.openai.com/api-keys
|
|
153
|
+
|
|
154
|
+
## Como Usar
|
|
155
|
+
|
|
156
|
+
### 💬 Conversação Natural
|
|
157
|
+
|
|
158
|
+
**Você não precisa saber comandos especiais!** Apenas converse naturalmente com o Cursor:
|
|
159
|
+
|
|
160
|
+
```
|
|
161
|
+
"Detecte a estrutura do meu projeto"
|
|
162
|
+
"Gere um teste para o fluxo de login"
|
|
163
|
+
"Rode os testes"
|
|
164
|
+
"Analise as falhas e sugira correções"
|
|
165
|
+
"Crie um bug report das falhas"
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
O Cursor **automaticamente** identifica quando usar as ferramentas do MCP. Você não precisa mencionar nomes de ferramentas ou fazer configurações especiais.
|
|
169
|
+
|
|
170
|
+
### 🎯 Exemplos Práticos
|
|
171
|
+
|
|
172
|
+
**Começando em um projeto novo:**
|
|
173
|
+
```
|
|
174
|
+
Você: "Quais frameworks de teste estão instalados aqui?"
|
|
175
|
+
Cursor: [usa detect_project automaticamente]
|
|
176
|
+
|
|
177
|
+
Você: "Gere um teste E2E para o cadastro de usuários"
|
|
178
|
+
Cursor: [usa generate_tests + write_test]
|
|
179
|
+
|
|
180
|
+
Você: "Rode os testes"
|
|
181
|
+
Cursor: [usa run_tests]
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
**Analisando falhas:**
|
|
185
|
+
```
|
|
186
|
+
Você: "Os testes falharam, me ajude a entender o que aconteceu"
|
|
187
|
+
Cursor: [usa analyze_failures + suggest_fix]
|
|
188
|
+
|
|
189
|
+
Você: "Crie um relatório dessas falhas"
|
|
190
|
+
Cursor: [usa create_bug_report]
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
**Manutenção do projeto:**
|
|
194
|
+
```
|
|
195
|
+
Você: "Liste todos os testes de Cypress"
|
|
196
|
+
Cursor: [usa list_test_files]
|
|
197
|
+
|
|
198
|
+
Você: "Rode o linter e corrija os problemas"
|
|
199
|
+
Cursor: [usa run_linter com auto-fix]
|
|
200
|
+
|
|
201
|
+
Você: "Gere um relatório de cobertura"
|
|
202
|
+
Cursor: [usa get_test_coverage]
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
### 🔧 Ferramentas Disponíveis (para referência)
|
|
206
|
+
|
|
207
|
+
Você não precisa chamar essas ferramentas diretamente, mas é útil saber o que está disponível:
|
|
208
|
+
|
|
209
|
+
| Categoria | Ferramentas |
|
|
210
|
+
|-----------|-------------|
|
|
211
|
+
| **Detecção** | `detect_project`, `read_project`, `list_test_files` |
|
|
212
|
+
| **Execução** | `run_tests`, `watch_tests`, `get_test_coverage` |
|
|
213
|
+
| **Geração** | `generate_tests`, `write_test`, `create_test_template` |
|
|
214
|
+
| **Análise** | `analyze_failures`, `suggest_fix`, `create_bug_report` |
|
|
215
|
+
| **Manutenção** | `run_linter`, `install_dependencies` |
|
|
216
|
+
|
|
217
|
+
## Publicar no npm
|
|
218
|
+
|
|
219
|
+
```bash
|
|
220
|
+
npm run build
|
|
221
|
+
npm login
|
|
222
|
+
npm publish
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
Se o nome `mcp-lab-agent` já estiver em uso, use escopo: `@seu-usuario/mcp-lab-agent`.
|
|
226
|
+
|
|
227
|
+
## Desenvolvimento local
|
|
228
|
+
|
|
229
|
+
```bash
|
|
230
|
+
npm install
|
|
231
|
+
npm run build
|
|
232
|
+
node dist/index.js # testa o servidor
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
## Licença
|
|
236
|
+
|
|
237
|
+
MIT
|