clay-prod-checklist
Execute Clay production deployment checklist and rollback procedures. Use when deploying Clay integrations to production, preparing for launch, or implementing go-live procedures. Trigger with phrases like "clay production", "deploy clay", "clay go-live", "clay launch checklist".
Install
mkdir -p .claude/skills/clay-prod-checklist && curl -L -o skill.zip "https://mcp.directory/api/skills/download/3395" && unzip -o skill.zip -d .claude/skills/clay-prod-checklist && rm skill.zipInstalls to .claude/skills/clay-prod-checklist
About this skill
Clay Production Checklist
Overview
Complete checklist for launching Clay enrichment pipelines in production. Covers table configuration, credit budgeting, webhook reliability, CRM sync validation, and monitoring setup.
Prerequisites
- Clay table tested with sample data (100+ rows enriched successfully)
- CRM integration tested in staging
- Credit budget approved for monthly volume
- Team trained on Clay table management
Instructions
Phase 1: Table Configuration
- Table schema finalized -- all columns named, typed, and ordered
- Enrichment columns configured -- each column has correct provider and input mapping
- Waterfall configured -- providers ordered cheapest-first with "stop on first result"
- Auto-run settings verified -- table-level auto-update ON, column-level auto-run ON for needed columns
- Conditional run rules set -- enrichments only trigger when input data exists
- Formula columns tested -- ICP scoring and lead grading formulas validated
- AI/Claygent columns reviewed -- prompts produce consistent, quality output
Phase 2: Data Quality Gates
- Input validation in place -- scripts validate data before webhook submission
- Personal email filter -- gmail.com, yahoo.com, etc. blocked from enrichment
- Deduplication active -- duplicate records detected before sending to Clay
- Sample enrichment run completed -- 500+ row test with >60% email find rate
- Credit cost per row calculated -- know your average credits per enriched lead
// Pre-submission validation (run before pushing to Clay)
function validateForProduction(rows: any[]): { valid: any[]; rejected: any[] } {
const personalDomains = ['gmail.com', 'yahoo.com', 'hotmail.com', 'outlook.com', 'icloud.com'];
const seen = new Set<string>();
const valid: any[] = [];
const rejected: any[] = [];
for (const row of rows) {
const key = `${row.domain}:${row.first_name}:${row.last_name}`.toLowerCase();
if (!row.domain?.includes('.'))
rejected.push({ row, reason: 'invalid domain' });
else if (personalDomains.some(d => row.domain.endsWith(d)))
rejected.push({ row, reason: 'personal email domain' });
else if (seen.has(key))
rejected.push({ row, reason: 'duplicate' });
else {
seen.add(key);
valid.push(row);
}
}
console.log(`Validation: ${valid.length} valid, ${rejected.length} rejected (${(rejected.length / rows.length * 100).toFixed(1)}% filtered)`);
return { valid, rejected };
}
Phase 3: Credit & Cost Controls
- Monthly credit budget set -- know your plan's monthly credits
- Table row limits configured -- max rows set to prevent runaway enrichment
- Provider API keys connected -- own keys for high-volume providers (saves 70-80%)
- Credit burn monitoring -- alerts when daily usage exceeds threshold
- Webhook submission counter -- tracking against 50K lifetime limit
| Plan | Monthly Credits | Actions | HTTP API | Webhook Limit |
|---|---|---|---|---|
| Launch | 2,500 | 15,000 | No | 50K/webhook |
| Growth | 6,000 | 40,000 | Yes | 50K/webhook |
| Enterprise | Custom | Custom | Yes | 50K/webhook |
Phase 4: Integration Reliability
- Webhook endpoint health check -- Clay can reach your callback URL
- Retry logic implemented -- 429 and 5xx responses handled with backoff
- CRM sync tested -- enriched records correctly map to CRM objects
- HTTP API columns tested -- outbound API calls return expected data
- Error handling for empty enrichments -- graceful handling when providers return no data
# Pre-flight connectivity checks
echo "=== Clay Production Pre-flight ==="
# 1. Webhook reachable
curl -s -o /dev/null -w "Webhook: HTTP %{http_code}\n" \
-X POST "$CLAY_WEBHOOK_URL" \
-H "Content-Type: application/json" \
-d '{"_preflight": true}'
# 2. Enterprise API (if applicable)
if [ -n "${CLAY_API_KEY:-}" ]; then
curl -s -o /dev/null -w "Enterprise API: HTTP %{http_code}\n" \
-X POST "https://api.clay.com/v1/people/enrich" \
-H "Authorization: Bearer $CLAY_API_KEY" \
-H "Content-Type: application/json" \
-d '{"email": "test@example.com"}'
fi
# 3. Callback endpoint reachable
curl -s -o /dev/null -w "Callback endpoint: HTTP %{http_code}\n" \
"https://your-app.com/api/health"
Phase 5: Monitoring & Alerting
- Credit consumption tracked -- daily/weekly credit usage logged
- Enrichment hit rate monitored -- alert if email find rate drops below 40%
- Webhook delivery failures alerted -- notification on 4xx/5xx from webhooks
- CRM sync errors tracked -- alert on failed CRM pushes
- Table row count monitored -- alert when approaching plan limits
Phase 6: Documentation & Runbooks
- Table schema documented -- column purposes, providers, and dependencies
- Credit cost model documented -- expected cost per lead at current volume
- Webhook rotation procedure -- steps to replace exhausted webhook (50K limit)
- Provider failover plan -- what to do when a provider is down
- On-call escalation path -- who to contact for Clay issues
Error Handling
| Alert | Condition | Action |
|---|---|---|
| Credit balance low | < 500 credits remaining | Pause enrichments, add credits or connect own keys |
| Email find rate drop | < 40% for 2+ hours | Check input data quality, review provider status |
| Webhook 429s | > 5 per hour | Reduce submission rate, check plan limits |
| CRM sync failures | > 10 per batch | Check CRM field mapping, verify API key |
Resources
Next Steps
For version upgrades, see clay-upgrade-migration.
More by jeremylongshore
View all skills by jeremylongshore →You might also like
flutter-development
aj-geddes
Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.
drawio-diagrams-enhanced
jgtolentino
Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.
ui-ux-pro-max
nextlevelbuilder
"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."
godot
bfollington
This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.
nano-banana-pro
garg-aayush
Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.
fastapi-templates
wshobson
Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling. Use when building new FastAPI applications or setting up backend API projects.
Related MCP Servers
Browse all serversThirdweb — Read/write across 2,000+ blockchains: query data, analyze/deploy contracts, and execute transactions with a p
Connect Blender to Claude AI for seamless 3D modeling. Use AI 3D model generator tools for faster, intuitive, interactiv
Terminal control, file system search, and diff-based file editing for Claude and other AI assistants. Execute shell comm
XcodeBuild streamlines iOS app development for Apple developers with tools for building, debugging, and deploying iOS an
Connect Supabase projects to AI with Supabase MCP Server. Standardize LLM communication for secure, efficient developmen
Control Ableton Live for advanced music production—track creation, MIDI editing, playback, and sound design. Perfect for
Stay ahead of the MCP ecosystem
Get weekly updates on new skills and servers.