Customer Info Validator
Validates customer information completeness by checking caller-provided data against required fields, returning present and missing fields.
README
Customer Info Validator
Customer Info Validator is a Gate 2 Cloudflare Workers + TypeScript MCP app for checking whether caller-provided customer information contains all caller-specified required fields.
App Identity
- App Name: Customer Info Validator
- App Slug: customer-info-validator
- Version: 1.0.0
- App Type: Validator
- Hub: Sales / Customer Operations Hub
- GitHub Repo: customer-info-validator
- Cloudflare Worker Name: customer-info-validator
- Wrangler name: customer-info-validator
- Website URL: https://customer-info-validator.sidcraigau.workers.dev
- MCP URL: https://customer-info-validator.sidcraigau.workers.dev/mcp
- Support Email: sidcraigau@gmail.com
Use Case
The only supported use case is validating customer information completeness. The tool accepts a customer information object and a caller-provided required field list, then returns checked fields, present fields, missing fields, completeness status, source label, and structured errors.
MCP Tool
- Tool Name:
validate_customer_info_completeness - Tool Title: Validate Customer Information Completeness
Input
customer_info: object, required, allows arbitrary caller-provided customer fields.required_fields: array of strings, required, runtime validates empty arrays and blank field names.source_label: string, optional.request_intent: string, optional, used only to reject out-of-scope requests.
Output
Every tool response returns the same top-level structure:
status:successorerrorcomplete: booleanrequired_fields: string arraychecked_fields: string arraypresent_fields: string arraymissing_fields: string arraysource_label: stringerrors: structured error array
Error Contract
Supported error codes:
missing_required_inputinvalid_input_typeempty_inputout_of_scopeinternal_error
Each error object includes code, message, and field.
Out of Scope
The app does not infer or fabricate missing information, score customers, predict conversion, create sales strategies, contact customers, write to CRM systems, create follow-up tasks, generate or send quotations, approve, publish, submit, purchase, transfer, delete, call external APIs, or modify external systems.
Routes
GET /: minimal public HTML page.GET /health: returns{ "status": "ok" }.POST /mcp: JSON-RPC MCP endpoint supportinginitialize,tools/list, andtools/call.
The app does not use /sse, /, or /{app-slug}/mcp as an MCP endpoint.
Local Commands
npm install
npm run typecheck
npm run dev
npm run test:mcp:local
npm run test:mcp:local starts the local Worker, waits for health, exercises the HTTP and MCP routes, validates tool annotations, runs positive and error cases, checks unknown tool behavior, validates structuredContent against outputSchema, and exits nonzero on failure.
Safety Architecture
Current architecture is read-only, stateless, and local to caller-provided input. It has no login, OAuth, database, external API client, CRM write path, message sending, form submission, approval action, purchase action, transfer action, or external system mutation.
Schema / Runtime Boundary
The JSON Schema defines field names, primitive types, arrays, objects, and top-level additionalProperties: false. Runtime type validation still checks every argument and field type. Business validation handles empty customer_info, empty required_fields, blank field names, field trimming, de-duplication, valid content checks, and out-of-scope request_intent detection so business errors are returned through the structured Error Contract.
Processing order:
- arguments
- runtime type validation
- business validation
- deterministic completeness logic
- unified response builder
Deployment Sync Rule
Any future production code change must follow:
Code Patch -> Build -> Deploy -> Production Verification
Patch-after-deploy drift is not allowed. Formal deployment and production verification are not part of Gate 2 and must be performed only in the appropriate later gate.
Gate Status
This repository is currently scoped to Gate 2 Build + Connect. It has not performed Gate 2.5 Developer Mode real listing tests, formal production deployment, formal submission, or final audit approval.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.