feat(mcp): introducing Serenity/JS MCP server
RE #2985
Notes
- https://devblogs.microsoft.com/devops/from-manual-testing-to-ai-generated-automation-our-azure-devops-mcp-playwright-success-story/
- https://testingplus.me/playwright-mcp-claude-ai-experimenting-without-overpromising/
❌ 13 blocking issues (13 total)
| Tool | Category | Rule | Count | |
|---|---|---|---|---|
| qlty | Duplication | Found 15 lines of identical code in 2 locations (mass = 101) | 6 | ❌ |
| qlty | Duplication | Found 21 lines of similar code in 2 locations (mass = 84) | 5 | ❌ |
| qlty | Structure | Function with high complexity (count = 18): pageElementFromLocator | 2 | ❌ |
Diff Coverage: The code coverage on the diff in this pull request is 52.9%.
Total Coverage: This PR will decrease coverage by 2.02%.
File Coverage Changes
| Path | File Coverage Δ | Indirect |
|---|---|---|
| packages/core/src/errors/ErrorOptions.ts | 100.0 | √ |
| packages/core/src/events/AsyncOperationAborted.ts | 13.8 | √ |
| packages/core/src/events/SceneBackgroundDetected.ts | 12.9 | √ |
| packages/core/src/instance.ts | 0.4 | √ |
| packages/core/src/io/FileSystem.ts | 0.8 | √ |
| packages/core/src/io/loader/ModuleLoader.ts | -4.0 | |
| packages/core/src/io/reflection/ValueInspector.ts | 2.4 | √ |
| packages/core/src/model/Artifact.ts | 8.2 | |
| packages/core/src/model/ArtifactDeserialiser.ts | 83.9 | |
| packages/core/src/model/artifacts/Photo.ts | -3.7 | √ |
| packages/core/src/screenplay/questions/expectations/ExpectationDetails.ts | 1.5 | √ |
| packages/core/src/stage/StageManager.ts | 1.4 | √ |
| packages/mcp/src/server/context/Imports.ts | 100.0 | |
| packages/mcp/src/server/context/ScreenplayExecutionContext.ts | 91.1 | |
| packages/mcp/src/server/context/ScreenplayTemplate.ts | 100.0 | |
| packages/mcp/src/server/context/index.ts | 100.0 | |
| packages/mcp/src/server/context/schematics.ts | 100.0 | |
| packages/mcp/src/server/controllers/CapabilityController.ts | 100.0 | |
| packages/mcp/src/server/controllers/Controller.ts | 100.0 | |
| packages/mcp/src/server/controllers/ListCapabilitiesController.ts | 100.0 | |
| packages/mcp/src/server/controllers/index.ts | 100.0 | |
| packages/mcp/src/server/controllers/project/ProjectAnalyzeDependenciesController.ts | 21.0 | |
| packages/mcp/src/server/controllers/project/ProjectAnalyzeRuntimeEnvironmentController.ts | 24.4 | |
| packages/mcp/src/server/controllers/project/ProjectConfigurePackageJsonScriptsController.ts | 41.7 | |
| packages/mcp/src/server/controllers/project/ProjectConfigurePlaywrightTestController.ts | 21.6 | |
| packages/mcp/src/server/controllers/project/ProjectCreateExampleTestFileController.ts | 31.2 | |
| packages/mcp/src/server/controllers/project/index.ts | 100.0 | |
| packages/mcp/src/server/controllers/test-automation/TestAutomationController.ts | 83.3 | |
| packages/mcp/src/server/controllers/test-automation/index.ts | 100.0 | |
| packages/mcp/src/server/integration/PlaywrightBrowserConnection.ts | 95.7 | |
| packages/mcp/src/server/schema.ts | 100.0 |
🛟 Help
-
Diff Coverage: Coverage for added or modified lines of code (excludes deleted files). Learn more.
-
Total Coverage: Coverage for the whole repository, calculated as the sum of all File Coverage. Learn more.
-
File Coverage: Covered Lines divided by Covered Lines plus Missed Lines. (Excludes non-executable lines including blank lines and comments.)
-
Indirect Changes: Changes to File Coverage for files that were not modified in this PR. Learn more.
-