Quality MCP
Enables collection of DORA metrics from Datadog for monitoring performance and deployment frequency.
Allows integration with GitHub Actions to apply Quality Gates and enforce quality checks in CI/CD pipelines.
Allows integration with GitLab CI to apply Quality Gates and enforce quality checks in CI/CD pipelines.
Enables collection of DORA metrics from Grafana for visualizing metrics and alerts.
Allows integration with Jenkins to apply Quality Gates and enforce quality checks in CI/CD pipelines.
Enables collection of DORA metrics from Jira for tracking lead time and change failure rate.
Enables collection of DORA metrics from Sentry for tracking production errors and release quality.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Quality MCPanalyze my repo and generate end-to-end tests with Playwright"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Quality MCP đŻ
Quality CLI é um servidor MCP (Model Context Protocol) que automatiza a anålise de repositórios e a geração de testes E2E com Playwright. Ele funciona como um assistente inteligente de qualidade que analisa seu código, detecta padrÔes, gera planos de teste e cria estruturas completas de automação.
đŹ Como Funciona na PrĂĄtica
Imagine que vocĂȘ tem um projeto e quer implementar testes automatizados. Tradicionalmente vocĂȘ precisaria:
â° Manualmente analisar todas as rotas e endpoints
â° Manualmente planejar quais testes criar
â° Manualmente estruturar os arquivos de teste
â° Manualmente configurar Playwright, Jest, etc.
â° Manualmente escrever cada teste do zero
âš Com o Quality MCP:
# Um Ășnico comando faz TUDO automaticamente:
quality auto --repo . --product "MyApp"O que acontece em segundos:
đ Detectando linguagem... â
TypeScript + Next.js
đŠ Analisando cĂłdigo... â
23 rotas, 15 endpoints, 8 eventos
đŻ Recomendando estratĂ©gia... â
70% unit, 20% integration, 10% E2E
đ Gerando plano... â
45 cenĂĄrios organizados por domĂnio
đïž Criando estrutura... â
Templates + configs + fixtures
đ§Ș Executando testes... â
12 testes passando, 85% cobertura
đ Gerando relatĂłrios... â
Dashboard HTML + resumo executivođ Resultado: Estrutura completa e organizada
qa/MyApp/ # đŻ TUDO em um Ășnico diretĂłrio!
âââ mcp-settings.json # âïž ConfiguraçÔes do projeto
âââ tests/
â âââ analyses/ # đ Dados brutos (JSON)
â â âââ analyze.json # Mapeamento de cĂłdigo
â â âââ coverage-analysis.json
â â âââ risk-map.json
â â âââ TEST-QUALITY-LOGICAL.json
â âââ reports/ # ïżœ RelatĂłrios legĂveis
â â âââ QUALITY-REPORT.md # Resumo executivo
â â âââ PLAN.md # Plano de testes
â â âââ PYRAMID.md # AnĂĄlise de pirĂąmide
â â âââ PYRAMID.html # Dashboard pirĂąmide
â â âââ COVERAGE-REPORT.md
â â âââ DIFF-COVERAGE.md
â â âââ SELF-CHECK.md # Validação de ambiente
â âââ unit/ # đŹ Testes unitĂĄrios
â âââ integration/ # đ Testes de integração
â âââ e2e/ # đ Testes E2E Playwright
âââ dashboards/
â âââ dashboard.html # đ Dashboard interativo
âââ fixtures/
âââ auth/
âââ storageState.json # SessĂ”es autenticadasRelated MCP server: Limetest MCP Server
đŠ Quality Gates & DORA Metrics (NEW v0.4.0!)
O MCP Quality CLI agora inclui Quality Gates completos para garantir que seu código atenda aos padrÔes de qualidade antes de ir para produção!
đŻ O que sĂŁo Quality Gates?
SĂŁo portas de qualidade que validam mĂ©tricas crĂticas e bloqueiam deploys arriscados automaticamente:
# Executar pipeline completo + Quality Gates
npx quality-cli analyze --mode full
# Aplicar quality gates (exit code 0/1/2)
npx quality-cli release-quality-gateđ MĂ©tricas Monitoradas
Categoria | Métricas | Threshold | Bloqueante? |
Coverage | Lines, Branches, Functions | â„80%, â„75%, â„80% | â ïž Warning |
Mutation | Overall, Critical Modules | â„50%, â„60% | â Yes (critical) |
Contracts | CDC Verification, Breaking Changes | â„95%, 0 | â Yes (breaking) |
Suite Health | Flakiness, Runtime, Parallelism | â€3%, â€12min, â„4 | â ïž Warning |
Portfolio | E2E%, Unit% | â€15%, â„60% | â ïž Warning |
Production | CFR, MTTR, Deploy Freq | â€15%, â€60min, â„1/month | â Yes (CFR) |
đš Exit Codes para CI/CD
0 â â
All gates passed (deploy allowed)
1 â â BLOCKED (blocking violations - stop deploy!)
2 â â ïž WARNINGS (non-blocking - allow with caution)đ DORA Metrics (Production)
Colete métricas DORA automaticamente de Sentry, Datadog, Grafana, Jira:
# Configurar credenciais
export SENTRY_DSN="..."
export DD_API_KEY="..."
# Coletar metrics
npx quality-cli prod-metrics-ingest --repo . --product MyApp
# Comparar vs SLOs
npx quality-cli slo-canary-check --repo . --product MyAppMétricas DORA calculadas:
đ Deployment Frequency: Quantos deploys/mĂȘs
â±ïž Lead Time for Changes: Tempo mĂ©dio de commitâdeploy
đ„ Change Failure Rate: % de deploys que falharam
đ ïž MTTR: Tempo mĂ©dio para resolver incidents
Classificação DORA Tier:
đ Elite: Deploy on-demand, LT < 1h, CFR < 5%, MTTR < 1h
đ„ High: Deploy 1x/dia-1x/semana, LT < 1 dia, CFR 5-15%, MTTR < 1 dia
đ„ Medium: Deploy 1x/semana-1x/mĂȘs, LT < 1 semana, CFR 16-30%, MTTR < 1 semana
đ„ Low: Deploy < 1x/mĂȘs, LT > 1 semana, CFR > 30%, MTTR > 1 semana
đ Integração CI/CD
GitHub Actions:
- name: Apply Quality Gates
run: npx quality-cli release-quality-gate
- name: Fail if blocked
if: failure()
run: exit 1GitLab CI:
quality_gates:
script:
- npx quality-cli release-quality-gate
allow_failure:
exit_codes: 2 # Warnings OKJenkins:
def exitCode = sh(script: 'npx quality-cli release-quality-gate', returnStatus: true)
if (exitCode == 1) { error('BLOCKED') }đ Guia Completo de Quality Gates | Exemplos CI/CD
âš Novidade v0.3.1: Retorno estruturado!
O comando auto agora retorna um objeto organizado com todos os paths gerados:
{
"ok": true,
"outputs": {
"root": "qa/MyApp",
"reports": [
"tests/reports/QUALITY-REPORT.md",
"tests/reports/PLAN.md",
"tests/reports/PYRAMID.html"
],
"analyses": [
"tests/analyses/analyze.json",
"tests/analyses/coverage-analysis.json"
],
"dashboard": "dashboards/dashboard.html",
"tests": {
"unit": "tests/unit",
"integration": "tests/integration",
"e2e": "tests/e2e"
}
},
"duration": 45230
}⥠Quickstart (v0.3.0 - One-Shot com Linguagem Natural)
đ§ Comandos em Linguagem Natural
A forma mais fĂĄcil de usar Ă© atravĂ©s de comandos em portuguĂȘs ou inglĂȘs. O Quality MCP entende o que vocĂȘ quer fazer:
// No seu cliente MCP (Claude, Cline, etc):
{
"tool": "nl_command",
"params": {
"query": "analise meu repositĂłrio e crie tudo automaticamente"
}
}Exemplos de comandos que funcionam:
// đ AnĂĄlise completa (recomendado para começar)
"analise meu repositĂłrio"
"auditar o projeto completo"
"create full quality analysis"
"run everything automatically"
// đ Apenas anĂĄlise do cĂłdigo
"sĂł analisar o cĂłdigo"
"mapear endpoints e rotas"
"scan the codebase only"
// đ Criar plano de testes
"criar plano de testes detalhado"
"gerar estratégia de qualidade"
"create comprehensive test plan"
// đïž Gerar estrutura de testes
"gerar templates de testes"
"scaffold test structures"
"create unit test boilerplate"
// đ§Ș Executar testes + cobertura
"rodar todos os testes"
"executar testes com cobertura"
"run tests and generate coverage report"đŻ Exemplo Real: AnĂĄlise de um projeto Next.js
Input:
quality auto --repo . --product "E-commerce"Output esperado:
đ Iniciando anĂĄlise mĂĄgica de qualidade...
đ Detectando linguagem e framework...
â
Detectado: TypeScript + Next.js + Prisma
đ Analisando cĂłdigo...
â
34 rotas API detectadas (/api/products, /api/users, etc.)
â
12 pĂĄginas Next.js encontradas
â
8 eventos de analytics identificados
â
3 domĂnios mapeados: auth, products, checkout
đŻ Recomendando estratĂ©gia...
â
Tipo detectado: E-commerce Platform
đ RECOMENDAĂĂO:
Unit: 70% (50-80 testes) đŽ ALTA prioridade
Integration: 20% (15-25 testes) đĄ MĂDIA prioridade
E2E: 10% (8-12 testes) đą BAIXA prioridade
đ Gerando plano de testes...
â
52 cenĂĄrios organizados por domĂnio:
- Auth: login, registro, recuperação (8 cenårios)
- Products: busca, filtros, detalhes (18 cenĂĄrios)
- Checkout: carrinho, pagamento, confirmação (12 cenårios)
- Admin: gestĂŁo produtos, pedidos (14 cenĂĄrios)
đïž Criando estrutura de testes...
â
45 arquivos de teste gerados
â
Playwright configurado (3 browsers)
â
Jest configurado para unit tests
â
Fixtures e mocks criados
đ§Ș Executando testes...
â
Unit: 23/23 passing (100%)
â
Integration: 8/8 passing (100%)
â
E2E: 6/6 passing (100%)
đ Cobertura: 78% (target: 70% â
)
đ Gerando relatĂłrios...
â
Dashboard: qa/E-commerce/tests/analyses/dashboard.html
â
Resumo: qa/E-commerce/tests/analyses/SUMMARY.md
============================================================
â
ANĂLISE COMPLETA FINALIZADA!
============================================================
đ Seu projeto agora tem 37 testes automatizados e 78% de cobertura!đ Orquestrador Auto - Modos Detalhados
Para controle mais fino, use a tool auto diretamente:
{
"tool": "auto",
"params": {
"mode": "full" // ou: analyze, plan, scaffold, run
}
}Modos disponĂveis e o que cada um faz:
đ Mode: analyze
Tempo: ~30 segundos
quality auto --mode analyzeO que faz:
Escaneia todo o cĂłdigo fonte
Detecta rotas, endpoints, eventos
Mapeia arquitetura e dependĂȘncias
Identifica domĂnios de negĂłcio
Gera:
analyze.jsoncom mapeamento completo
Ideal para: Entender a arquitetura antes de planejar testes
đ Mode: plan
Tempo: ~1 minuto
quality auto --mode planO que faz:
Tudo do
analyze+Recomenda estratégia de testes (% unit/integration/e2e)
Gera plano detalhado com cenĂĄrios
Organiza por domĂnios e prioridades
Gera:
TEST-PLAN.mdcom 30-50 cenĂĄrios
Ideal para: Revisar estratégia antes de criar testes
đïž Mode: scaffold
Tempo: ~2 minutos
quality auto --mode scaffold O que faz:
Tudo do
plan+Cria estrutura completa de arquivos
Gera templates de unit/integration/e2e
Configura Playwright, Jest, fixtures
Gera: 20-50 arquivos de teste prontos
Ideal para: Ter base sĂłlida para desenvolver testes
đ§Ș Mode: run
Tempo: ~3-5 minutos
quality auto --mode runO que faz:
Executa todos os testes existentes
Calcula cobertura total e diff
Gera relatĂłrios HTML/JSON
Cria dashboard interativo
Gera: Relatórios de execução e cobertura
Ideal para: Validar qualidade atual do projeto
đŻ Mode: full (RECOMENDADO)
Tempo: ~5-8 minutos
quality auto --mode full # ou sĂł: quality autoO que faz:
TUDO: analyze â plan â scaffold â run
Processo completo do zero ao dashboard
Gera: Estrutura completa + relatórios + métricas
Ideal para: Setup completo de qualidade em projeto novo/existente
đïž Exemplos de Uso por CenĂĄrio
đ Projeto Novo (nunca teve testes)
# 1. AnĂĄlise completa automĂĄtica
quality auto --repo . --product "MinhaApp"
# Resultado: 0 â 30+ testes em 5 minutosđ Projeto Existente (jĂĄ tem alguns testes)
# 1. SĂł analisar gaps atuais
quality auto --mode analyze
# 2. Revisar plano gerado
# 3. Decidir se quer scaffold ou sĂł rodar existentes
quality auto --mode run # sĂł executar atuaisđ CI/CD Pipeline
# Gate de qualidade rĂĄpido
quality auto --mode run --skip-scaffold
# AnĂĄlise de PR
quality diff-coverage --repo . --target-min 80đ„ Review de Arquitetura
# Gerar documentação da arquitetura atual
quality auto --mode plan --include-examples
# Compartilhar: qa/produto/tests/analyses/TEST-PLAN.mdđŻ O que o One-Shot faz automaticamente:
Detecta o repositĂłrio (busca por
.gitoupackage.json)Infere o produto do
package.json(ou usa nome da pasta)Cria
qa/<product>/mcp-settings.json(se nĂŁo existir)Analisa cĂłdigo (endpoints, eventos, testes existentes)
Recomenda estratégia (% unit/integration/e2e ideal)
Gera plano de testes estruturado
Cria scaffolds (unit, integration, e2e)
Executa testes com cobertura
Calcula cobertura total + diff vs branch base
Gera relatĂłrio executivo em
SUMMARY.md
đ Artifacts Gerados - Estrutura Detalhada
Depois de executar quality auto, vocĂȘ terĂĄ uma estrutura completa em qa/<produto>/:
qa/
âââ MinhaApp/ # đ Pasta do produto
âââ mcp-settings.json # âïž ConfiguraçÔes (auto-geradas)
â âââ product: "MinhaApp"
â âââ domains: ["auth", "user"] # đŻ Detectados automaticamente
â âââ targets: coverage, flaky % # đ MĂ©tricas de qualidade
â
âââ tests/ # đ Pasta de testes
âââ unit/ # đŹ Testes unitĂĄrios
â âââ auth.test.ts # â
Login, logout, validaçÔes
â âââ user.test.ts # â
CRUD usuĂĄrios
â âââ utils.test.ts # â
FunçÔes auxiliares
â
âââ integration/ # đ Testes de integração
â âââ api/
â â âââ auth.test.ts # â
API auth + DB
â â âââ users.test.ts # â
API users + DB
â âââ components/
â âââ forms.test.ts # â
Componentes + props
â
âââ e2e/ # đ Testes End-to-End
â âââ playwright.config.ts # âïž Config Playwright
â âââ fixtures/
â â âââ auth.ts # đ Login automatizado
â â âââ data.ts # đ Dados de teste
â âââ pages/ # đ Page Object Models
â â âââ login.page.ts
â â âââ dashboard.page.ts
â âââ specs/ # đ§Ș CenĂĄrios de teste
â âââ auth/
â â âââ login.spec.ts # â
Login vĂĄlido/invĂĄlido
â â âââ recovery.spec.ts # â
Recuperação senha
â âââ user/
â âââ profile.spec.ts # â
Edição perfil
â âââ settings.spec.ts # â
ConfiguraçÔes
â
âââ analyses/ # đ RelatĂłrios e anĂĄlises
âââ analyze.json # đ Mapeamento cĂłdigo fonte
â âââ routes: [...] # đŁïž 34 rotas detectadas
â âââ endpoints: [...] # đ 23 endpoints API
â âââ events: [...] # đĄ 12 eventos analytics
â
âââ TEST-PLAN.md # đ Plano detalhado de testes
â âââ đ EstratĂ©gia (70% unit, 20% integ, 10% e2e)
â âââ đŻ 52 cenĂĄrios por domĂnio
â âââ đ Fluxos crĂticos prioritĂĄrios
â âââ đ Exemplos de implementação
â
âââ coverage-analysis.json # đ AnĂĄlise de cobertura
â âââ total: 78% # đ Cobertura geral
â âââ by_file: {...} # đ Por arquivo
â âââ gaps: [...] # â ïž Arquivos sem cobertura
â
âââ COVERAGE-REPORT.md # đ RelatĂłrio cobertura
â âââ đŻ Status vs targets (78% vs 70% â
)
â âââ đ Gaps crĂticos identificados
â âââ đĄ RecomendaçÔes especĂficas
â
âââ PYRAMID-REPORT.md # đș PirĂąmide de testes
â âââ Unit: 42 testes (70%) â
â âââ Integration: 12 testes (20%) â
â âââ E2E: 6 testes (10%) â
â âââ Status: đą SAUDĂVEL
â
âââ dashboard.html # đ Dashboard interativo
â âââ đ GrĂĄficos de cobertura
â âââ đș Visualização da pirĂąmide
â âââ đ Trends histĂłricos
â âââ đŻ MĂ©tricas de qualidade
â
âââ SUMMARY.md # đ Resumo executivo
âââ â
60 testes criados (42+12+6)
âââ đ 78% cobertura (target: 70%)
âââ đŻ Status: APROVADO para release
âââ đ PrĂłximos passos recomendadosđ Exemplo de RelatĂłrios Gerados
đ TEST-PLAN.md - Preview
# Plano de Testes - MinhaApp
## đ EstratĂ©gia Recomendada
- **Unit Tests:** 70% (42 testes) - LĂłgica de negĂłcio
- **Integration:** 20% (12 testes) - APIs + Database
- **E2E Tests:** 10% (6 testes) - Fluxos crĂticos
## đŻ CenĂĄrios por DomĂnio
### đ Autenticação (8 cenĂĄrios)
1. â
Login com credenciais vĂĄlidas
2. â Login com credenciais invĂĄlidas
3. đ Recuperação de senha
4. đȘ Logout e limpeza de sessĂŁo
[...]
### đ€ UsuĂĄrios (12 cenĂĄrios)
1. â
Cadastro novo usuĂĄrio
2. đ Edição de perfil
3. đïž ExclusĂŁo de conta
[...]đ SUMMARY.md - Preview
# Resumo Executivo - MinhaApp
## đŻ Status Geral: â
APROVADO
### đ MĂ©tricas de Qualidade
- **Cobertura Total:** 78% (target: 70% â
)
- **Testes Criados:** 60 (42 unit + 12 integration + 6 e2e)
- **Flaky Rate:** 0% (target: <5% â
)
- **Tempo CI:** 4.2min (target: <10min â
)
### đ Pronto para Release
â
Todos os targets atingidos
â
Fluxos crĂticos cobertos
â
Zero testes flakey
â
CI/CD configuradoïżœ Antes vs Depois - Transformação do Projeto
â ANTES - Projeto sem testes
meu-projeto/
âââ src/
â âââ pages/ # 15 pĂĄginas Next.js
â âââ api/ # 23 endpoints API
â âââ components/ # 45 componentes
â âââ utils/ # 12 funçÔes utilitĂĄrias
âââ package.json # DependĂȘncias bĂĄsicas
âââ README.md
â 0 testes
â 0% cobertura
â Sem validação de qualidade
â Deploy manual arriscado
â Bugs em produçãoâ DEPOIS - Projeto com Quality MCP
meu-projeto/
âââ src/ # â
CĂłdigo original intocado
â âââ pages/
â âââ api/
â âââ components/
â âââ utils/
âââ qa/MeuProjeto/ # đ Estrutura de qualidade completa
â âââ mcp-settings.json
â âââ tests/
â âââ unit/ # đŹ 35 testes unitĂĄrios
â âââ integration/ # đ 15 testes integração
â âââ e2e/ # đ 8 testes E2E
â âââ analyses/ # đ RelatĂłrios detalhados
âââ package.json # â
Scripts de teste adicionados
âââ playwright.config.ts # â
Config E2E
âââ jest.config.js # â
Config unit tests
âââ README.md # â
Documentação atualizada
â
58 testes automatizados
â
82% cobertura (target: 70%)
â
CI/CD com gates de qualidade
â
Deploy seguro com validação
â
Bugs detectados antes da produçãođ Impacto em NĂșmeros
Métrica | Antes | Depois | Melhoria |
Testes | 0 | 58 | +â |
Cobertura | 0% | 82% | +82% |
Bugs em Prod | ~15/mĂȘs | ~2/mĂȘs | -87% |
Tempo Deploy | 45min | 12min | -73% |
Confiança Deploy | 20% | 95% | +375% |
Setup Time | ~40h | ~8min | -99.7% |
ïżœđ Funcionalidades
đ§ Linguagem Natural: Comandos em PT/EN ("analise meu repositĂłrio")
đ Orquestrador One-Shot: Zero-setup, detecta tudo automaticamente
AnĂĄlise AutomĂĄtica: Detecta rotas, endpoints, eventos e riscos no seu cĂłdigo
Geração de Plano: Cria plano de testes estruturado por domĂnio/produto
Scaffold Inteligente: Gera estrutura completa de testes Playwright
Execução com Cobertura: Roda testes com relatórios HTML, JUnit, JSON
Relatório Executivo: Consolida resultados para aprovação de QA/Release
đââïž Como Começar - Passo a Passo
đŻ Setup RĂĄpido (5 minutos)
1ïžâŁ Clone e Configure o MCP
# Clone o repositĂłrio
git clone https://github.com/jorgsouza/mcp-Quality-CLI
cd mcp-Quality-CLI
# Instale e compile
npm install && npm run build
# Teste se funcionou
node dist/cli.js --help2ïžâŁ Configure no seu Cliente MCP
Para Claude Desktop, edite ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"quality": {
"command": "node",
"args": ["/caminho/completo/para/mcp-Quality-CLI/dist/server.js"],
"env": {
"E2E_BASE_URL": "http://localhost:3000"
}
}
}
}Para Cline (VS Code), edite .vscode/settings.json:
{
"cline.mcpServerConfig": {
"quality": {
"command": "node",
"args": ["/caminho/completo/para/mcp-Quality-CLI/dist/server.js"]
}
}
}3ïžâŁ Execute a MĂĄgica âš
# No terminal do seu projeto:
cd /caminho/do/seu/projeto
# Execute a anĂĄlise completa
node /caminho/para/mcp-Quality-CLI/dist/cli.js auto --repo . --product "MeuApp"Ou via Cliente MCP:
{
"tool": "auto",
"params": {
"repo": ".",
"product": "MeuApp",
"mode": "full"
}
}đŹ Exemplo PrĂĄtico: Projeto Next.js
# Vamos dizer que vocĂȘ tem um e-commerce Next.js
cd meu-ecommerce-nextjs
# Execute o comando mĂĄgico
quality auto --repo . --product "E-commerce"
# â±ïž Aguarde 3-5 minutos...
# â
Pronto! Seu projeto agora tem:
# - 45 testes unitĂĄrios
# - 18 testes de integração
# - 12 testes E2E
# - 84% de cobertura
# - Dashboard interativo
# - RelatĂłrio executivođ§ Customização (Opcional)
Depois da primeira execução, vocĂȘ pode ajustar as configuraçÔes:
# Edite o arquivo gerado
vim qa/E-commerce/mcp-settings.json
# Ajuste domĂnios, fluxos crĂticos, targets, etc.
{
"domains": ["auth", "catalog", "cart", "checkout"],
"critical_flows": ["login", "add_to_cart", "purchase"],
"targets": {
"diff_coverage_min": 85, // Mais rigoroso
"flaky_pct_max": 2 // Menos tolerĂąncia
}
}
# Execute novamente para aplicar mudanças
quality auto --repo . --product "E-commerce"đ PrĂ©-requisitos
Node.js 20+ (recomendado: 20.11.0 ou superior)
npm ou yarn
Git (para anĂĄlise de diff coverage)
â Verificar PrĂ©-requisitos
node --version # Deve ser v20.x.x+
npm --version # Qualquer versĂŁo recente
git --version # Qualquer versĂŁo recenteđ§ Instalação Detalhada
Método 1: Desenvolvimento (Recomendado)
# 1. Clone o repositĂłrio
git clone https://github.com/jorgsouza/mcp-Quality-CLI.git
cd mcp-Quality-CLI
# 2. Instale dependĂȘncias
npm install
# 3. Compile TypeScript
npm run build
# 4. Teste a instalação
node dist/cli.js --version
node dist/cli.js --help
# 5. Configure no seu cliente MCP (ver seção "Como Começar")Método 2: Global (Para uso direto no terminal)
# 1. Clone e instale globalmente
git clone https://github.com/jorgsouza/mcp-Quality-CLI.git
cd mcp-Quality-CLI
npm install && npm run build
npm link
# 2. Agora vocĂȘ pode usar em qualquer lugar
cd /caminho/do/seu/projeto
quality auto --repo . --product "MeuApp"Método 3: Via NPM (Futuro)
# Em breve estarĂĄ disponĂvel:
npm install -g quality-mcp # đ§ Em desenvolvimentođź Uso
Como MCP Server
Configure no seu mcp-settings.json (Claude Desktop, Cline, etc):
{
"mcpServers": {
"quality": {
"command": "node",
"args": ["/path/to/mcp-Quality-CLI/dist/server.js"],
"env": {
"E2E_BASE_URL": "https://staging.example.com",
"E2E_USER": "test@example.com",
"E2E_PASS": "your-password"
}
}
}
}Como CLI
1. AnĂĄlise do RepositĂłrio
quality analyze \
--repo . \
--product "MyApp" \
--domains "auth,user,search" \
--critical-flows "login,registration,search" \
--targets '{"ci_p95_min":15,"flaky_pct_max":3,"diff_coverage_min":60}' \
--base-url "https://staging.example.com"SaĂda: plan/analyze.json com rotas, endpoints, eventos e mapa de riscos.
2. Geração do Plano de Testes
quality plan \
--repo . \
--product "MyApp" \
--base-url "https://staging.example.com" \
--include-examplesSaĂda: plan/TEST-PLAN.md com plano estruturado e exemplos.
3. Scaffold dos Testes Playwright
quality scaffold \
--repo . \
--plan plan/TEST-PLAN.md \
--out packages/product-e2eSaĂda: Estrutura completa em packages/product-e2e/ com:
playwright.config.tsTestes organizados por domĂnio
Fixtures e utilitĂĄrios
README com instruçÔes
4. Execução dos Testes
# Configure variĂĄveis de ambiente
export E2E_BASE_URL="https://staging.example.com"
export E2E_USER="test@example.com"
export E2E_PASS="secure-password"
# Execute
quality run \
--repo . \
--e2e packages/product-e2e \
--report reportsSaĂda: RelatĂłrios em reports/ (HTML, JUnit, JSON).
5. RelatĂłrio Consolidado
quality report \
--in reports \
--out SUMMARY.md \
--thresholds '{"flaky_pct_max":3,"diff_coverage_min":60}' \
--ciSaĂda: SUMMARY.md pronto para PR/Release.
Pipeline Completo
Execute todas as etapas de uma vez:
quality full \
--repo . \
--product "MyApp" \
--base-url "https://staging.example.com" \
--domains "auth,user,search" \
--critical-flows "login,registration,search" \
--targets '{"ci_p95_min":15,"flaky_pct_max":3,"diff_coverage_min":60}'đ ïž Tools MCP DisponĂveis
1. analyze_codebase
Analisa o repositĂłrio para detectar rotas, endpoints, eventos e riscos.
ParĂąmetros:
{
repo: string; // Caminho do repositĂłrio
product: string; // Nome do produto
domains?: string[]; // ex: ["auth","user"]
critical_flows?: string[]; // ex: ["login","registration"]
targets?: {
ci_p95_min?: number;
flaky_pct_max?: number;
diff_coverage_min?: number;
};
base_url?: string;
}2. generate_test_plan
Gera plano de testes Playwright em Markdown.
ParĂąmetros:
{
repo: string;
product: string;
base_url: string;
include_examples?: boolean;
out_dir?: string; // default: "plan"
}3. scaffold_playwright
Cria estrutura de testes Playwright com specs e configuraçÔes.
ParĂąmetros:
{
repo: string;
plan_file: string;
out_dir?: string; // default: "packages/product-e2e"
}4. run_playwright
Executa testes Playwright com cobertura e relatĂłrios.
ParĂąmetros:
{
repo: string;
e2e_dir: string;
report_dir?: string; // default: "reports"
headless?: boolean; // default: true
}5. build_report
Consolida relatórios em Markdown para aprovação de QA.
ParĂąmetros:
{
in_dir: string;
out_file?: string; // default: "SUMMARY.md"
thresholds?: {
flaky_pct_max?: number;
diff_coverage_min?: number;
};
}đ MĂ©tricas e Gates
Targets Recomendados
CI p95: †15 minutos (percentil 95 do tempo de CI)
Flaky Rate: †3% (testes inståveis)
Diff Coverage: ℠60% (cobertura nas mudanças)
PolĂtica de Flaky Tests
Quarentena automĂĄtica (skip temporĂĄrio)
Criar issue para investigação
SLA de 7 dias para correção
Se nĂŁo corrigido em 14 dias, remover o teste
đ CI/CD
GitHub Actions
Dois workflows prontos:
1. CI para Pull Requests (.github/workflows/ci.yml)
Executa:
AnĂĄlise do cĂłdigo
Geração de plano
Scaffold dos testes
Execução da suite smoke
ComentĂĄrio no PR com resultados
2. Nightly Full Suite (.github/workflows/nightly.yml)
Executa:
Suite completa em 3 browsers (Chromium, Firefox, WebKit)
Agregação de resultados
Notificação no Slack em caso de falha
Criação automåtica de issues
VariĂĄveis de Ambiente NecessĂĄrias
Configure no GitHub Secrets:
E2E_BASE_URL # URL do ambiente de testes
E2E_BASE_URL_STAGING # URL do staging (nightly)
E2E_USER # UsuĂĄrio de teste
E2E_PASS # Senha de teste
SLACK_WEBHOOK_URL # Webhook do Slack (opcional)đ Estrutura do Projeto
mcp-Quality-CLI/
âââ src/
â âââ server.ts # MCP server principal
â âââ cli.ts # CLI wrapper
â âââ tools/
â â âââ analyze.ts # AnĂĄlise de cĂłdigo
â â âââ plan.ts # Geração de plano
â â âââ scaffold.ts # Scaffold de testes
â â âââ run.ts # Executor de testes
â â âââ report.ts # Gerador de relatĂłrios
â âââ detectors/
â â âââ next.ts # Detector de rotas Next.js
â â âââ express.ts # Detector de rotas Express/Fastify
â â âââ events.ts # Detector de eventos
â âââ utils/
â âââ fs.ts # UtilitĂĄrios de filesystem
âââ .github/
â âââ workflows/
â âââ ci.yml # Workflow de CI
â âââ nightly.yml # Workflow nightly
âââ package.json
âââ tsconfig.json
âââ README.mdđŻ Casos de Uso
1. Novo Projeto
# 1. Instale globalmente
npm install -g quality-mcp
# 2. Execute o pipeline completo
quality full --repo . --product "MyApp" --base-url "http://localhost:3000"
# 3. Revise os arquivos gerados
# 4. Ajuste os testes conforme necessĂĄrio
# 5. Execute novamente
quality run --repo . --e2e packages/product-e2e2. Projeto Existente
# 1. Analise o cĂłdigo existente
quality analyze --repo . --product "MyApp"
# 2. Gere o plano
quality plan --repo . --product "MyApp" --base-url "http://localhost:3000"
# 3. Revise o plano (plan/TEST-PLAN.md)
# 4. Ajuste conforme necessĂĄrio
# 5. Crie os testes
quality scaffold --repo . --plan plan/TEST-PLAN.md3. CI/CD
# Adicione ao seu workflow
- name: Run E2E Quality Check
run: |
npm install -g quality-mcp
quality full \
--repo . \
--product "${{ github.repository }}" \
--base-url "${{ secrets.E2E_BASE_URL }}"đ€ Contribuindo
ContribuiçÔes são bem-vindas! Por favor:
Fork o projeto
Crie uma branch para sua feature (
git checkout -b feature/AmazingFeature)Commit suas mudanças (
git commit -m 'Add some AmazingFeature')Push para a branch (
git push origin feature/AmazingFeature)Abra um Pull Request
â FAQ - Perguntas Frequentes
Q: O comando falha com "command not found"
A: Verifique se compilou corretamente:
cd mcp-Quality-CLI
npm run build
node dist/cli.js --help # Deve mostrar ajudaQ: NĂŁo detectou minha linguagem/framework
A: Atualmente suportamos:
â JavaScript/TypeScript (Node.js, Next.js, React)
â Go (gin, echo, gorilla/mux)
â Python (FastAPI, Django, Flask)
â Java (Spring Boot, Maven, Gradle)
â C# (.NET Core, ASP.NET)
â PHP (Laravel, Symfony)
â Ruby (Rails, Sinatra)
Q: Posso usar em projetos privados/comerciais?
A: Sim! Licença MIT permite uso comercial. Todos os dados ficam locais.
Q: Como personalizar os templates gerados?
A: Edite os arquivos em src/tools/templates/ e recompile:
# Personalize templates
vim src/tools/templates/playwright.config.template.ts
npm run buildQ: DĂĄ para integrar com meu CI/CD?
A: Sim! Exemplos:
GitHub Actions:
- name: Quality Gate
run: |
npx quality-mcp auto --mode run
npx quality-mcp diff-coverage --target-min 80GitLab CI:
quality_check:
script:
- npm install -g quality-mcp
- quality auto --mode run --repo .Q: Onde ficam salvos os dados?
A: Tudo fica local no seu projeto em qa/<produto>/. Nada Ă© enviado para servidores externos.
Q: Como desinstalar?
A:
# Se instalou globalmente
npm unlink quality-mcp
# Remover pasta
rm -rf /caminho/para/mcp-Quality-CLI
# Remover do config MCP
# Edite seu claude_desktop_config.json ou settings.jsonđš Troubleshooting
â Erro: "Cannot find module"
# Solução: Reinstale dependĂȘncias
rm -rf node_modules package-lock.json
npm install
npm run buildâ Erro: "Permission denied"
# Solução: Ajuste permissÔes
chmod +x dist/cli.js
# Ou use: node dist/cli.js em vez de ./dist/cli.jsâ Erro: "Git not found"
# Solução: Instale git ou pule diff coverage
quality auto --skip-run # Pula execução que precisa de gitâ Testes E2E falhando
# Solução: Verifique variåveis de ambiente
export E2E_BASE_URL="http://localhost:3000"
export E2E_USER="test@example.com"
export E2E_PASS="password123"
# Ou rode sem E2E
quality auto --mode scaffold # SĂł cria estruturađ Debug Mode
# Para mais logs detalhados
DEBUG=quality:* quality auto --repo .đ Suporte Multi-Linguagem
O Quality MCP oferece suporte END-TO-END para mĂșltiplas linguagens com adapters nativos!
Linguagem | Analyze | Coverage | Mutation | Scaffold | Status |
TypeScript | â | â | â | â | đą Completo |
JavaScript | â | â | â | â | đą Completo |
Python | â | â | â | â | đą Completo |
Go | â | â | â | â | đą Completo |
Java | â | â | â | â | đą Completo |
Ruby | âȘ | âȘ | âȘ | âȘ | âȘ Planejado Q2 2026 |
Legenda
â Suportado - Funcional e testado
đĄ Parcial - Funcional mas nĂŁo testado extensivamente
âȘ Planejado - Em desenvolvimento
Detalhes por Linguagem
TypeScript/JavaScript
Frameworks: Vitest, Jest, Mocha
Coverage: Coverage-v8, istanbul/nyc
Mutation: Stryker
Formats: LCOV, JSON (Istanbul)
Status: â Produção
Python
Frameworks: pytest, unittest
Coverage: coverage.py, pytest-cov
Mutation: mutmut
Formats: Cobertura XML
Status: â Produção
Go
Frameworks: go test
Coverage: go test -cover
Mutation: go-mutesting
Formats: coverage.out
Status: â Produção
Java
Frameworks: JUnit 5, JUnit 4, TestNG
Build Tools: Maven, Gradle
Coverage: JaCoCo
Mutation: PIT (PITest)
Formats: JaCoCo XML/CSV/HTML
Status: â Produção
Setup RĂĄpido por Linguagem
Para instruçÔes detalhadas de setup, veja: SETUP-BY-LANGUAGE.md
TypeScript/JavaScript:
npm install -D vitest @vitest/coverage-v8 @stryker-mutator/corePython:
pip install pytest pytest-cov mutmut hypothesisGo:
go install gotest.tools/gotestsum@latest
go install github.com/zimmski/go-mutesting/cmd/go-mutesting@latestđ Licença
MIT License - veja o arquivo LICENSE para detalhes.
đ Links Ăteis
đĄ Roadmap
Suporte a testes de API (REST/GraphQL)
Integração com Cypress
Suporte a testes de mutação
Dashboard web para visualização de métricas
Integração com Jira/Linear para tracking de flaky tests
Suporte a mĂșltiplos ambientes (dev, staging, prod)
Geração de mocks automåticos
đ Suporte
Para dĂșvidas ou problemas:
Desenvolvido com â€ïž para melhorar a qualidade do seu software
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityDmaintenanceGenerates intelligent Playwright locators with reliability rankings, creates Page Object Models, and runs test automation scripts directly from your IDE or AI assistant.Last updated5201MIT
- Alicense-qualityCmaintenanceEnables automated end-to-end testing powered by Playwright where test cases are defined in natural language and executed by AI. Uses lightweight snapshot analysis with vision mode fallback for sophisticated testing scenarios.Last updated3Apache 2.0
- Flicense-qualityCmaintenanceEnables AI assistants to execute browser automation, perform QA tasks, and generate test code through natural language commands using Playwright.Last updated5
- Flicense-qualityBmaintenanceEnables automated QA testing by running a pipeline of AI agents that generate test scenarios, architect test layers, write Playwright tests, and review code, all grounded in feature requirements and API contracts.Last updated
Related MCP Connectors
AI QA tester â real browsers scan sites for bugs, SEO, perf, and accessibility issues via chat.
Browser-backed QA with evidence and fix-ready reports for coding agents.
AI Agent with Architectural Memory. Impact analysis (free), tests and code from the graph (pro).
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/jorgsouza/mcp-Quality-CLI'
If you have feedback or need assistance with the MCP directory API, please join our Discord server