1
What does Shuddhi QA do?
Shuddhi QA converts plain-English business requirements into production-ready test cases with steps, expected results, and quality scores โ in under 30 seconds. No manual writing. No templates to fill.
๐
Describe
Plain English req
โ
๐ข
Select Platform
D365, SF, SAP...
โ
โก
Generate
10โ30 seconds
โ
๐ค
Export
ADO, Jira, Excel
2
Open the App
Open any browser and go to https://shuddhiqacloud.pages.dev โ no installation, login, or credit card needed.
https://shuddhiqacloud.pages.dev
๐งช Shuddhi QAv12.20โ Groq ยท Freeโ๏ธ SettingsSign In
Generate Test Cases
AI-Powered Test Intelligence for Enterprise Platforms
โ
Free to use. 3 generations anonymously ยท 10 with Google/Microsoft sign-in ยท Unlimited with your own API key.
3
Understand the Two-Panel Layout
The app is split into two panels. Left panel = your inputs (platform, module, requirement). Right panel = AI-generated output (test cases, export buttons).
shuddhiqacloud.pages.dev/app
๐งช Shuddhi QAv12.20โ๏ธSign In
โ INPUT PANEL
โ Platform
D365 F&O
Salesforce
Web App
ServiceNow
SAP
Workday
โก Module
AP Invoice Processing
โข Requirement
Vendor submits invoice. AP Clerk performs 3-way match (Invoice, PO, GR). If amount โค โน50K auto-approved...
312 / 6,000
โก Generate Test Cases
โก Groq ยท Free (server-side)
โ OUTPUT PANEL
โ๏ธ Edit๐ PDF๐ Excel๐ท ADOMore โพ
D365 F&O ยท AP Invoice ยท 12 TCs ยท Good 97%
TC001E2E: Successful 3-Way Match & Auto-Approval (โคโน50K)95%
TC002E2E: Finance Manager Approval (> โน50K)100%
TC003E2E: 3-Way Match Failure โ Qty Mismatch75%
TC004Validation: Invoice Amount Exceeds Tolerance100%
+ 8 more test cases
๐กSkip for now. The app uses a shared Groq server key for your first 3 free generations. Add your own key only when you want unlimited usage.
1
Compare the 6 AI Providers
| Provider | Model | Cost / Run | Best For |
| โก Groq | Llama 3.3 70B | Free | Fastest responses, high volume |
| โฆ Gemini | 2.5 Flash | ~$0.001 | Large requirements, best value |
| ๐ค Claude | Sonnet 4 | ~$0.015 | Best quality, detailed steps |
| ๐ข OpenAI | GPT-4o | ~$0.010 | Complex multi-role flows |
| ๐ด Together AI | Open source | ~$0.002 | Cost-effective alternative |
| โ๏ธ Azure OpenAI | GPT-4o (your deployment) | Your Azure rates | Enterprise ยท BYO โ data residency in your region |
2
Open Settings โ AI Provider Tab
Click the โ๏ธ Settings gear icon (top right) โ click the AI Provider tab.
shuddhiqacloud.pages.dev/app โ Settings
โ๏ธSettings โ Configurationโ
๐ค AI Provider๐ท Azure DevOps๐ฆ Jira๐ Usage & Costโน๏ธ About
Active Provider
โก Groq
โฆ Gemini
๐ค Claude
๐ข OpenAI
๐ด Together
โ๏ธ Azure OpenAI
3
Get your API Key (Provider-specific)
| Provider | Where to get your free key |
| โก Groq (Free) | console.groq.com โ API Keys โ Create API Key |
| โฆ Gemini | aistudio.google.com โ Get API Key โ Create in new project |
| ๐ค Claude | console.anthropic.com โ API Keys โ Create Key |
| ๐ข OpenAI | platform.openai.com โ API Keys โ Create new secret key |
| ๐ด Together AI | api.together.ai โ Settings โ API Keys |
| โ๏ธ Azure OpenAI | portal.azure.com โ your Azure OpenAI resource โ Keys and Endpoint (BYO โ bring your own resource) |
๐Privacy guarantee: Keys are stored in browser localStorage only. They never touch Shuddhi QA servers โ requests go directly from your browser to the AI provider.
โ๏ธAzure OpenAI is different. Unlike the other 5 providers (one API key each), Azure needs four values. Open Settings โ AI Provider โ Your Personal API Keys โ the expandable "Azure OpenAI" row and fill in: Endpoint (https://<your-resource>.openai.azure.com), API Key, Deployment name (e.g. gpt-4o-prod), and API Version (default 2024-12-01-preview). Then click Test connection. Generation runs in the region of your own Azure resource โ ideal for enterprise data residency.
4
Quick provider switching (v12.20+)
If you configure 2 or more provider keys, you don't need to open Settings every time you want to switch between them. A small โ icon appears next to the cost hint below the Generate button. Click the cost hint to open a popover showing all your configured providers with their costs at a glance.
How it behaves
0 or 1 provider configured: cost hint is static (no โ icon) โ nothing to switch to
2+ providers configured: โ icon appears; click hint โ popover opens
Active provider is marked with a filled radio + "โ active" tag
Costs shown right-aligned in the popover โ easy to scan free vs paid
Closes on selecting a new provider, clicking outside, or pressing Esc
๐กWhy this exists: Most users pick one provider and stay there. But if you want to A/B test Claude vs Gemini on the same requirement, the popover saves you 3 clicks each switch. Settings remains the single source of truth โ the popover is just a shortcut.
โ ๏ธBoth are required (v12.16+). Generation is blocked until you select a platform AND enter a module name. A red glow appears on the missing field.
1
Select Platform
Click one of the platform chips. The platform tells the AI which terminology, navigation paths, and field names to use.
Select Platform (Required)
๐ท D365 F&O
โ๏ธ Salesforce
๐ Web App
๐ฑ Mobile
๐ง ServiceNow
๐ฅ Guidewire
๐ SAP
๐ฅ Workday
โ
D365 F&O selected โ Finance, Supply Chain, Manufacturing domain
2
Enter Module Name
Type the specific module or feature being tested. This gives the AI more context for accurate test case titles and navigation steps.
๐กGood module names: "AP Invoice Processing" ยท "Vendor Payment" ยท "Opportunity Management" ยท "ITSM Incident" ยท "Leave Management" ยท "Purchase Order Approval"
3
Smart Detect โ Auto Platform Detection
Paste your requirement first and Shuddhi QA automatically identifies the platform from the content. A green notification confirms the detected platform.
| Keywords in text | Auto-detected Platform |
| Action Pane, infolog, legal entity, financial dimension | ๐ท D365 F&O |
| SOQL, LWC, Apex trigger, Opportunity, Account | โ๏ธ Salesforce |
| PolicyCenter, ClaimCenter, underwriting | ๐ฅ Guidewire |
| incident, ITSM, service catalog, ServiceNow | ๐ง ServiceNow |
| S/4HANA, Fiori, T-code, SAP transaction | ๐ SAP |
1
Paste or type your requirement
Click the requirement textarea and paste your user story, BRD excerpt, or process description. Maximum 6,000 characters. The counter updates as you type.
Describe Your Requirement (Required)
Vendor submits invoice via portal. AP Clerk performs 3-way match (Invoice, PO, Goods Receipt). If amount โค โน50,000, auto-approved. If > โน50,000, Finance Manager must approve within 2 business days. On approval, payment is scheduled to vendor bank account. On rejection, vendor receives email with reason code.
347 / 6,000
2
What makes a good requirement
| โ
Include | โ Avoid |
| User roles (AP Clerk, Finance Manager) | Generic "test the invoice process" |
| Thresholds (โค โน50,000 / > โน50,000) | No boundary values |
| Expected outcomes (payment scheduled) | No expected results stated |
| Error paths (rejection โ email) | Only happy path described |
| 200โ500 characters minimum | Single sentence |
3
Choose Output Type
| Type | What gets generated | When to use |
| E2E Scenarios | Full end-to-end flows | Sprint testing, regression |
| Smoke Tests | Critical path only | After deployments |
| Field Validation | Input validations, boundaries | Form testing |
| Integration Tests | System integration points | API/middleware |
| Negative Tests | Error paths, invalid inputs | Security, robustness |
| Full Artifact | All 5 types combined | Comprehensive coverage |
1
Click Generate or press Ctrl+Enter
Click โก Generate Test Cases or press Ctrl+Enter. Test cases stream into the right panel in real-time. Takes 10โ30 seconds depending on provider.
โก Generating... 14s
โก Claude Sonnet ยท ~$0.015/run
D365 F&O ยท AP Invoice ยท 12 TCs โ
TC001E2E: Successful 3-Way Match & Auto-Approval95%
TC002E2E: Finance Manager Approval > โน50K100%
TC003E2E: Quantity Mismatch Failure...
2
Understand Quality Scores
| Score | Badge Color | Meaning | Action |
| 90โ100% | ๐ข Good | Complete, accurate, well-structured | Export as-is |
| 70โ89% | ๐ก Fair | Usable, minor edits may help | Quick review |
| <70% | ๐ด Needs Review | Limited context available | Edit or regenerate |
3
Pre-generation Validation Errors
| Error Message | Fix |
| "No AI provider configured" | Settings โ AI Provider โ add Groq key (free) |
| "Please select a platform" | Click a platform chip (D365, Salesforce, etc.) |
| "Please select a module or enter a custom module name" | Type module name in the module field |
| "Please describe the business flow" | Type or paste requirement in textarea |
1
Enter Inline Edit Mode
Click โ๏ธ Edit in the export toolbar. Every cell in the table becomes clickable and editable. Changes reflect immediately in all export formats.
2
Select / Deselect All (v12.15+)
Use the header checkbox to select or deselect all test cases. Only selected TCs are included in exports.
โ
All 12 TCs selected
Click to deselect all
TC001Successful 3-Way Match95%
TC002Finance Manager Approval100%
๐กToggle logic: None โ click โ All selected. All โ click โ None. Some โ indeterminate dash โ click โ All selected.
๐
Excel (.xlsx)
Click ๐ Excel. Downloads .xlsx with separate sheets per TC type. Only selected TCs included.
๐
PDF
Click ๐ PDF. Formatted document with all test cases and steps โ ideal for sign-off packages.
๐
Markdown
Click ๐ Markdown. Copies to clipboard โ paste into Confluence, Notion, or any Markdown editor.
1
Create ADO Personal Access Token (PAT)
Steps to create ADO PAT
Go to dev.azure.com โ your organization
Click your profile icon (top right) โ Personal Access Tokens
Click + New Token
Name: ShuddhiQA-PAT ยท Expiration: 90 days
Scopes: Test Plans (Read & Write) + Work Items (Read & Write)
Click Create โ Copy the token immediately (shown once only)
2
Configure in Settings โ Azure DevOps Tab
๐ทSettings โ Azure DevOps
๐ Test Connection
โ
Connected
3
Push Test Cases to ADO
Click
๐ท ADO in the export toolbar โ Select Test Plan โ
tick the AI-review acknowledgement โ Click Push. The Push button stays disabled (45% opacity) until the checkbox is ticked โ see
Ch 19 for why this gate exists.
๐ท Push to Azure DevOpsโ
โ
12 test cases ready ยท Org: SRIVaralakshmiBalaji
โ
What gets created: Test Plan ยท Test Suite per module ยท Test Cases with full steps ยท Expected results ยท State: Design
1
Get Atlassian API Token
Steps to get API token
Go to id.atlassian.com โ Security โ API tokens
Click Create API token ยท Name: ShuddhiQA
Click Create โ Copy the token
2
Configure in Settings โ Jira Tab
Settings โ Jira tab โ Enter token + email + domain (e.g. yourcompany.atlassian.net without https://).
3
Export & Import
After generating: click More โพ โ ๐ฆ Jira Zephyr. CSV downloads with all 10 Zephyr headers pre-populated. In Jira: Zephyr โ Test Cases โ Import โ Upload CSV.
๐กYou'll see a toast on download: "Jira CSV downloaded โ review in Excel before uploading to Jira." This is the AI-review reminder โ see Ch 19 for the full explanation of why this gate exists.
| Format | Use Case | Access |
| ๐ฅ Gherkin | BDD โ Cucumber, SpecFlow, Behave | More โพ โ Gherkin |
| ๐ญ Playwright | TypeScript automation skeleton | More โพ โ Playwright |
| ๐งช TestRail | CSV import for TestRail | More โพ โ TestRail |
| ๐ฎ Postman | API test collection skeleton | More โพ โ Postman |
๐กMore โพ button in the export toolbar reveals additional formats. Click once to expand, once more to close.
1
Hover โ click ๐ on any test case row
Move your mouse over any test case row. A regenerate icon appears on the right. Click it to open the refinement modal.
2
Add context and regenerate
๐ Regenerate TC001โ
Original: E2E: Successful 3-Way Match & Auto-Approval (โคโน50,000)
Additional Context (Optional)
๐กOnly that one TC is updated. The rest of the suite stays intact.
1
Using Templates
Visit shuddhiqacloud.pages.dev/templates or click Templates in the nav. Browse 100+ pre-built requirement templates. Click any to load it into the requirement field instantly.
2
Smart Detect on Paste
When you paste 100+ characters, the AI analyzes your text and suggests the platform. A notification appears confirming detection.
๐ฏSmart Detect runs automatically on every paste/input event. No button to click โ it fires in the background.
| Feature | Anonymous | Signed In |
| Free generations | 3 per session | 10 per session |
| Preference sync | Browser only | โ
All devices |
| History | โ | โ
Last 30 days |
| GDPR delete | N/A | โ
Full deletion |
๐Only email + name accessed. No Gmail, Drive, Calendar access. Standard OAuth 2.0 with minimal scopes. Keys are never synced to Firebase โ browser localStorage only.
| Action | Shortcut |
| Generate test cases | Ctrl + Enter |
| Open command palette | Ctrl + K |
| Toggle dark/light theme | Ctrl + Shift + T |
| Close modal / palette | Esc |
| Open Settings | Ctrl + , |
| Copy Markdown | Ctrl + C |
โจ๏ธCommand Palette (Ctrl+K) โ search across all 19 commands. Type "dark", "export", "templates", "settings" โ any command appears instantly.
| Tab | What you configure |
| ๐ค AI Provider | Select active provider. Paste API keys for Groq, Gemini, Claude, OpenAI, Together AI. Azure OpenAI (BYO) takes Endpoint + Key + Deployment + API Version. |
| ๐ท Azure DevOps | Org URL + PAT. Test Connection button. Validates PAT format before saving. |
| ๐ฆ Jira | Atlassian API token + email + Jira domain. Test Connection button. |
| ๐ Usage & Cost | Generation count tracker. Google Cloud Billing sync (OAuth). Token usage estimates. |
| โน๏ธ About | Version number, active provider, platform diagnostics, changelog history. |
1
Auto-shows on your first visit
The Welcome modal auto-launches the first time you load shuddhiqacloud.pages.dev/app โ even before signing in. It's tracked via a single browser flag (shuddhi-first-run-done) in localStorage, so it appears exactly once per device.
๐ Welcome to Shuddhi QAร
AI-powered test case generation for enterprise QA. Let's walk through the basics in 30 seconds.
Step 1 of 4
2
The 4 tour steps
| Step | What it teaches |
| 1. Welcome | Intro and the "what is Shuddhi QA" pitch |
| 2. Select a Platform | Highlights the platform chips on the left panel |
| 3. Describe Requirement | Points to the textarea + character counter |
| 4. Generate & Export | Shows the Generate button + export toolbar with ADO/Jira |
๐กEach step highlights the relevant UI region with a pulse animation. You can Skip tour anytime โ the flag still flips so the modal doesn't reappear next visit.
3
How to re-show the tour
The tour is one-shot per device, but you can manually replay it:
To re-trigger the welcome modal
Open DevTools (F12) โ Application tab โ Local Storage โ shuddhiqacloud.pages.dev
Delete the shuddhi-first-run-done key
Refresh the page โ the tour appears again
๐จโ๐ปIf you're writing E2E tests: Playwright scripts can set the shuddhi-first-run-done flag via addInitScript before each test, so the welcome modal doesn't block other UI interactions. Skip this if you're not running automated tests.
๐ฏDistinct from Platform. Platform = the tech stack (D365, Salesforce). Domain = the business vertical (Insurance, Banking, Healthcare). You can mix and match โ e.g. Salesforce + Insurance domain produces underwriting and policy-binding test cases.
1
6 Supported Domains
| Domain | Terminology added | Risk patterns |
| ๐ก๏ธ Insurance | Policy, claim, premium, underwriting, FNOL (First Notice of Loss) | Regulatory compliance, fraud, claims leakage |
| ๐ฆ Banking | KYC (Know Your Customer), AML (Anti-Money Laundering), ledger, settlement, reconciliation | Compliance breach, double-debit, audit trail |
| ๐ฅ HR | Onboarding, payroll, leave, performance review | PII (Personally Identifiable Info) exposure, payroll calc errors, GDPR |
| ๐ญ ERP | 3-way match, MRP (Material Requirements Planning), BOM (Bill of Materials), ledger posting | Stockout, posting reversal, period-close errors |
| ๐ Retail | Loyalty, returns, omnichannel, inventory | Oversell, price mismatch, fulfillment delay |
| ๐ฅ Healthcare | EMR (Electronic Medical Records), HL7 (data exchange standard), claims, prior auth, HIPAA | PHI (Protected Health Info) exposure, prior-auth denial, coding errors |
2
Selecting a domain
Click the Domain selector above the requirement textarea. Default is "Auto-detect" โ Shuddhi QA picks the domain from your requirement keywords (e.g. "policy", "KYC", "HL7" โ triggers the matching vertical).
Domain (Auto-detect or manual)
๐ก๏ธ Insurance
๐ฆ Banking
๐ฅ HR
๐ญ ERP
๐ Retail
๐ฅ Healthcare
โ Banking domain โ KYC + AML risk tags will be applied
3
What changes in the output
| Without domain | With Insurance domain |
| TC: "Verify form submission" | TC: "Verify FNOL submission triggers claim creation in PolicyCenter" |
| No risk tag | Tag: ๐ด Regulatory |
| Generic field names | Specific terms (premium, deductible, claimant) |
| Generic personas | Underwriter, claims adjuster, broker |
1
Currently supported (Tier 1 โ full QA translation)
| Language | Code | Best for |
| ๐ฌ๐ง English | en | Default โ global teams, ADO/Jira standard |
| ๐ฉ๐ช Deutsch (German) | de | DACH region, automotive/manufacturing |
| ๐ช๐ธ Espaรฑol (Spanish) | es | LATAM, Spain operations |
| ๐ซ๐ท Franรงais (French) | fr | France, Quebec, francophone Africa |
| ๐ง๐ท Portuguรชs (BR) | pt-BR | Brazilian enterprises |
๐Coming Soon (Tier 2): ๐ฏ๐ต ๆฅๆฌ่ช (Japanese) ยท ๐ณ๐ฑ Nederlands (Dutch) ยท ๐ฎ๐น Italiano (Italian) ยท ๐ต๐ฑ Polski (Polish). These appear in the dropdown but are disabled until full QA testing completes.
2
How to select
Choose your output language from the Language dropdown in the left panel, just above the Generate button. Selection persists across sessions and syncs to your account if signed in.
๐กYou can write requirements in English and request output in any other language. Domain terms (e.g. "underwriting", "3-way match") are translated to their localized equivalent rather than left in English.
3
What gets translated
| Element | Translated? | Notes |
| Test case titles | โ
Yes | Localized including domain terminology |
| Step actions & expected results | โ
Yes | Full localization |
| UI button labels referenced in steps | โ
Yes | e.g. "Speichern" instead of "Save" for German |
| Technical identifiers (TC001, field names) | โ Kept in English | For traceability with ADO/Jira |
| Excel/PDF column headers | โ
Yes | Headers match selected language |
โ ๏ธADO/Jira push: Test case content uses your selected language but the platform's work-item fields (State, Priority, Assigned To) stay in ADO/Jira's UI language.
โ ๏ธAdded because AI can hallucinate. Before any test case reaches your production work items, you must explicitly confirm you've reviewed them. The Push button stays disabled until you tick the acknowledgement.
1
ADO push โ review checkbox
When you click ๐ท ADO, the push modal shows an amber warning banner above the Test Plan field with the text "AI-generated โ review before pushing" and a required acknowledgement checkbox:
โ๏ธ"I've reviewed these test cases and they're ready to push." Until you tick this, the Push button stays disabled at 45% opacity โ no accidental clicks possible.
๐ผ๏ธSee Ch 8 step 3 for the modal mockup with the checkbox in context.
2
Jira Zephyr โ review reminder on download
Jira uses CSV import (no API push), so the review gate fires as a toast notification when the CSV is downloaded.
๐Toast text: "Jira CSV downloaded โ review in Excel before uploading to Jira"
๐กWorkflow: download CSV โ open in Excel โ cross-check each test case โ only then upload to Jira via Zephyr โ Test Cases โ Import.
3
Why this matters
| Without the gate | With the gate |
| 50+ hallucinated test cases in your sprint | You catch them before sprint planning |
| QA team blames "the AI tool" for bad TCs | Accountability stays with the human reviewer |
| Production incidents from untested edge cases | Edge cases verified before they go live |
๐Internal audit trail: The checkbox tick is logged in your Firestore session record (if signed in) โ useful for SOC2 / ISO27001 process evidence.
1
The Install banner
On the home page (shuddhiqacloud.pages.dev/), an "Install Shuddhi QA" banner appears at the bottom of the screen. Click Install to add it to your OS as a standalone app โ like installing any native app.
aQ
Install Shuddhi QA
Faster launch ยท offline access ยท home-screen shortcut
Not now
Install
auto-dismisses after 10s if untouched
2
What you get after installing
โก
Faster launch
App opens in its own window, no browser chrome. ~40% faster cold start than a fresh tab.
๐ก
Offline access
App shell + UI loads without network. Generation still needs a connection, but you can review prior TCs offline.
๐
Home-screen icon
aQ icon on indigo background โ same on Windows Start, macOS Dock, iOS/Android home screen.
๐
Push-ready
Foundation for future browser push notifications (e.g. "Your generation is ready").
3
Stuck on an old version?
If the app feels stale after a recent update, force a fresh fetch with Ctrl+Shift+R (hard refresh). That clears the cached version and pulls the latest from the server. For most users, this is all you ever need to do.
๐จโ๐ปFor developers / SDETs: The PWA uses a service worker (sw.js) that caches the app shell โ app.html, index.html, manifest.json, icons, fonts. Only network-bound calls are /api/claude (generation), /api/ado (push), and Firebase Auth flows. To inspect or force-update: DevTools โ Application โ Service Workers โ "Update on reload".
| Issue | Cause | Fix |
| Generate button not working | No platform or module selected | Select a platform chip โ enter module name |
| "No AI provider configured" | No API key set and server key unavailable | Settings โ AI Provider โ add Groq key (free) |
| ADO push fails with 401 | PAT expired or wrong scope | Create new PAT with Test Plans (Read & Write) scope |
| "PAT invalid or expired" | Bogus or expired ADO PAT | Generate a new PAT in ADO user settings |
| Firebase sign-in fails (network error) | Browser extension blocking requests | Try Incognito mode or disable extensions |
| Generated TCs are too generic | Requirement too brief | Add roles, thresholds, and expected outcomes to requirement |
| Character limit exceeded | Requirement over 6,000 chars | App auto-trims with notification โ reduce if needed |
| More โพ dropdown not opening | Old browser cache (pre-v12.4) | Hard refresh Ctrl+Shift+R |
| Cost hint not showing | Provider not initialized yet | Wait 2โ3 seconds after page load |
| Jira CSV import errors | Wrong domain format in Settings | Use yourcompany.atlassian.net (no https://, no trailing slash) |
๐Help page: Visit shuddhiqacloud.pages.dev/help for detailed setup guides for each AI provider, ADO, and Jira configuration steps.
๐ฌStill stuck? Email ramya9.b@gmail.com with a screenshot and the browser console output (F12 โ Console tab).
๐Live now in v12.20. Shuddhi QA is exposed as a Model Context Protocol (MCP) server. Add it to any MCP-capable AI client in 30 seconds. Five tools are available: generateTestCases, fetchJiraIssue, pushToADO, listTemplates, detectPlatform.
1
What is Model Context Protocol (MCP)?
MCP is an open protocol released by Anthropic in 2024 and adopted by Microsoft, OpenAI, and others. It lets AI assistants discover and use external tools/resources through a standard JSON-RPC 2.0 interface. Shuddhi QA implements an MCP server so any compatible AI client can invoke its test case generation, Jira fetch, and Azure DevOps push capabilities directly from chat โ without leaving the AI interface.
2
MCP server endpoint
The Shuddhi QA MCP server is hosted on Cloudflare Workers at:
| Field | Value |
| Endpoint URL | https://shuddhiqa-mcp.ramya9-b.workers.dev/mcp |
| Protocol | JSON-RPC 2.0 over HTTP POST (Streamable HTTP transport) |
| MCP version | 2025-06-18 |
| Server version | 0.1.0 |
| Authentication | None (v0.1) โ anonymous + Cloudflare DDoS protection |
| Health probe | GET /healthz returns { "ok": true } |
| Server info | GET / returns server name, version, protocol, and tool names |
3
Five tools exposed
| Tool | Purpose | Backend |
generateTestCases | Generate production-grade QA test cases for 14 enterprise platforms with real navigation paths, T-codes, table names, validation rule names, and platform-specific error messages. | Proxies to /api/claude |
fetchJiraIssue | Pull a Jira ticket's summary, description, acceptance criteria, status, and assignee. Caller supplies base URL, email, and API token. | Proxies to /api/jira |
pushToADO | Push generated test cases to an Azure DevOps Test Plan as Test Case work items. Optionally adds to a specific suite. | Proxies to /api/ado |
listTemplates | Browse a curated subset of the 110-template library, filtered by platform and business domain. | In-memory (bundled) |
detectPlatform | Identify the enterprise platform, business domain, and module from any requirement text. Returns confidence score and supporting semantic evidence. | Proxies to /api/detect |
4
Setup โ Microsoft 365 Copilot (via Copilot Studio)
Prerequisite: active Microsoft 365 Copilot license; tenant admin allows custom Copilot Studio agents with MCP connectors.
- Open copilotstudio.microsoft.com with your work account.
- Click Create โ New agent โ choose Declarative Agent.
- Name it
Shuddhi QA; paste the description from the homepage.
- In Knowledge / Actions, click Add โ MCP server.
- Paste the URL:
https://shuddhiqa-mcp.ramya9-b.workers.dev/mcp
- Authentication: None (v0.1).
- Click Test โ Copilot Studio should discover all 5 tools.
- Publish, then invoke from any Copilot surface:
@Shuddhi-QA generate D365 vendor invoice test cases.
5
Setup โ Claude Desktop
Edit your Claude Desktop config file. On Windows: %APPDATA%\Claude\claude_desktop_config.json. On macOS: ~/Library/Application Support/Claude/claude_desktop_config.json. Add:
{
"mcpServers": {
"shuddhi-qa": {
"transport": {
"type": "streamable-http",
"url": "https://shuddhiqa-mcp.ramya9-b.workers.dev/mcp"
}
}
}
}
Restart Claude Desktop. The Shuddhi QA tool surface appears in the attachments / tool list.
6
Setup โ Cursor, Continue, and other MCP clients
In Cursor: Settings โ Cursor Settings โ MCP Servers โ Add. Type: Streamable HTTP. URL: https://shuddhiqa-mcp.ramya9-b.workers.dev/mcp. Auth: None.
In Continue (VS Code / JetBrains): edit ~/.continue/config.json and add the same mcpServers block as Claude Desktop.
For any other MCP-capable client, paste the URL into whatever "Add MCP server" form they expose.
7
Authentication for Jira and Azure DevOps
When you invoke fetchJiraIssue or pushToADO from your AI client, you supply credentials per-call. They are passed through the MCP server to the target service and discarded after the request completes โ never logged, never stored.
| Tool | Required credentials |
fetchJiraIssue | Jira base URL, account email, API token (from id.atlassian.com) |
pushToADO | Azure DevOps organization, project, test plan ID, PAT with Test Plans (Read & Write) scope |
8
Example Copilot conversation
User: @Shuddhi-QA pull Jira ticket PROJ-1234 and tell me what platform it targets
Copilot: [calls fetchJiraIssue โ detectPlatform]
"PROJ-1234 is a D365 F&O vendor invoice requirement, 92% confidence.
The ticket references workflow approval over $10K and three-way matching."
User: Generate test cases for it
Copilot: [calls generateTestCases]
"Here are 40 D365 vendor invoice test cases:
TC001 โ Navigate to Accounts Payable > Invoices > Vendor invoices...
TC002 โ Verify VendInvoiceInfoTable.WorkflowStatusEnum = InReview..."
User: Push these to ADO Test Plan 567
Copilot: [calls pushToADO]
"Pushed 40 test cases to Plan 567 in suite 1024.
Work item URLs: dev.azure.com/contoso/RetailPlatform/_workitems/..."
9
Privacy and data flow
The MCP server is stateless. No database. No persistent storage of customer content. It operates as a thin protocol adapter between MCP clients and the Shuddhi QA backend.
- We store: Operational metrics (request counts, error rates, tool-name frequencies) for 90 days, then aggregated to monthly counts for 12 months.
- We never store: Requirement text, Jira ticket content, generated test cases, or any caller-supplied credentials.
- We forward: Requirement text to your selected AI provider (Anthropic, Google, Groq, OpenAI, Together AI, or your own Azure OpenAI resource). Jira credentials to your Jira instance. ADO credentials to dev.azure.com.
Full privacy disclosures: shuddhiqacloud.pages.dev/privacy โ "Microsoft Copilot & MCP Integration" section.
10
Microsoft AppSource listing (planned)
For globally discoverable distribution to every Microsoft 365 Copilot tenant, Shuddhi QA is in active preparation for Microsoft AppSource submission. Once listed, tenant admins will be able to install Shuddhi QA tenant-wide from the Microsoft 365 admin center in a single click โ no manual Copilot Studio configuration required.
๐
Current path: Until AppSource listing goes live, the manual Copilot Studio setup above (step 4) is the canonical install path. Once AppSource certification is complete, the install URL will be added to the homepage and this section will be updated with the AppSource link.
11
Roadmap โ v0.2 and beyond
- Authentication / API keys for caller identification and per-tenant quota
- Full 110-template enumeration via
listTemplates (v0.1 surfaces 28 curated)
- Additional tools:
pushToJira, exportPlaywright, scoreTestCases, fetchAdoWorkItem
- Azure OpenAI as a 6th AI provider for enterprises with data residency requirements (โ shipped in v12.21)
- Microsoft Entra ID authentication for organizational governance
๐Open source: Full MCP server source code at github.com/ramya9b/shuddhiqacloud. Self-host to your own Cloudflare Workers account if data residency or compliance requires it.
โน๏ธThis is internal reference for the documentation team. End users only need this Documentation plus the in-app help pages.
๐
Step-by-Step User Guide
15-chapter interactive HTML guide with UI mockups covering every feature from first launch to enterprise integrations. Sticky sidebar navigation.
/guides/step-by-step.html
๐
Feature Overview HTML
Interactive HTML version of the feature guide with sticky nav, hover effects, provider comparison, export cards, test coverage grid.
/guides/features.html
๐
Feature Overview Presentation (internal)
12-slide PPTX deck with indigo/dark premium theme. For stakeholder presentations. Available on request.
ShuddhiQA_Features.pptx
๐
Word Document User Guide โ v7.9 era (archived)
35-page .docx historical guide. 13 sections with embedded screenshots. Preserved for reference; superseded by this Documentation.
ShuddhaQA_v79_UserGuide.docx
๐ฆ
Deployment Packages (v10.1 โ v11.3) โ internal
Versioned Cloudflare Pages deployment zips containing complete app source. Internal release artifacts.
ShuddhiQA-v10.x through v11.3.zip
๐กThe current live version is v12.20 at shuddhiqacloud.pages.dev. For access to internal/archived documents, contact ramya9.b@gmail.com.
v12.21
Azure OpenAI added as a 6th AI provider (Enterprise ยท BYO). Configured under Settings โ AI Provider with four values โ Endpoint, API Key, Deployment name, and API Version (default 2024-12-01-preview) โ plus a Test connection button. Generation runs in the region of the user's own Azure resource for data residency.
v12.20
Format-aware generation (single-section formats now respect the dropdown). Demo videos on homepage. Honest 5-language marketing (was 9). New feature cards: AI-Review Gate, Domain Intelligence, Quality Scoring, PWA. FAQ expanded to 17 questions. Export format fixes (UTF-8 BOM, metadata-row filter, phantom-step removal across Playwright/Gherkin/TestRail/Jira/Postman/Coverage). Quick-switch cost popover appears when 2+ providers are configured โ no need to open Settings every switch. Master Guide renamed to Documentation.
v12.19
Lazy marked.js, Firebase IDB-sniff lazy load, GIS dedupe โ ~250KB saving on first load. Performance improvements.
v12.18
#genBtnCostHint โ visible cost element below Generate button showing active provider and cost per run.
v12.17
No AI provider configured check added. Unconditional ProviderManager gate replaces silent __statusCheckFailed bypass.
v12.16
Platform and module selection made mandatory. Red glow highlight on validation failure. Cost hint below Generate button.
v12.15
Select-all toggle fixed (NoneโAll, AllโNone, SomeโIndeterminate). 11 browser scenarios verified.
v12.14
help.html hero pill version label updated. 25 missing CSS classes added to help.html โ page was unstyled raw HTML.
v12.13
Critical fix: /terms hero and /help hero + 5 sections were invisible due to dead .fade-up opacity:0 CSS. 8 elements restored.
v12.12
privacy.html dead fade-up class cleanup. 2 elements unblocked.
v12.11
privacy.html hero eyebrow fade-up fix. Dead CSS rule removed.
v12.10
Google Sign-In always shows consent screen (prompt:consent). Firebase Web client redirect URI added.
v12.9
GDPR deleteDoc Firestore fix โ silent skip resolved. deleteDoc added to Firebase module imports.
v12.8
_USER_KEY_LS bug fixed โ OpenAI + Together AI user keys now reach generation pipeline.
v12.7
Firebase SDK compatโmodular migration. ORB blocking resolved. Version bumped to 9.23.0.
v12.6
_initAutoSmartDetect called. #flowCharCount span added. wrangler.toml [assets] removed.
v12.5
/api/ado PAT validation hardened. Bogus PATs rejected with clear error.
v12.4
toggleMoreExports/closeMoreExports added. 5 aria-labels added. errText ReferenceError fixed.
v11.x
Freemium gate, Firebase Auth, ADO/Jira proxy rewrites (VercelโCloudflare), lazy loading, conversation history.
v10.x
Initial Cloudflare Pages deployment. Core generation pipeline. Provider manager. Export suite.
v7.xโv9.x
Original Vercel โ Cloudflare migration. Free trial gate. LinkedIn unlock. ADO/Jira integration. Gold/indigo brand.