MCP QA Engineer SDET
MCP QA 엔지니어 SDET
소프트웨어 QA에 특화된 도구를 갖춘 MCP 서버입니다. Model Context Protocol을 지원하는 모든 IDE 또는 클라이언트에 연결하여 사용자 스토리 분석, 테스트 전략, BDD/Gherkin, 계약 테스트(Pact), 통합 테스트(Testcontainers), 성능 테스트(k6), 보안 테스트(OWASP) 및 CI/CD에 접근할 수 있습니다.
사전 요구 사항
npm 9+
Git
Related MCP server: sumo-qa
설치
# 1. Clonar ou entrar na pasta
cd mcp-testing
# 2. Instalar dependências
npm install
# 3. Compilar TypeScript
npm run build빌드 후 서버는 dist/index.js에서 사용할 수 있습니다.
빌드 없이 개발하려면:
npm run dev # usa tsx — não requer compilação사용 가능한 도구 (tools)
도구 | 설명 |
| 사용자 스토리 완전 분석: 분해, 기준, 계층별 시나리오, 위험 맵, 테스트 데이터, 체크리스트 |
| 시스템 테스트 전략: 조정된 피라미드, 도구, CI/CD, 커버리지 목표, 로드맵 |
| Gherkin의 BDD 시나리오: 해피 패스, 부정 케이스, 엣지 케이스, 시나리오 개요, 데이터 테이블 |
| Pact(CDC) 계약: 상호작용, provider states, matchers, 버전 관리, can-i-deploy |
| 통합 테스트: Testcontainers, WireMock, 설정/해제, 동시성, 관찰 가능성 |
| 완전한 k6 계획: smoke/load/stress/spike/soak, 임계값, 결과 분석 |
| 기능 유형별 OWASP Top 10 체크리스트 + 헤더, SAST/DAST, 승인 기준 |
| 테스트 코드 검토: 안티패턴, 격리, 어설션, 모의 객체, 커버리지 |
| 불안정한 테스트 진단: 가설, 단계, 코드 수정, 예방 정책 |
| CI/CD 파이프라인: 단계, 병렬 처리, 캐시, 최소 커버리지, 품질 게이트 |
| 아티팩트별 체크리스트: 사용자 스토리, 계획, 테스트 케이스, 코드, 계약, 스위트, 버그 리포트 |
사용 가능한 리소스 (resources)
URI | 설명 |
| 테스트 피라미드: 분포, 목표, 안티패턴 |
| 언어 및 필요에 따른 도구 선택 매트릭스 |
| 완전한 BDD Feature File 템플릿 |
| 준비된 k6 스크립트: smoke, load, stress, spike, soak |
| QA/SDET 용어집 |
사용 가능한 프롬프트
프롬프트 | 설명 |
| 사용자 스토리 분석 세션 |
| 안내 TDD 세션 (Red → Green → Refactor) |
| 테스트 계획 수립 |
| 테스트 또는 환경 실패 진단 |
IDE별 설정
VS Code (GitHub Copilot Agent)
워크스페이스 루트에 .vscode/mcp.json을 생성하거나 편집하세요:
{
"servers": {
"qa-sdet": {
"type": "stdio",
"command": "node",
"args": ["${workspaceFolder}/mcp-testing/dist/index.js"]
}
}
}MCP를 지원하는 GitHub Copilot 필요 (VS Code 1.99+). Settings → GitHub Copilot → MCP에서 활성화하세요.
사용자 settings.json을 통한 대안 (전역 범위):
{
"mcp": {
"servers": {
"qa-sdet": {
"type": "stdio",
"command": "node",
"args": ["C:/caminho/absoluto/mcp-testing/dist/index.js"]
}
}
}
}Cursor
프로젝트 루트에 .cursor/mcp.json을 생성하세요:
{
"mcpServers": {
"qa-sdet": {
"command": "node",
"args": ["./mcp-testing/dist/index.js"]
}
}
}또는 Cursor → Settings → MCP에서 그래픽 인터페이스를 통해 전역 설정을 구성하세요.
Claude Desktop
Windows — %APPDATA%\Claude\claude_desktop_config.json 편집:
{
"mcpServers": {
"qa-sdet": {
"command": "node",
"args": ["C:\\Users\\SeuUsuario\\caminho\\mcp-testing\\dist\\index.js"]
}
}
}macOS — ~/Library/Application Support/Claude/claude_desktop_config.json 편집:
{
"mcpServers": {
"qa-sdet": {
"command": "node",
"args": ["/Users/seuusuario/caminho/mcp-testing/dist/index.js"]
}
}
}Linux — ~/.config/Claude/claude_desktop_config.json 편집:
{
"mcpServers": {
"qa-sdet": {
"command": "node",
"args": ["/home/seuusuario/caminho/mcp-testing/dist/index.js"]
}
}
}파일을 편집한 후 Claude Desktop을 다시 시작하세요.
Windsurf (Codeium)
~/.codeium/windsurf/mcp_config.json 편집:
{
"mcpServers": {
"qa-sdet": {
"command": "node",
"args": ["/caminho/absoluto/mcp-testing/dist/index.js"]
}
}
}Continue.dev
~/.continue/config.json (또는 config.yaml) 편집:
{
"experimental": {
"modelContextProtocolServers": [
{
"transport": {
"type": "stdio",
"command": "node",
"args": ["/caminho/absoluto/mcp-testing/dist/index.js"]
}
}
]
}
}Zed
Zed 설정 파일 편집 (~/.config/zed/settings.json):
{
"context_servers": {
"qa-sdet": {
"command": {
"path": "node",
"args": ["/caminho/absoluto/mcp-testing/dist/index.js"]
}
}
}
}모든 MCP 클라이언트 (일반)
서버는 표준 stdio 전송을 사용합니다. 다음과 같이 설정하세요:
{
"command": "node",
"args": ["/caminho/absoluto/para/mcp-testing/dist/index.js"],
"transport": "stdio"
}사용 예시
IDE 채팅에서
Analise esta User Story:
"Como usuário, quero resetar minha senha para recuperar acesso à conta"어시스턴트가 자동으로 analyze_user_story를 호출하고 구조화된 분석을 반환합니다.
Crie cenários Gherkin para o fluxo de checkout com os critérios:
- Usuário com carrinho não vazio pode finalizar compra
- Pagamento com cartão inválido é rejeitado com mensagem
- Frete é calculado pelo CEP do endereço de entregaGere um plano de performance para POST /api/orders com SLA p95 < 400msRevise este código de teste:
[colar o código]사전 구축된 프롬프트 사용
MCP 프롬프트를 지원하는 IDE(Claude Desktop 및 Cursor 등)에서:
/analyze-story— 사용자 스토리 분석/start-tdd— TDD 세션/write-test-plan— 테스트 계획/debug-failure— 실패 진단
서버가 작동하는지 확인
# Executar diretamente e verificar output de inicialização
node dist/index.js
# Deve exibir em stderr: "MCP QA SDET Server v2.0.0 pronto."
# Ou via npm
npm start개발
# Modo desenvolvimento (sem compilação)
npm run dev
# Compilar para produção
npm run build
# Watch mode (recompila ao salvar)
npx tsc --watch문제 해결
실행 시 "Cannot find module" 오류
npm start 전에 npm run build를 실행하세요. dist/ 디렉토리가 존재해야 합니다.
IDE에 서버가 나타나지 않음
설정 파일의 절대 경로 확인
Node.js 18+가 설치되었는지 확인:
node --version빌드가 생성되었는지 확인:
ls dist/index.js설정 변경 후 IDE 다시 시작
빌드 시 TypeScript 오류
npx tsc --noEmit # verificar erros sem gerar arquivos연결 시간 초과
클라이언트 설정에 timeout 추가:
{
"command": "node",
"args": ["/caminho/dist/index.js"],
"timeout": 10000
}프로젝트 구조
mcp-testing/
├── src/
│ └── index.ts # Servidor MCP completo
├── dist/ # Gerado pelo build (não versionar)
│ └── index.js
├── package.json
├── tsconfig.json
├── SYSTEM_PROMPT.md # Prompt de sistema QA SDET Senior
└── README.md기술 스택
TypeScript 5
Node.js 18+
Michael Maia — QA 엔지니어 SDET 개발 LinkedIn · GitHub · QA Playground
Available Tools
11 toolsanalyze_user_storyA
Analisa uma User Story e retorna framework completo de análise QA: decomposição, critérios de aceitação, cenários por camada (unit/contrato/integração/E2E), mapa de riscos por tipo de feature, perguntas de qualidade, dados de teste e checklist de completude.
| Name | Required | Description | Default |
|---|---|---|---|
| story | Yes | Texto completo da User Story. | |
| context | No | Contexto adicional: regras de negócio, restrições, integrações conhecidas. | |
| tech_stack | No | Stack tecnológica (ex.: 'Node.js, PostgreSQL, React'). | |
| feature_type | No | Tipo de feature para adequar riscos de segurança e checklist. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It explicitly enumerates the output contents (decomposition, acceptance criteria, scenarios per layer, risk map, quality questions, test data, checklist), making it clear this is a read/analysis operation with no side effects. However, it doesn't specify output format or any constraints, but it is sufficient for a non-mutating tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the main purpose and then lists the output components. It is efficient with no wasted words, though it is dense and could be slightly restructured for readability. Overall, it earns its length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no output schema, the description adequately summarizes the tool's rich output (a framework with multiple sections). It covers the tool's behavior and what to expect, though it could mention the output format or any limitations. Still, it is complete enough for a comprehensive analysis tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for all four parameters (story, context, tech_stack, feature_type) with 100% coverage. The tool description does not add additional parameter semantics beyond what the schema states, so it meets the baseline for full coverage without extra value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it analyzes a User Story and returns a comprehensive QA analysis framework, listing specific components (decomposition, acceptance criteria, scenarios per layer, risk map, quality questions, test data, checklist). This distinguishes it from sibling tools that focus on specific test artifacts (e.g., create_gherkin_scenarios, generate_performance_plan).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for obtaining a complete QA analysis of a user story, but it does not explicitly state when to use this tool versus alternatives like generate_test_strategy or create_gherkin_scenarios. No exclusions or alternative guidance is provided, so usage context is only implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_gherkin_scenariosA
Cria cenários BDD em Gherkin (Given-When-Then) a partir de critérios de aceitação. Inclui happy path, negativos, edge cases, Esquema do Cenário com tabelas e checklist de step definitions.
| Name | Required | Description | Default |
|---|---|---|---|
| context | No | Contexto adicional: precondições, integrações. | |
| user_role | No | Papel do usuário (ex.: 'usuário autenticado', 'admin'). | |
| feature_name | Yes | Nome da feature. | |
| acceptance_criteria | Yes | Critérios de aceitação. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the output includes various scenario types and a step definitions checklist, which is helpful. However, it does not mention behavioral traits like whether the tool is read-only, any prerequisites for input quality, or output format constraints, leaving some uncertainty.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that immediately states the core function, followed by a comma-separated list of inclusions. It is front-loaded, concise, and contains no extraneous words. Every part adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema and annotations, the description provides a fairly complete picture: it specifies input (acceptance criteria) and output content (scenario types, outlines, checklist). Minor details like output format (plain text vs. JSON) or error handling are missing, but the description covers essential usage information for a generative tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with basic but adequate descriptions for each parameter. The tool description adds no additional meaning beyond what the schema already provides (e.g., it does not explain how 'context' influences generation). Baseline 3 is appropriate as the schema covers the parameters, and the description does not enhance their semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates BDD scenarios in Gherkin from acceptance criteria, listing specific output types (happy path, negatives, edge cases, Scenario Outline with tables, step definitions checklist). This verb-resource combination is distinct from sibling tools like analyze_user_story or generate_test_strategy.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: when you have acceptance criteria and need BDD scenarios. However, it does not provide explicit guidance on when not to use this tool or suggest alternatives (e.g., when to use design_contract_tests instead). The context is clear but lacks exclusionary or comparative advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
design_contract_testsB
Projeta testes de contrato Consumer-Driven (Pact) entre consumer e provider. Retorna estrutura de interações, provider states, matchers recomendados, versionamento e integração CI/CD com can-i-deploy.
| Name | Required | Description | Default |
|---|---|---|---|
| consumer | Yes | Nome do serviço consumidor. | |
| provider | Yes | Nome do serviço provedor. | |
| tech_stack | No | Stack do consumer e provider. | |
| interactions | Yes | Descrição das interações: endpoints, métodos, payload esperado. | |
| pact_broker_url | No | URL do Pact Broker. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It indicates the tool returns a design output (non-destructive implied) but does not disclose potential side effects (e.g., interactions with Pact Broker), required permissions, or limitations. The optional pact_broker_url parameter hints at external calls, but this is not explained.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (two sentences) and front-loaded with the core purpose. The output list is provided in the second sentence. However, the Portuguese language may reduce readability for English-only agents, and the structure could be improved with bullet points for quick scanning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of contract testing, the description provides a high-level overview of outputs but lacks details on how the tool processes inputs, assumptions about the environment, or what the returned structure looks like. No output schema exists, so the description should be more explicit about the format and usage of the output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with concise parameter descriptions. However, the tool description adds no additional meaning beyond the schema. It does not explain relationships between parameters, expected formats, or how to structure the 'interactions' input effectively.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: designing Consumer-Driven (Pact) contract tests between consumer and provider. It uses a specific verb ('Projeta') and lists concrete outputs (interaction structure, provider states, matchers, versioning, CI/CD integration), making it distinct from siblings like design_integration_tests.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. Sibling tools exist (e.g., design_integration_tests) but the description does not differentiate them or provide context for appropriate use cases, exclusions, or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
design_integration_testsA
Projeta testes de integração entre dois componentes. Retorna estrutura de teste com Testcontainers, setup/teardown, cenários happy path, erro e concorrência, estratégia de isolamento e observabilidade.
| Name | Required | Description | Default |
|---|---|---|---|
| scenarios | No | Cenários específicos a cobrir. | |
| tech_stack | No | Linguagem, framework e tecnologias. | |
| component_a | Yes | Primeiro componente. | |
| component_b | Yes | Segundo componente (banco, API, fila, etc.). | |
| integration_type | No | Tipo de integração. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries full responsibility. It discloses what the tool produces (test structure, Testcontainers, scenarios) but omits behavioral traits like side effects (e.g., file creation), authorization needs, or persistence of results. The description adds some value beyond the schema but is not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured Portuguese sentence that front-loads the core action and then lists output elements. It is concise and clear, though it could be slightly more organized with bullet points for the return components.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (5 parameters, no output schema, no annotations), the description is adequate but incomplete. It fails to specify the output format (e.g., text, code block), prerequisites, or how it interacts with sibling tools like 'analyze_user_story' or 'review_test_code'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, providing baseline 3. The description does not add meaning beyond the schema; parameter descriptions are minimal ('Primeiro componente.'). It does not explain how parameters like integration_type influence the generated output.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool designs integration tests between two components and specifies the output elements (Testcontainers, setup/teardown, scenarios). This differentiates it from sibling tools like 'design_contract_tests' by focusing on integration rather than contract testing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when two components need integration testing but offers no explicit guidance on when to use this tool versus alternatives (e.g., contract tests, performance plans). No conditions, exclusions, or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_ci_pipelineB
Gera configuração CI/CD para GitHub Actions (e outros) com stages por camada de teste, paralelismo, cache, cobertura mínima, relatórios e gates de qualidade.
| Name | Required | Description | Default |
|---|---|---|---|
| context | No | Contexto: monorepo, containers, ambientes necessários. | |
| platform | No | Plataforma CI/CD. Padrão: github-actions. | |
| tech_stack | Yes | Linguagem e frameworks do projeto. | |
| test_types | Yes | Tipos de teste a incluir. | |
| coverage_target | No | Cobertura mínima % (ex.: 80). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description bears full responsibility for behavioral disclosure. It mentions generating configuration with specific features (test stages, parallelism, caching, coverage, reports, quality gates), which gives some insight. However, it does not clarify the output format, whether it writes files, requires project files as input, or the extent of customization, making behavioral transparency moderate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently enumerates the tool's core capabilities. It is front-loaded with the main action (generating CI/CD configuration) and lists key features. Every part adds value, though it could be slightly more structured for quick scanning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there is no output schema and the tool has 5 parameters (2 required), the description provides a good overview of what the generated configuration includes but lacks specifics on the output's nature (file type, location, template style). The thorough schema documentation partly compensates, but the description should clarify the deliverable format for complete contextual understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (all 5 parameters have descriptions), so the baseline is 3. The description adds minimal extra parameter context beyond listing the included features. It mentions 'tech_stack' and 'test_types' implicitly but does not elaborate on parameter usage, relationships, or defaults that aren't already in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The tool name 'generate_ci_pipeline' combined with the description clearly states it generates CI/CD configuration, specifically for GitHub Actions and others. The description lists included features like test stages, parallelism, caching, coverage, reports, and quality gates, making the purpose specific and distinct from sibling tools like 'generate_test_strategy' or 'quality_checklist'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lacks any when-to-use guidance, prerequisites, or comparison with sibling tools. It does not explain when to use this tool versus alternatives like 'generate_test_strategy' or 'review_test_code', leaving the agent without context to decide correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_performance_planA
Gera plano de performance com script k6 completo (smoke, load, stress, spike, soak), thresholds derivados do SLA, comandos de execução e guia de análise de resultados.
| Name | Required | Description | Default |
|---|---|---|---|
| sla | No | SLA (ex.: 'p95 < 500ms, erro < 1%'). | |
| target | Yes | Endpoint ou fluxo a testar. | |
| tech_stack | No | Stack para ajuste de métricas. | |
| test_types | No | Tipos de teste. Padrão: todos. | |
| expected_load | No | Carga esperada em produção. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the burden. It discloses that the tool generates a plan with scripts and guides, implying a non-destructive, output-producing action. However, it does not mention whether it modifies anything, requires authentication, or has side effects (e.g., file creation on disk). This is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence efficiently conveys the full scope of what the tool generates, including test types, thresholds, commands, and analysis guide. No redundancy. However, for an agent that may not read Portuguese, the language choice could be a barrier, but that does not affect conciseness scoring.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 5 parameters, no output schema, and no annotations, the description is insufficient. It fails to specify what the tool returns (e.g., a file path, a string, a structured object) and how the agent should use the result. The guide mentioned is part of the generated content, but the return format is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description does not add additional meaning to any of the 5 parameters beyond what the schema already provides. It is a general overview rather than per-parameter enrichment.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it generates a k6 performance plan including specific test types (smoke, load, stress, spike, soak), SLA-derived thresholds, execution commands, and analysis guide. The verb 'gera' and resource 'plano de performance' are specific and distinct from sibling tools like 'generate_test_strategy' or 'security_test_checklist'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool should be used when a k6 performance script is needed, but does not explicitly state when to use it versus alternatives (e.g., 'generate_test_strategy' for high-level planning). No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_test_strategyB
Gera estratégia completa de testes: pirâmide adaptada, ferramentas por camada, fluxo CI/CD, metas de cobertura, SLA de execução e roadmap faseado de implementação.
| Name | Required | Description | Default |
|---|---|---|---|
| team_size | No | Tamanho do time (solo=1, small=2-5, medium=6-15, large=15+). | |
| tech_stack | No | Linguagens, frameworks, banco, mensageria, cloud. | |
| constraints | No | Restrições: legado, cobertura atual, ferramentas obrigatórias. | |
| architecture | No | Arquitetura do sistema. | |
| system_description | Yes | Descrição do sistema ou módulo. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must communicate behavioral traits such as side effects, output format, or required permissions. The description only lists content components (e.g., pyramid, CI/CD flow) but does not clarify whether the tool saves output, returns text, or requires authentication. For a generative tool, the behavioral model is left entirely implicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the main action and enumerates the key output components. While efficient, it is a long compound sentence that could benefit from structural improvements (e.g., bullet points or clearer separation of ideas). No wasted words, but room for better readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of generating a multi-component test strategy, the description provides a list of high-level constituents but lacks details on output format, level of detail, or what the agent can expect. With no output schema, the description should clarify the output's nature (text, structured plan, etc.). It is adequate for a brief overview but not fully complete for an agent to invoke confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all five parameters having clear descriptions. The tool's description does not add additional meaning beyond what the schema provides—it lists the output components but does not map them to parameters or explain how inputs affect the generated strategy. The baseline of 3 is appropriate since the schema carries the parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool generates a complete test strategy and lists six specific components (adapted pyramid, tools per layer, CI/CD flow, coverage goals, execution SLA, phased roadmap). This distinguishes it from sibling tools that focus on narrower aspects like contract tests or performance plans. The verb 'Gera' (generates) combined with the resource 'estratégia completa de testes' provides a precise, actionable purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool versus alternatives. While it implies that it is for generating a comprehensive strategy, there is no guidance on when a user should choose this over more specific tools like 'design_contract_tests' or 'generate_performance_plan'. The context of sibling tools suggests a need for differentiation, but the description does not address it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
quality_checklistC
Retorna checklist de qualidade para um artefato específico: user story, plano de testes, caso de teste, código de teste, contrato de API, suíte completa, bug report ou critérios de aceitação.
| Name | Required | Description | Default |
|---|---|---|---|
| artifact_type | Yes | Tipo do artefato. | |
| artifact_content | No | Conteúdo do artefato para análise específica (opcional). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavioral traits. It only states it returns a checklist, but does not explain whether the optional artifact_content is used for analysis or ignored, whether the checklist is generic or content-specific, or any side effects. Safety and permissions are entirely undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the primary action (returns checklist) and lists supported artifact types. Every word is essential; no filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description should cover return format, whether artifact_content is necessary, and typical usage context. It does not. For a 2-parameter tool with an enum, the description is too minimal to enable confident invocation by an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (both parameters have descriptions). The description adds natural language expansion of the artifact_type enum values, but does not add any new meaning beyond what the schema already provides. Baseline is 3, and the description barely meets it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns a quality checklist for a specific artifact type and lists eight concrete types (user story, test plan, etc.). This provides a specific verb+resource combination and helps distinguish from some siblings, though it does not explicitly differentiate from 'security_test_checklist'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives like 'analyze_user_story' or 'security_test_checklist'. There is no mention of prerequisites, when not to use it, or how to choose artifact types. The agent must infer usage from the tool name and sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
review_test_codeA
Revisa código de teste e retorna framework de análise com categorias: design, anti-patterns críticos, isolamento, qualidade de asserções, mocks, performance e cobertura de gaps.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | Código de teste para revisão. | |
| context | No | Contexto: o que o código testa, padrões esperados. | |
| language | No | Linguagem (ex.: 'TypeScript', 'Python', 'Java'). | |
| framework | No | Framework (ex.: 'Jest', 'Pytest', 'JUnit 5', 'Playwright'). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears the full burden. It mentions the output is a 'framework de análise' (analysis framework) with specific categories, which is helpful. But it doesn't disclose if the tool modifies any state, requires authentication, has rate limits, or what happens on failure (e.g., empty code input). For a read-only review tool without annotations, this is adequate but not fully transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently conveys purpose and output. Every part (verb, resource, review categories) earns its place. No fluff, but it could be slightly restructured for readability (the list of categories is dense) – hence not a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given this is a review tool with no output schema, the description adequately explains the return value by listing analysis categories. The 4 parameters are well-documented in the schema, so no gaps there. However, for a tool that likely has complex behavior (e.g., language-specific heuristics), more detail on how language/framework affects the analysis would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all four parameters, so the baseline is 3. The description adds meaning by explaining that the tool returns a structured analysis, which hints at how the 'context' and 'language' parameters guide the review. However, it doesn't elaborate on format or defaults, so it's a minor lift above baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description starts with a specific verb ('Revisa' – reviews) and resource ('código de teste' – test code), immediately stating what the tool does. It further clarifies the output by listing detailed analysis categories (design, anti-patterns, isolation, etc.), which clearly distinguishes it from siblings like 'generate_test_strategy' or 'troubleshoot_flaky_test'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies this tool is for reviewing test code, which differentiates it from siblings that create (generate_test_strategy, create_gherkin_scenarios) or troubleshoot (troubleshoot_flaky_test) other aspects. However, it does not explicitly state when NOT to use it (e.g., for production code) or provide prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
security_test_checklistA
Retorna checklist de segurança OWASP Top 10 adaptado ao tipo de feature, com vetores de ataque, casos de teste, headers obrigatórios, ferramentas SAST/DAST e critérios de aceitação de segurança.
| Name | Required | Description | Default |
|---|---|---|---|
| context | No | Contexto: autenticação usada, dados sensíveis, regulações (LGPD, PCI-DSS). | |
| tech_stack | No | Stack para ferramentas específicas. | |
| feature_type | Yes | Tipo de feature. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It clearly states what the tool returns (a security checklist with specific components) and implies it is a read-only, consultative operation. It does not mention any side effects, required permissions, or rate limits, but for a checklist generation tool, the behavioral profile is sufficiently transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, information-dense sentence that effectively conveys the purpose and scope without superfluous words. Every element (OWASP Top 10, adaptation to feature type, specific components) earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the moderate complexity (3 parameters, no nested objects, no output schema), the description provides a complete overview of the tool's function and output components. It could be enhanced by mentioning if the checklist is returned as text, structured data, or a JSON object, but this is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters. The description adds value by explaining the overall output context (security checklist) but does not elaborate on individual parameters beyond what the schema provides. However, the required parameter 'feature_type' is well-explained via its enum in the schema, and the description's context about OWASP enhances understanding of how the parameters are used.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns an OWASP Top 10 security checklist adapted to the type of feature, including attack vectors, test cases, mandatory headers, SAST/DAST tools, and security acceptance criteria. This specific verb+resource combination distinguishes it from siblings like 'quality_checklist' (general quality) and 'analyze_user_story' (analysis, not checklist generation).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for security testing of features by mentioning OWASP Top 10, attack vectors, and security acceptance criteria. However, it does not explicitly state when not to use it (e.g., for non-security testing) or provide alternatives like 'quality_checklist' or 'analyze_user_story' for different contexts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
troubleshoot_flaky_testA
Diagnostica testes instáveis (flaky). Retorna hipóteses ordenadas por probabilidade, passos de diagnóstico, correções por causa raiz com exemplos de código e política de prevenção.
| Name | Required | Description | Default |
|---|---|---|---|
| code | No | Código do teste (altamente recomendado para diagnóstico preciso). | |
| symptoms | Yes | Frequência de falha, mensagem de erro, condições de falha (CI vs local, paralelo, horário). | |
| framework | No | Framework e linguagem. | |
| description | Yes | O que o teste verifica e como está implementado. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It indicates the tool outputs hypotheses ordered by probability and includes code examples, but it does not disclose potential side effects (e.g., if it writes to any state), rate limits, or whether it requires authentication. The description is adequate but not exhaustive for a diagnostic tool with no annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the primary action ('Diagnostica') and lists key outputs concisely. Every clause adds distinct information—hypotheses, steps, fixes with code, prevention policy—without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 4 parameters (2 required), no output schema, and no annotations. The description clarifies the output types but omits the return format, pagination behavior, or error scenarios. Given moderate complexity, the description is functional but lacks details about practical usage (e.g., what happens if code is omitted).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, but each parameter's schema description is minimal (e.g., 'Código do teste (altamente recomendado para diagnóstico preciso)'). The tool description clarifies how parameters are used collectively (e.g., symptoms used to order hypotheses), adding value beyond the schema. It does not, however, explain the interplay between parameters or optional versus required fields in detail.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses specific verbs ('Diagnostica', 'Retorna') and clearly identifies the resource ('testes instáveis (flaky)'). It lists multiple output types (hipóteses, passos de diagnóstico, correções, política de prevenção), which fully distinguishes it from sibling tools like analyze_user_story or generate_test_strategy that focus on different test lifecycle stages.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not state when to use this tool versus alternatives like review_test_code or quality_checklist. It provides no explicit guidance on prerequisites (e.g., having test logs), contexts where it is inappropriate, or how symptoms should be structured for best results.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
11 tool updates
v2.0.0- First observed
analyze_user_story - First observed
create_gherkin_scenarios - First observed
design_contract_tests - First observed
design_integration_tests - First observed
generate_ci_pipeline - First observed
generate_performance_plan - First observed
generate_test_strategy - First observed
quality_checklist - First observed
review_test_code - First observed
security_test_checklist - First observed
troubleshoot_flaky_test
TDQS
Scored across 11 tools
Each tool has a clearly defined primary purpose, spanning story analysis, test design, strategy, performance, security, CI, and code review. A few tools overlap conceptually—analyze_user_story and quality_checklist both cover user story criteria, and generate_test_strategy mentions CI/CD while generate_ci_pipeline produces actual config—but descriptions are specific enough to guide an agent to the right tool.
Most tools follow a consistent verb_noun pattern like analyze_user_story, generate_test_strategy, and review_test_code. However, security_test_checklist and quality_checklist are noun phrases without a clear verb, which breaks the pattern slightly. Overall naming remains predictable and readable.
With 11 tools, the server is well-scoped for a QA/SDET engineering domain. Each tool covers a distinct part of the QA lifecycle, from story analysis through test design, review, and CI/CD, without unnecessary redundancy or bloat.
The toolkit covers a broad QA workflow: strategy, BDD scenarios, contract/inetegration/performance/security testing, code review, flaky diagnosis, CI/CD, and checklists. Minor gaps exist—such as no dedicated unit test generation or accessibility testing—but these can be worked around using the existing tools. no critical dead ends are obvious.
Maintenance
Related MCP Connectors
Official MCP server for Qase — manage test cases, runs, suites, defects via AI tools.
MCP server for AI access to SmartBear tools, including BugSnag, Reflect, Swagger, PactFlow, QTM4J.
AgentQ MCP Server - AI-Powered Software Quality Assurance Platform
MCP server for Mint — AI-powered QA that runs your app in a real browser on every PR.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceThis MCP server enables intelligent API testing automation by combining RAG knowledge retrieval with tool execution capabilities. It allows QA engineers to perform natural language-driven API testing with contextual knowledge support.-
- AlicenseAqualityAmaintenanceAn MCP server that brings senior-QA discipline to AI coding assistants, enabling test planning, TDD, mutation testing, and code review.501,504 PyPI7Apache 2.0
- FlicenseNot gradedqualityDmaintenanceAn MCP server that enables Claude to read Jira user stories, search Confluence documentation, and generate QA artifacts like test scenarios, test cases, traceability matrices, coverage analysis, and executive summaries using GPT-4o.-
- FlicenseBqualityBmaintenanceMCP server for AI-powered QA analysis. It enables analyzing test failures, identifying root causes, suggesting fixes, classifying defects, detecting flaky tests, and generating test cases and bug reports.10-