What it does
CRM Hygiene Agent cleans and enriches CRM records — deduplication, format normalization (phone/email/casing), missing-field detection, and invalid-value flagging — and returns them as approval-gated, draft-only proposals. It is built connector-free (you pass records in as data; there is no live CRM API and no credentials) and draft-only: the apply step is a refusing stub behind human confirmation, and the agent NEVER writes to a CRM. The hygiene analysis is fully deterministic and code-derived: it detects duplicates, normalizes formats, and flags missing/invalid values, tagging each proposed change high or low confidence. An LLM is used ONLY to summarize the proposal and suggest grounded enrichment (low-confidence flagged, never fabricated), with a deterministic template fallback when no model is available. Guardrails: every field value is sanitized (prompt-injection defang) and treated as data, never instructions; changes are grounded in the provided fields and never fabricated; and apply_changes refuses to write — even with confirmed:true it only returns a would-apply plan. Tools: - run_full — full pipeline: sanitize, analyze (dedupe/normalize/missing/invalid), draft cleanup + enrichment proposals, LLM summary. Returns a DRAFT proposal with requiresConfirmation:true. - analyze_records — deterministic analysis only (no LLM): findings + draft proposedChanges. - apply_changes — refusing stub: never writes; returns confirmation-required / would-apply plan. - list_capabilities — static capabilities, expected fields, and the draft-only/no-write guarantees. - plan_inputs — interview helper returning questions, JSON schema, and a ready-to-edit example for a tool. Provide records as [{ id, type?, fields: {k:v} }]. Array/object arguments may be passed as JSON or a JSON string. Missing required inputs return a structured needs_input payload (questions + schema + example) instead of erroring, and upgrade to a native elicitation form on clients that support it.
Example prompts
- Run run_full on these CRM contacts and propose dedupe/normalize cleanups with confidence tags.
- Run analyze_records on this batch — no LLM, just the deterministic findings and proposed changes.
- I have these proposed changes — call apply_changes (confirmed:false) and show me the confirmation-required plan.
Before you connect
The credentials this agent will ask you for — the full setup is on the Setup tab.
Needs 2 optional credentials to connect. See setup