Universal Platform Contamination Detector - detects and removes telemetry, tracking scripts, marketing badges, and platform metadata injected by AI/NoCode platforms into generated code
Single tool 'sanitize_project' has a clear verb-noun name and basic description, but critical gaps undermine quality. Input schema is present with type and description for the 'path' parameter. However, the tool lacks output schema documentation, error handling guidance, and security considerations. The description (89 chars) is below the 194-char baseline and omits critical warnings about destructive behavior. No parameter validation constraints (e.g., path must be absolute, directory must exist). Error messages are generic ('Error: Path does not exist') without recovery guidance. The tool performs destructive file modifications (deletes dependencies, rewrites files) without dry-run support, confirmation steps, or audit logging, violating pattern:confirmation-request and pattern:audit-trail. STDIO transport caps overall score at 50; definition quality issues further reduce it.
Sanitizes a project by removing telemetry, tracking scripts, and marketing badges.
No output schema documented. Tool returns a free-text string with stats and logs concatenated. LLMs cannot parse structured results or chain downstream operations. Violates pattern:response-shaper.
Destructive operations (file deletion, dependency removal, content rewriting) lack dry-run mode, confirmation step, or undo capability. No audit trail. Violates pattern:confirmation-request and pattern:audit-trail.
Description (89 chars) is below baseline (194 chars) and omits critical context: WHAT the tool does (removes telemetry), WHEN to use it (before deploying untrusted code), and CONSEQUENCES (irreversible file modifications). Violates pattern:tool-description.
Input parameter 'path' lacks validation constraints. Description does not specify: must be absolute path, must be directory (not file), must be readable/writable, or what happens if path is relative. Violates pattern:constrained-input.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 44 | 2026-07-28+ | v2 |
Error handling is minimal. Generic error messages ('Error parsing package.json: {e}') do not guide LLM recovery. No categorization of errors as retryable vs fatal. Violates pattern:recovery-guide.