Install
$ agentstack add mcp-elamcb-mcp-testing-servers ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
MCP Testing Servers
Collection of Model Context Protocol (MCP) servers for software testing tools and quality assurance
[](https://modelcontextprotocol.io) [](https://opensource.org/licenses/MIT) [](https://nodejs.org/) [](https://github.com/ElaMCB/mcp-testing-servers/actions) [](https://modelcontextprotocol.io)
> Enables agentic testing in MCP-native IDEs like Cursor and GitHub Codespaces. Transform your AI assistant into an intelligent testing agent that can create, execute, and maintain tests autonomously.
What Are MCP Testing Servers?
Model Context Protocol (MCP) servers bridge AI agents with testing tools. Instead of manually writing test scripts, your AI assistant can:
- Execute Playwright tests in real-time
- Generate test cases based on application state
- Debug failures by inspecting DOM and logs
- File bugs in Jira/ADO directly from test results
- Self-heal tests when UI changes break selectors
Read our research paper on MCP in software testing.
Quick Start
Prerequisites
- Node.js 18+ (LTS recommended)
- An MCP-native IDE (Cursor, GitHub Codespaces, or compatible)
- Testing framework installed (Playwright, Selenium, etc.)
> Quick Start: Try it instantly in GitHub Codespaces - no local setup required!
Installation
# Clone the repository
git clone https://github.com/ElaMCB/mcp-testing-servers.git
cd mcp-testing-servers
# Install dependencies
npm install
# Install Playwright browsers
npx playwright install chromium
# Build the project
npm run build
Configure in Your IDE
For Cursor:
- Open Settings → MCP Servers
- Add a new server configuration
- Example for Playwright server:
{
"mcpServers": {
"playwright": {
"command": "node",
"args": ["./dist/servers/playwright/server.js"],
"env": {
"PLAYWRIGHT_BROWSERS_PATH": "0"
}
}
}
}
For GitHub Codespaces: Add to .vscode/settings.json:
{
"mcp.servers": {
"playwright": {
"command": "node",
"args": ["./dist/servers/playwright/server.js"],
"env": {
"PLAYWRIGHT_BROWSERS_PATH": "0"
}
}
}
}
> Need help? Check out our [Quick Start Guide](examples/quick-start.md) for detailed setup instructions.
Available MCP Servers
Playwright Server
Status: Implemented and Ready
Purpose: Browser automation and end-to-end testing
Tools:
launch_browser(url, headless?, browser?)- Launch browser and navigate to URLget_page_content(session_id)- Get current page DOM and stateperform_action(session_id, action, selector, value?, key?)- Click, fill, select elementsexecute_test_script(session_id, code)- Run Playwright code in live contextcapture_screenshot(session_id, fullPage?)- Take screenshots for debuggingrun_test_file(file_path)- Execute a Playwright test fileclose_session(session_id)- Close browser session and clean uplist_sessions()- List all active browser sessions
Browser Support: Chromium, Firefox, WebKit
Example Usage:
// Your AI agent can now:
// 1. Launch browser: launch_browser("https://app.example.com")
// 2. Inspect page: get_page_content(session_id)
// 3. Perform actions: perform_action(session_id, "click", "#login-button")
// 4. Generate tests based on actual UI structure
Selenium Server
Status: Planned
Purpose: Cross-browser Selenium automation
Tools:
create_driver(browser)- Create WebDriver instancenavigate_to(url)- Navigate to URLfind_elements(selector)- Locate page elementsexecute_script(js_code)- Run JavaScript in browser context
Jira Server
Status: Planned
Purpose: Autonomous bug filing and issue management
Tools:
create_issue(title, description, type)- Create Jira issuesearch_issues(jql_query)- Search using JQLadd_comment(issue_key, comment)- Add comment to issuelink_issues(issue_key_1, issue_key_2)- Link related issuesupdate_issue(issue_key, fields)- Update issue fields
Setup:
export JIRA_URL="https://your-org.atlassian.net"
export JIRA_EMAIL="your-email@example.com"
export JIRA_API_TOKEN="your-api-token"
Azure DevOps (ADO) Server
Status: Planned
Purpose: Work item management and build integration
Tools:
create_bug(title, description, project)- Create bug work itemget_test_runs(project_id)- Retrieve test run resultsget_latest_build(definition_id)- Get latest build statuslink_work_items(work_item_id_1, work_item_id_2)- Link work itemsupdate_work_item(id, fields)- Update work item fields
Setup:
export AZURE_DEVOPS_ORG="your-org"
export AZURE_DEVOPS_PROJECT="your-project"
export AZURE_DEVOPS_PAT="your-personal-access-token"
Test Results Server
Status: Planned
Purpose: Aggregate and analyze test execution results
Tools:
get_test_results(suite, time_range)- Retrieve test resultsanalyze_test_coverage(coverage_file)- Analyze code coveragecompare_test_runs(run_id_1, run_id_2)- Compare two test runsget_failing_tests(suite)- List currently failing tests
Cypress Server
Status: Planned
Purpose: Cypress end-to-end testing integration
Tools:
run_cypress_test(spec_file)- Execute Cypress testopen_cypress()- Open Cypress Test Runnerget_cypress_results()- Get latest test run results
API Testing Server
Status: Planned
Purpose: REST API testing and validation
Tools:
make_api_request(method, url, headers, body)- Execute API callsvalidate_api_response(response, schema)- Validate against JSON schemarun_api_test_suite(suite_file)- Run collection of API tests
Agentic Testing Workflows
Pattern 1: Contextual Test Generation
Your AI agent in the IDE can now:
- Detect code changes via MCP file system resources
- Analyze related test files to understand patterns
- Explore application UI using Playwright MCP server
- Generate tests directly into your project
- Execute and validate automatically
Example Prompt:
"Write a test for the new login feature I just added to login.js"
The agent will:
- Read
login.jsto understand the feature - Check existing test patterns in your project
- Launch browser and explore the login UI
- Generate contextually appropriate Playwright test
- Write it to the correct test file
Pattern 2: Autonomous Regression Testing
"Run the regression suite and file bugs for any failures"
The agent will:
- Execute all Playwright tests
- On failure: capture screenshots, inspect DOM, check logs
- Search Jira for duplicate issues
- Create new bug with detailed reproduction steps
- Update test code if selector changes (self-heal)
Pattern 3: Intelligent Test Maintenance
"Audit my test suite and fix any broken tests"
The agent will:
- Analyze test files for flaky tests and outdated selectors
- Validate selectors against current application state
- Automatically refactor or remove obsolete tests
- Create PR with improvements
Architecture
┌─────────────────────────────────────────────────────────┐
│ MCP-Native IDE (Cursor, Codespaces, etc.) │
│ ┌───────────────────────────────────────────────────┐ │
│ │ AI Agent (Native MCP Client) │ │
│ │ │ │
│ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │
│ │ │ Playwright│ │ Jira │ │ ADO │ │ │
│ │ │MCP Server│ │MCP Server│ │MCP Server│ ... │ │
│ │ └──────────┘ └──────────┘ └──────────┘ │ │
│ │ │ │ │ │ │
│ │ └────────────┴────────────┘ │ │
│ │ (Native MCP Protocol) │ │
│ └───────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────┘
Usage Examples
Basic Playwright Workflow
// Your AI agent uses these tools automatically, but here's what happens:
// 1. Launch browser
const session = await mcp.callTool('playwright', 'launch_browser', {
url: 'https://app.example.com'
});
// 2. Get page content
const content = await mcp.callTool('playwright', 'get_page_content', {
session_id: session.id
});
// 3. Perform actions
await mcp.callTool('playwright', 'perform_action', {
session_id: session.id,
action: 'fill',
selector: '#email',
value: 'user@example.com'
});
// 4. Capture evidence
const screenshot = await mcp.callTool('playwright', 'capture_screenshot', {
session_id: session.id
});
Autonomous Bug Filing
// After a test failure, agent automatically:
// 1. Capture failure evidence
const screenshot = await playwright.capture_screenshot();
const pageState = await playwright.get_page_content();
// 2. Check for duplicates
const duplicates = await jira.search_issues(
`summary ~ "Login button not clickable" AND status != Closed`
);
// 3. Create bug if no duplicate
if (duplicates.length === 0) {
await jira.create_issue({
title: 'Login button not clickable on /login page',
description: `Test failed at ${new Date()}\n\nScreenshot: ${screenshot}\n\nPage state: ${JSON.stringify(pageState)}`,
type: 'Bug',
priority: 'High'
});
}
Security Best Practices
- Credentials Management:
- Never commit API keys or tokens
- Use environment variables or IDE secrets
- Rotate credentials regularly
- Permission Scoping:
- Grant MCP servers minimum required permissions
- Use read-only credentials when possible
- Audit MCP tool usage logs
- Network Security:
- Run MCP servers on localhost in development
- Use TLS for remote MCP servers
- Restrict network access in CI/CD
- Test Data Isolation:
- Use separate test environments
- Clean up test data after runs
- Never access production data
Testing the Servers
# Run all server tests
npm test
# Test specific server
npm test -- playwright
# Run with coverage
npm run test:coverage
Documentation
Getting Started
- [Quick Start Guide](examples/quick-start.md) - Get up and running in 5 minutes
- [Example Usage](examples/basic-usage.ts) - Code examples and patterns
- [Contributing Guide](CONTRIBUTING.md) - How to contribute to the project
MCP Protocol
- MCP Protocol Specification (2025) - Official MCP spec
- MCP SDK Documentation - TypeScript SDK reference
Testing Tools
- Playwright Documentation - Browser automation guide
- Jira REST API - Jira API reference
- Azure DevOps REST API - ADO API reference
Research & Resources
- Research Paper: MCP in Software Testing - Academic research on MCP for testing
Contributing
We welcome contributions! This is foundational infrastructure for agentic testing.
See our [Contributing Guide](CONTRIBUTING.md) for detailed instructions.
Quick Contribution Steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/new-mcp-server) - Implement your MCP server following the existing patterns
- Add tests and documentation
- Submit a pull request
Adding a New MCP Server
- Create directory:
src/servers/your-server/ - Implement server following MCP protocol (see Playwright server as example)
- Export server class
- Add tests in
src/servers/your-server/__tests__/ - Document tools in README
- Update CI/CD if needed
Roadmap
Implemented
- [x] Playwright MCP Server - Full implementation with 8 tools
- [x] TypeScript build system and configuration
- [x] Test suite infrastructure
- [x] CI/CD pipeline (GitHub Actions)
- [x] GitHub Codespaces configuration
- [x] Documentation and examples
In Progress
- [ ] Enhanced error handling and retry logic
- [ ] Session persistence and recovery
- [ ] Performance optimizations
Planned
- [ ] Jira MCP Server - Autonomous bug filing
- [ ] Azure DevOps MCP Server - Work item management
- [ ] Selenium MCP Server - Cross-browser automation
- [ ] Cypress MCP Server - Cypress integration
- [ ] API Testing Server - REST API validation
- [ ] Test Results Aggregator Server - Results analysis
- [ ] Performance Testing Server - Load testing
- [ ] Security Scanning Server - Security testing
- [ ] Database Testing Server - Database validation
Future Features (2025 Trends)
- [ ] Agentic Workflows - Autonomous test generation
- [ ] Visual AI Integration - AI-powered screenshot comparison
- [ ] Multi-Agent Orchestration - Coordinated testing agents
- [ ] OAuth 2.1 Support - Enhanced security
- [ ] Async Tasks - Long-running test execution
- [ ] Stateless Architecture - Improved scalability
Acknowledgments
- Anthropic for the Model Context Protocol
- Playwright Team for excellent browser automation
- Atlassian and Microsoft for API access
Try It Now
Option 1: GitHub Codespaces (Recommended)
[](https://github.com/codespaces/new?template_repository=ElaMCB/mcp-testing-servers)
Click the badge above to launch a pre-configured environment instantly!
Option 2: Local Setup
git clone https://github.com/ElaMCB/mcp-testing-servers.git
cd mcp-testing-servers
npm install
npx playwright install chromium
npm run build
Option 3: Use as Template
Use this repository as a template for your own MCP servers!
Project Status
Current Version: 1.0.0 MCP Spec Compliance: 2025 Last Updated: December 2024 Active Development: Yes
Transform your IDE into an intelligent testing agent.
Built for the age of agentic testing.
Community
- GitHub Discussions - Ask questions and share ideas
- Issue Tracker - Report bugs and request features
- [Contributing Guide](CONTRIBUTING.md) - Learn how to contribute
About
╔══════════════════════════════════════════════════════════════╗
║ ║
║ MCP Testing Servers - Agentic Testing Framework ║
║ ║
║ Transform your IDE into an intelligent testing agent ║
║ ║
╚══════════════════════════════════════════════════════════════╝
Created by Ela MCB | AI-First Quality Engineer
┌─────────────────────────────────────────────────────────────┐
│ License: MIT │
│ See LICENSE file for full details │
│ │
│ Copyright (c) 2025 ElaMereanu │
│ │
│ Permission is hereby granted, free of charge, to any │
│ person obtaining a copy of this software and associated │
│ documentation files (the "Software"), to deal in the │
│ Software without restriction, including without limitation │
│ the rights to use, copy, modify, merge, publish, │
│ distribute, sublicense, and/or sell copies of the │
│ So
…
## Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.
- **Author:** [ElaMCB](https://github.com/ElaMCB)
- **Source:** [ElaMCB/-mcp-testing-servers](https://github.com/ElaMCB/-mcp-testing-servers)
- **License:** MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.