A Next.js application integrating Mastra with AWS services (Bedrock) and Playwright MCP for browser automation, deployed on AWS ECS
Scoring was not performed
No input schema visible in source code. Tool definition is inferred from package dependency (@playwright/mcp) but actual registration, parameter definitions, and JSON Schema are not shown.
Tool name 'playwright_browser_tool' does not follow verb_noun convention. It is a noun phrase, not an action-oriented name. Action verbs (navigate, fill, click, capture, upload, download) would be clearer.
Tool description is a feature list, not an LLM-optimized specification. It enumerates capabilities ('navigation, form filling, clicking...') without explaining WHEN to use it, WHY to choose it over alternatives, or WHAT it returns. Current length ~150 chars, but lacks actionable context for tool selection.
Tool combines multiple responsibilities in one operation. A single 'playwright_browser_tool' encompasses navigation, form interaction, screenshots, PDF export, and file uploads, violating single-responsibility principle. Should split into navigate_to_url, fill_form, take_screenshot, save_pdf, upload_file.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 16 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 15 | - | v1 |
No parameter descriptions visible. If the tool accepts parameters like 'url', 'selector', 'action_type', or 'output_format', they must each have descriptions explaining expected format, constraints, and valid values. Cannot verify this from source.
Output schema not documented. LLMs need to know what fields are returned (e.g. screenshot_base64, success_status, error_message). Without documented output structure, agents cannot reliably parse results or chain to downstream tools.
Error handling strategy not visible. Tool is marked WRITE risk, but no recovery guidance, error classification (retryable vs. fatal), or actionable error messages are documented.
No confirmation or dry-run pattern. Playwright can perform destructive actions (fill forms, upload files, submit data). No mention of pre-flight validation or user confirmation before execution.