Agentic tool for Indian developers (v1.0.0). Audits codebases against the Digital Personal Data Protection Act 2023 and DPDP Rules 2025. Tools: identify_bharat_pii (Aadhaar/PAN detection with Rule 6 remediation) and audit_privacy_compliance (Section 6 consent and Section 8(8) retention checks). All processing is local-first.
Server has 3 tools with complete input schemas and descriptions. Naming follows verb_noun pattern (get_, identify_, audit_). Descriptions are substantive (100-200 chars) and explain WHAT and WHEN. However, output schemas are not documented, LLMs cannot predict response structure. Error handling is minimal (generic exception messages). Parameters lack constraints (e.g., aggressive_mode has no guidance on when to enable). No tool annotations (readOnlyHint, idempotentHint). Metrics logging is privacy-aware but not exposed to the agent.
Audit application code or configuration for DPDPA compliance, checking for Section 6 consent mechanisms and Section 8(8) data retention policies.
Get relevant summarized clauses from the Digital Personal Data Protection Act (DPDPA) 2023 and 2025 Rules based on a queried topic.
Scan text for Indian personally identifiable information (PII) including Aadhaar numbers, PAN, phone numbers, email addresses, and other sensitive data. Detects patterns with optional aggressive mode for obfuscated detection.
Output schemas not documented. LLMs cannot predict response structure (fields, types, pagination). Agents must guess what data is returned.
No tool annotations (readOnlyHint, idempotentHint). All three tools are read-only but this is not declared in the schema, forcing LLMs to infer safety.
Error handling returns generic exception messages (e.g., 'Failed to download source documents: {e}'). No recovery guidance or error classification (retryable vs fatal).
aggressive_mode parameter lacks constraint guidance. Description does not explain when to enable or performance/accuracy tradeoffs.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | 2026-07-28+ | v2 |
get_dpdpa_requirement accepts free-form 'topic' string with no enum or validation. LLMs may pass invalid topics; tool silently returns empty results.