LeadShield Contact Form & B2B Solicitation Blocker
Preview form screening and manage site rules. Built by Moosh Works (https://mooshworks.com).
Should I use this
Quality & Safety
Findings (3)
- LOWin leadshield_get_blocked_spam_report
- LOWin leadshield_configure_spam_policy
- LOWin leadshield_generate_guard_embed
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"leadshield": {
"url": "https://rankandrent-leads.hallmanlab.workers.dev/mcp"
}
}
}Remote endpoints
https://rankandrent-leads.hallmanlab.workers.dev/mcpstreamable-httpWhat it can do
Tool inventory
Tools (5)
🟢leadshield_screen_submission(site, name, email, phone, message, ...)
Check a message against the connected site's spam rules and, when configured, its intent classifier. Returns the screening decision and reason. This preview does not store the message, send it to a customer, or process a payment.
Input Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "A site connected to your LeadShield account, such as 'review-demo'."
},
"name": {
"type": "string",
"description": "Submitter full name."
},
"email": {
"type": "string",
"description": "Submitter email address."
},
"phone": {
"type": "string",
"description": "Submitter phone number."
},
"message": {
"type": "string",
"description": "Inbound form message or inquiry text to evaluate."
},
"country": {
"type": "string",
"description": "Two-letter ISO 3166-1 alpha-2 country code (e.g. 'US', 'CA')."
},
"timezone": {
"type": "string",
"description": "Submitter IANA timezone (e.g. 'America/Los_Angeles')."
},
"formType": {
"type": "string",
"enum": [
"local_service",
"b2b_saas",
"b2b",
"agency",
"portfolio",
"ecommerce",
"booking",
"quiz",
"real_estate",
"careers",
"newsletter",
"general",
"general_inquiry",
"quote_request",
"booking_request",
"b2b_partnership",
"support_ticket",
"careers_application",
"warranty_claim",
"event_registration",
"newsletter_signup",
"feedback_review"
],
"description": "Optional form-type preset to evaluate against."
}
},
"required": [
"site",
"message"
],
"additionalProperties": false
}🟢leadshield_get_blocked_spam_report(clientSlug, days, limit)
Read blocked-message counts, categories, screening stages, and recent submissions for your connected sites. The date window uses UTC calendar days and includes today.
Input Schema
{
"type": "object",
"properties": {
"clientSlug": {
"type": "string",
"description": "A connected site to report on. Omit to combine only the sites connected to your account."
},
"days": {
"type": "integer",
"description": "Lookback window in days (1 to 90, default 7)."
},
"limit": {
"type": "integer",
"description": "Maximum number of recent blocked records to include (1 to 50, default 10)."
}
},
"additionalProperties": false
}🟢leadshield_get_spam_policy(site, formType)
Inspect the saved spam rules for a connected site, including countries, phone formats, URLs, keywords, and its form preset. Supply a formType to preview that preset without changing the saved policy.
Input Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "A site connected to your LeadShield account."
},
"formType": {
"type": "string",
"enum": [
"local_service",
"b2b_saas",
"b2b",
"agency",
"portfolio",
"ecommerce",
"booking",
"quiz",
"real_estate",
"careers",
"newsletter",
"general",
"general_inquiry",
"quote_request",
"booking_request",
"b2b_partnership",
"support_ticket",
"careers_application",
"warranty_claim",
"event_registration",
"newsletter_signup",
"feedback_review"
],
"description": "Optional formType preset to preview."
}
},
"required": [
"site"
],
"additionalProperties": false
}🔴leadshield_configure_spam_policy(site, formType, allowedCountries, allowedPhoneFormats, blockUrlsInMessage, ...)
Preview changes to a connected site's spam rules. Set dryRun to false to save them with write access. Saved rules affect future submissions. Omitted settings are preserved. A successful save returns the policy read back from storage.
Input Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "Target site or client slug."
},
"formType": {
"type": "string",
"enum": [
"local_service",
"b2b_saas",
"b2b",
"agency",
"portfolio",
"ecommerce",
"booking",
"quiz",
"real_estate",
"careers",
"newsletter",
"general",
"general_inquiry",
"quote_request",
"booking_request",
"b2b_partnership",
"support_ticket",
"careers_application",
"warranty_claim",
"event_registration",
"newsletter_signup",
"feedback_review"
],
"description": "Default form-type preset for this site."
},
"allowedCountries": {
"type": "array",
"items": {
"type": "string"
},
"description": "Allowed ISO 3166-1 alpha-2 country codes (e.g. ['US', 'CA'])."
},
"allowedPhoneFormats": {
"type": "array",
"items": {
"type": "string"
},
"description": "Accept a phone number when it matches any listed format. Supported formats: us-nanp, uk, au, eu, international, e164, any. US_NANP and E164 are accepted aliases. An empty list restores the single-format setting."
},
"blockUrlsInMessage": {
"type": "boolean",
"description": "Whether to block URLs and HTML anchor tags in messages."
},
"maxUrls": {
"type": "integer",
"description": "Maximum allowed URLs when blockUrlsInMessage is false."
},
"blockedKeywords": {
"type": "array",
"items": {
"type": "string"
},
"description": "Keywords or phrases that block a submission, matched without regard to case."
},
"requiredKeywords": {
"type": "array",
"items": {
"type": "string"
},
"description": "At least one listed phrase must appear in the message, matched without regard to case. An empty list disables this rule."
},
"dryRun": {
"type": "boolean",
"description": "Defaults to true. Set to false with account write access to save changes."
}
},
"required": [
"site"
],
"additionalProperties": false
}🟢leadshield_generate_guard_embed(site, platform, formType)
Generate an HTML script snippet and setup addresses for a site. Choose HTML, HighLevel, WordPress, HubSpot, or Astro. The result is setup guidance; this tool does not install or activate the guard.
Input Schema
{
"type": "object",
"properties": {
"site": {
"type": "string",
"description": "Your site's LeadShield identifier, such as 'review-demo'."
},
"platform": {
"type": "string",
"enum": [
"html_script",
"highlevel",
"wordpress",
"hubspot",
"astro"
],
"description": "Target website or CRM platform."
},
"formType": {
"type": "string",
"description": "Optional formType preset attribute.",
"enum": [
"local_service",
"b2b_saas",
"b2b",
"agency",
"portfolio",
"ecommerce",
"booking",
"quiz",
"real_estate",
"careers",
"newsletter",
"general",
"general_inquiry",
"quote_request",
"booking_request",
"b2b_partnership",
"support_ticket",
"careers_application",
"warranty_claim",
"event_registration",
"newsletter_signup",
"feedback_review"
]
}
},
"required": [
"site"
],
"additionalProperties": false
}Community
Evidence