{"id":77632,"plugin_id":"plugins_6ae8cbe5a6708191b99fec2318f2e009","kind":"skill","collection_source":"plugin_package","comparison_source":null,"observed_at":"2026-11-03T00:15:25.258Z","digest":"0221e6bdbe8c40ad0c2196c1faed99a8518c8208ff2af1f97ae75bc5c0f945c6","against":null,"payload":{"description":"Validate an MCP server or MCP App with build checks, protocol-level tests, authorization negatives, UI lifecycle checks and honest evidence reporting.","included_files":[],"name":"test-mcp-project","skill_md_contents":"---\nname: test-mcp-project\ndescription: Validate an MCP server or MCP App with build checks, protocol-level tests, authorization negatives, UI lifecycle checks and honest evidence reporting.\n---\n\n# MCP verification\n\n1. Identify intended contracts, transport, auth and clients. List which parts can be tested in the current environment.\n2. Run relevant real commands where tools permit: install/build/typecheck/lint/unit tests, MCP Inspector server initialization, tools/list, resources/list or resources/read, tools/call with valid and invalid parameters.\n3. Test empty results, auth failures, forbidden IDs, input limits, rate limiting, provider outages, timeouts, retries and confirmation gates. Include negative tests for every privileged write.\n4. For MCP Apps: validate `ui://` resource existence, MIME type, `_meta.ui.resourceUri` linkage, CSP, bridge initialization and callbacks, rendering, focus/keyboard, dark mode if supported and fallback without UI capability.\n5. Preserve executable commands, environment, observed output, exceptions and artifacts; independently evaluate claimed agent results.\n6. Classify each check as PASS, FAIL, NOT RUN or BLOCKED. Never infer pass from code review, mocked UI or an unrun test script.\n7. Fix failures and rerun targeted tests. Limit retries, document unrelated pre-existing failures, don't silently change a baseline or delete tests.\n8. Output a concise evidence table and remaining blockers. See `../../templates/evidence-report.md` and `../../references/testing.md`.\n"},"changes":[],"summary":"First saved snapshot. No earlier version is available for comparison.","summary_kind":"deterministic","summary_metadata":{}}