qai-consultant-mcp
Listed on the official MCP registry (io.github.gvasile29/qai-consultant-mcp), Glama, and Awesome MCP Servers.
A local, fully keyless MCP server: standards-grounded QA knowledge retrieval (ISTQB, OWASP, IEEE, ISO, EU AI Act), deterministic QA effort estimation, QA document quality review, test-results health analysis, and QA process maturity assessment — callable directly from Claude Code, Claude Desktop, or claude.ai.
No API keys, no Pinecone, no cloud LLM calls. It runs a local embedding index over a self-authored QA knowledge base and does the estimation math itself; the client LLM writes the narrative, this server just supplies grounding and numbers.
This package is the MCP companion to QAI Consultant, an AI QA Architect web app / CLI. If you're looking for the full app (Test Strategy / Risk Register / Effort Report generation with a browser UI), see the main project instead — this package is just the MCP server piece of it.
Install
uvx qai-consultant-mcp
Claude Code:
claude mcp add qai-consultant -- uvx qai-consultant-mcp
Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"qai-consultant": {
"command": "uvx",
"args": ["qai-consultant-mcp"]
}
}
}
First run downloads the embedding model (sentence-transformers/all-MiniLM-L6-v2, CPU-only) and builds a local index — this takes a minute or two the first time, then it's cached.
Tools
| Tool | What it does |
|---|---|
retrieve_qa_knowledge |
Grounding chunks from the knowledge base (ISTQB, OWASP, IEEE, ISO standards; testing methodologies; audit/evaluation frameworks; the EU AI Act), filterable by category |
list_kb_sources |
Every document in the knowledge base, grouped by category |
estimate_qa_effort |
Deterministic PERT-based effort estimate (baseline + complexity multipliers + team capacity + confidence score) — no LLM narrative, you write your own from the numbers |
review_qa_document |
Deterministic 0–100 quality score for an existing Test Plan/Strategy/test case list across six ISTQB/IEEE-829-grounded dimensions, with findings and resolved KB citations — no LLM scoring, you write the narrative from the findings |
analyze_test_results |
Deterministic health metrics from JUnit XML or CSV test execution data — flaky tests, ever-failing tests, slowest tests, and failure clustering — no LLM anywhere in this tool |
assess_qa_maturity |
Deterministic indicative TMMi process-maturity level (1-3, never a certified 4-5) from a free-text description or pasted document, plus a conditional 7-check EU AI Act Articles 9-15 readiness score when the input signals an AI/ML system — no LLM anywhere in this tool |
Try It — Example Prompts
Type these directly in Claude Code, Claude Desktop, or claude.ai once the server is attached:
- "Using qai-consultant, what does the knowledge base say about risk-based testing?" →
retrieve_qa_knowledge - "List every document in the qai-consultant knowledge base, grouped by category." →
list_kb_sources - "Using qai-consultant's estimate_qa_effort, estimate the effort for a B2B SaaS project called 'Test Migration', React + Node.js + PostgreSQL, 2 QA / 5 dev engineers, 3-month timeline, Agile/Scrum, no notable known risks, minimal existing test automation, no special compliance requirements." →
estimate_qa_effort - "Here's a Test Plan [paste it] — use qai-consultant to review it with review_qa_document and give me the score and findings." →
review_qa_document - "Here's a JUnit XML report from my last 3 CI runs [paste them] — use qai-consultant's analyze_test_results to find flaky tests." →
analyze_test_results
The first one (retrieve_qa_knowledge) is the fastest way to confirm the server actually attached.
Prompts
qa_project_interview— the project-intake interview (11 questions covering scope, tech stack, team, timeline, risks, compliance)risk_register_structure— Risk Register document structure + grounding instructionstest_strategy_structure— Test Strategy document structure + grounding instructionstest_plan_structure— IEEE 829-aligned Test Plan structure + grounding instructions
Each *_structure prompt instructs the client to ground its generation in retrieve_qa_knowledge results with [Source N] citations, and to label the output as AI-generated.
Privacy
Usage telemetry is off by default. Set QAI_TELEMETRY=1 to opt in. Even then, only the tool name, a success flag, duration, retrieval k/category, package/Python version, OS family, and a random anonymous install ID are sent — never your query text, project details, or knowledge-base content.
Source
github.com/gvasile29/qai-consultant — Apache 2.0 licensed.
Metadata
Release files for qai-consultant-mcp 3.5.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| qai_consultant_mcp-3.5.1.tar.gz | 349.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| qai_consultant_mcp-3.5.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 609.2 kB
Release files / qai_consultant_mcp-3.5.1.tar.gz
| Download URL | qai_consultant_mcp-3.5.1.tar.gz |
|---|---|
| Size | 349.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
eb1e92b6955972fc439b8579c18a63acc5e9975ab3b49d7f0204843291217f70
|
|
BLAKE2b-256 checksum How to use checksums |
b07b0d575b20d931c50bb957d0cd07a3f21d3720d109b128ef9aceb1dc9cebc6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.3
|
Release files / qai_consultant_mcp-3.5.1-py3-none-any.whl
| Download URL | qai_consultant_mcp-3.5.1-py3-none-any.whl |
|---|---|
| Size | 260.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ae38cfdfdd3c9bb5f8c62913d076511c12cdf6c3f64532b04f0fdad57b3f64d6
|
|
BLAKE2b-256 checksum How to use checksums |
257463b641607fe83e872caf8f05850d06d91173caa222432c8b9da6d29a8d19
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.3
|