QA-MCP: Test Standardization & Orchestration Server
QA-MCP
The Model Context Protocol (MCP) server for deterministic, structured, and scalable Quality Assurance.
🇬🇧 English
📖 Overview
QA-MCP bridges the gap between ad-hoc LLM prompts and structured software testing. It provides AI agents and MCP clients with a shared test case model, rigorous quality analysis, and powerful normalization utilities.
Say goodbye to inconsistent manual QA documents. QA-MCP ensures that whether you are generating test cases from raw feature descriptions, converting Gherkin syntax, or composing complete regression suites, your test artifacts remain standardized, reusable, and perfectly aligned across your engineering teams.
✨ Key Features
🚀 Standardized Generation: Automatically generate high-quality, structured test cases from feature descriptions and acceptance criteria.
🛠️ Smart Normalization: Seamlessly convert Gherkin, Markdown, JSON, and plain text into the canonical QA-MCP schema.
📈 Advanced Linting & Scoring: Evaluate test cases against a shared QA schema with detailed scores, issue tracking, and improvement guidance.
🔗 Xray Ready: Instantly convert standardized test cases into Xray-compatible JSON payloads for Jira integration.
📦 Suite Composition: Dynamically compose and manage Smoke, Sanity, Regression, and E2E test suites.
📊 Coverage Reporting: Track and report coverage metrics across requirements, modules, and risk areas.
Related MCP server: qa-ai-agents
🚀 Quick Start
Install via PyPI
pip install qa-mcp
qa-mcp --versionInstall via uv
pip install uv
uv pip install qa-mcp
qa-mcp --versionRun via Docker
docker pull atakanemree/qa-mcp:latest
docker run -i --rm atakanemree/qa-mcp:latest🔌 Connecting an MCP Client
Configure your preferred MCP client (e.g., Claude Desktop) to use QA-MCP.
Standard Configuration:
{
"mcpServers": {
"qa-mcp": {
"command": "qa-mcp",
"args": []
}
}
}Docker Configuration:
{
"mcpServers": {
"qa-mcp": {
"command": "docker",
"args": ["run", "-i", "--rm", "atakanemree/qa-mcp:latest"]
}
}
}🛠️ Public MCP Surface
Tools
Tool names intentionally use underscores so Claude Desktop and other strict MCP clients accept them.
Tool | Purpose |
| Generate standardized test cases from feature text and acceptance criteria. |
| Analyze a single test case, returning a quality score, issues, and improvement steps. |
| Analyze a collection of test cases and return aggregate findings. |
| Normalize Gherkin, Markdown, JSON, or plain text into the QA-MCP schema. |
| Convert a single test case into an Xray-compatible JSON payload. |
| Convert multiple test cases into Xray-compatible bulk payloads. |
| Select and compose Smoke, Sanity, Regression, or E2E suites. |
| Generate requirement, module, risk, and scenario coverage reports. |
| Get the suggested QA-MCP to Xray field mapping template. |
Resources
URI | Purpose |
| Canonical QA-MCP test case standard. |
| Lint rules, penalties, and scoring logic. |
| Xray mapping reference documentation. |
| Best-practice test case examples. |
| Anti-pattern test case examples. |
Prompts
Prompt | Purpose |
| Guide the LLM toward structured manual test creation. |
| Assist in selecting an optimal smoke suite from an existing pool. |
| Guide the generation of robust negative/edge-case scenarios. |
| Analyze existing test assets for coverage gaps. |
⚙️ Architecture & Configuration
QA-MCP is designed for secure, localized execution:
Transport: Currently operates exclusively via standard input/output (
stdio).Integrations: Direct write-capable synchronization (e.g., Jira/Xray APIs) and network listeners are planned for future roadmap milestones. Current Xray functionality focuses on robust payload generation.
Environment Variables:
Variable | Default | Description |
|
| Standard application log level. |
|
| Enables tool invocation audit logging for traceability. |
🐳 Docker Deployment
The official image is available on Docker Hub: atakanemree/qa-mcp
# Verify the packaged CLI
docker run --rm atakanemree/qa-mcp:latest --version
# Run the MCP server in stdio mode
docker run -i --rm atakanemree/qa-mcp:latest
# Docker Compose usage
docker compose up qa-mcp
docker compose --profile dev up qa-mcp-dev📚 Documentation
For deep dives into QA-MCP's architecture and contribution guidelines, explore the docs:
USAGE.md: Detailed usage examples and request payloads.
CONTRIBUTING.md: Contributor workflow and quality checks.
CHANGELOG.md: Release history.
docs/PUBLISHING.md: Package and release publishing flow.
🗺️ Roadmap
Phase 1 (Current): Standard schema, generation, linting, normalization, Xray payload export, and suite composition via
stdio.Phase 2 (Near-Term): Enhanced normalization logic for messy real-world inputs, expanded example libraries, and richer coverage reporting ergonomics.
Phase 3 (Planned): Read-only integrations for external QA systems and strictly gated, safe write-capable endpoints.
📄 License
Released under the MIT License. See LICENSE for details.
🇹🇷 Türkçe
📖 Genel Bakış
QA-MCP, LLM istemleri (prompt) ile yapılandırılmış yazılım test süreçleri arasındaki köprüyü kurar. Yapay zeka ajanlarına ve MCP istemcilerine ortak bir test senaryosu modeli, titiz bir kalite analizi ve güçlü normalizasyon araçları sunar.
Tutarsız ve manuel hazırlanan QA dokümanlarına veda edin. QA-MCP; ham özellik tanımlarından test case üretirken, Gherkin sözdizimini dönüştürürken veya kapsamlı regresyon suitleri oluştururken test varlıklarınızın standart, yeniden kullanılabilir ve yazılım ekiplerinizle mükemmel bir uyum içinde kalmasını sağlar.
✨ Temel Özellikler
🚀 Standart Üretim: Feature metinlerinden ve kabul kriterlerinden otomatik olarak yüksek kaliteli, yapılandırılmış test case'ler üretin.
🛠️ Akıllı Normalizasyon: Gherkin, Markdown, JSON ve düz metinleri standart QA-MCP şemasına sorunsuz bir şekilde dönüştürün.
📈 Gelişmiş Linting ve Skorlama: Test senaryolarını ortak kalite şemasına göre değerlendirin; detaylı skorlar, hatalar ve iyileştirme adımları elde edin.
🔗 Xray Entegrasyonuna Hazır: Standart test case'leri anında Jira/Xray uyumlu JSON payload'larına dönüştürün.
📦 Suite Yönetimi: Smoke, Sanity, Regression ve E2E test suitlerini dinamik olarak oluşturun ve yönetin.
📊 Kapsam (Coverage) Raporlama: Gereksinim, modül ve risk bazlı test kapsam metriklerini raporlayın.
🚀 Hızlı Başlangıç
PyPI üzerinden kurulum
pip install qa-mcp
qa-mcp --versionuv ile kurulum
pip install uv
uv pip install qa-mcp
qa-mcp --versionDocker ile çalıştırma
docker pull atakanemree/qa-mcp:latest
docker run -i --rm atakanemree/qa-mcp:latest🔌 MCP İstemcisine Bağlanma
Tercih ettiğiniz MCP istemcisini (örn. Claude Desktop) QA-MCP kullanacak şekilde yapılandırın.
Standart Yapılandırma:
{
"mcpServers": {
"qa-mcp": {
"command": "qa-mcp",
"args": []
}
}
}Docker Yapılandırması:
{
"mcpServers": {
"qa-mcp": {
"command": "docker",
"args": ["run", "-i", "--rm", "atakanemree/qa-mcp:latest"]
}
}
}🛠️ Public MCP Yüzeyi
Tool'lar (Araçlar)
Tool adları Claude Desktop gibi katı MCP istemcileriyle uyum için bilerek underscore (_) kullanır.
Tool | Amaç |
| Feature metni ve kabul kriterlerinden standart test case üretir. |
| Test case'i analiz eder; kalite skoru, sorunlar ve iyileştirme adımları döner. |
| Birden fazla test case için toplu analiz yapar. |
| Gherkin, Markdown, JSON veya düz metni QA-MCP şemasına dönüştürür. |
| Tek bir test case'i Xray uyumlu JSON payload'a çevirir. |
| Test case'leri toplu Xray payload formatına çevirir. |
| Smoke, Sanity, Regression veya E2E suite kompozisyonu oluşturur. |
| Gereksinim, modül, risk ve senaryo kapsamını raporlar. |
| QA-MCP -> Xray alan eşleme şablonunu döner. |
Resource'lar (Kaynaklar)
URI | Amaç |
| Kanonik QA-MCP test case standardı. |
| Lint kuralları, cezalar ve puanlama mantığı. |
| Xray mapping referans dokümantasyonu. |
| İyi/ideal örnek test case'ler. |
| Anti-pattern (hatalı) örnek test case'ler. |
Prompt'lar
Prompt | Amaç |
| LLM'i yapılandırılmış manuel test üretimine yönlendirir. |
| Mevcut havuzdan en uygun smoke suite seçimine yardımcı olur. |
| Kapsamlı negatif/uç durum senaryolarının üretilmesini sağlar. |
| Test eksikliklerini bulmak için mevcut varlıkları analiz eder. |
⚙️ Mimari ve Yapılandırma
QA-MCP, güvenli ve lokal çalışacak şekilde tasarlanmıştır:
Bağlantı (Transport): Şu anda yalnızca standart girdi/çıktı (
stdio) üzerinden çalışır.Entegrasyonlar: Doğrudan yazma yetkisine sahip API senkronizasyonları (örn. Jira/Xray'e direkt push) ve ağ dinleyicileri (network listeners) gelecek yol haritasında planlanmıştır. Mevcut Xray özelliği güçlü payload üretimine odaklanır.
Ortam Değişkenleri:
Değişken | Varsayılan | Açıklama |
|
| Uygulama log seviyesi. |
|
| İzlenebilirlik için araç çağrılarına ait audit log'ları aktifleştirir. |
🐳 Docker Dağıtımı
Resmi imaj Docker Hub üzerinde yayındadır: atakanemree/qa-mcp
# Paketlenmiş CLI'yı doğrula
docker run --rm atakanemree/qa-mcp:latest --version
# MCP server'ı stdio modunda çalıştır
docker run -i --rm atakanemree/qa-mcp:latest
# Docker Compose kullanımı
docker compose up qa-mcp
docker compose --profile dev up qa-mcp-dev📚 Dokümantasyon
Mimari detaylar ve projeye katkı rehberleri için:
USAGE.md: Detaylı kullanım örnekleri ve request payload'ları.
CONTRIBUTING.md: Katkı akışı ve kalite kontrolleri.
CHANGELOG.md: Sürüm ve değişiklik geçmişi.
docs/PUBLISHING.md: Paket ve release yayın süreci.
🗺️ Yol Haritası
Aşama 1 (Mevcut):
stdioüzerinden standart şema, üretim, linting, normalizasyon, Xray export ve suite kompozisyonu.Aşama 2 (Kısa Vadeli): Dağınık girdiler için geliştirilmiş normalizasyon mantığı, daha zengin örnek kütüphaneleri ve iyileştirilmiş raporlama ergonomisi.
Aşama 3 (Planlanan): Dış QA sistemleri için read-only entegrasyonlar ve kontrollü/güvenli write-capable uç noktalar.
📄 Lisans
MIT License ile yayınlanmıştır. Ayrıntılar için LICENSE dosyasına göz atabilirsiniz.
Available Tools
9 toolssuite_composeTest Suite OluşturBRead-onlyIdempotent
Test case listesinden Smoke/Sanity/Regression/E2E/Integration/Performance suite oluşturur.
Inputs: target (required), testcases (required), sprint, max_duration_minutes. Returns: suite, errors, excluded_count, recommendations, +4 more
suite_coverage_reportKapsam RaporuBRead-onlyIdempotent
Test case koleksiyonu için gereksinim ve modül kapsam raporu üretir.
Inputs: testcases (required), modules, requirements. Returns: gaps, module_coverage, recommendations, total_testcases, +6 more
testcase_generateTest Case ÜretARead-onlyIdempotent
Feature açıklaması ve acceptance criteria'dan standart test case üretir.
Inputs: feature (required), acceptance_criteria (required), module, risk_level, +2 more. Returns: testcases, suggestions, total_generated, coverage_summary
testcase_lintTest Case Kalite AnaliziCRead-onlyIdempotent
Test case'i analiz eder, kalite skoru ve iyileştirme önerileri döner.
Inputs: testcase (required), strict_mode, include_improvement_plan. Returns: grade, score, issues, passed, +5 more
testcase_lint_batchToplu Kalite AnaliziARead-onlyIdempotent
Birden fazla test case'i toplu analiz eder ve toplu istatistik döner.
Inputs: testcases (required), strict_mode. Returns: results, aggregate, recommendations, grade_distribution
testcase_normalizeTest Case NormalleştirCRead-onlyIdempotent
Markdown, Gherkin, JSON veya düz metni QA-MCP standardına çevirir.
Inputs: input_data (required), source_format. Returns: testcase, warnings, transformations, source_format_detected
testcase_to_xrayXray Formatına DönüştürARead-onlyIdempotent
Standart test case'i Xray import formatına dönüştürür.
project_key ve custom_field_mappings verilmezse yapılandırılmış tenant
değerleri kullanılır.
Inputs: testcase (required), test_type, project_key, custom_field_mappings, +1 more. Returns: warnings, xray_payload, field_mapping_report
testcase_to_xray_batchToplu Xray DönüşümüARead-onlyIdempotent
Birden fazla test case'i toplu olarak Xray formatına dönüştürür.
Inputs: testcases (required), test_type, project_key. Returns: summary, warnings, xray_payloads, import_payload
xray_get_mapping_templateXray Alan Eşleme ŞablonuARead-onlyIdempotent
Xray alan eşleme şablonunu döner.
Inputs: no named parameters. Returns: notes, xray_specific, standard_mappings, custom_field_suggestions
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 9 tools
Each tool has a distinct purpose: generation, linting (single vs batch), normalization, Xray conversion (single vs batch), template retrieval, suite composition, and coverage reporting. No overlapping functionality.
All tools follow a consistent lowercase verb_noun pattern (e.g., testcase_generate, testcase_lint_batch, suite_compose). The _batch suffix is uniform, and naming is clear and predictable.
With 9 tools, the set is well-scoped for a test standardization and orchestration server. It covers generation, linting, conversion, template access, and suite/coverage operations without excessive fragmentation or redundancy.
The surface covers the core workflow: generate, validate, normalize, convert, compose, and report. Missing update/delete operations are not critical for the stated purpose, but a small gap exists in not having a tool to modify or manage existing test cases directly.
Maintenance
Related MCP Connectors
QA platform for agents: coverage signals, in-repo test plans, verified tests and release governance.
Create and manage test cases, test runs and results in Testiny from your AI assistant.
Manage test suites, run tests, view results, and automate QA workflows via AI with testRigor.
Writes adversarial test suites for AI-built code. Your agent's test engineer.
Related MCP Servers
- AlicenseAqualityDmaintenanceGenerates structured, comprehensive test cases from user stories, API specs, or raw text, with automatic Excel export and Playwright automation code generation.61MIT
- AlicenseNot gradedqualityDmaintenanceEnables 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.ISC
- AlicenseNot gradedqualityCmaintenanceEnables generation of test cases, edge cases, and test matrices for software testing, integrated with MCP protocol and EU AI Act compliance.8 npm39 PyPIMIT
- FlicenseNot gradedqualityDmaintenanceProvides MCP tools that give LLM agents a full QA engineer workflow: scanning projects, generating deterministic test suites, executing them across browser/API/mobile, diagnosing failures, and proposing fixes that require human approval.-