{"protocolVersion":"0.3.0","name":"Waltsoft ShieldForm","description":"Bot detection for web forms. Scores a form submission 0-100 from the ShieldForm browser SDK token (mouse, keystrokes, field focus, scroll, touch and timing) and returns allow, challenge or block, with no CAPTCHA.","version":"1.0.0","url":"https://waltsoft-marketplace-gateway-xncyjgs1uh.gateway.bedrock-agentcore.us-east-1.amazonaws.com/a2a-gw/shieldform","preferredTransport":"JSONRPC","documentationUrl":"https://shieldform.waltsoft.net","iconUrl":"https://waltsoft-marketplace-assets.s3.amazonaws.com/logos/v2/shieldform.png","capabilities":{"streaming":false,"pushNotifications":false},"defaultInputModes":["text/plain","application/json"],"defaultOutputModes":["application/json","text/plain"],"provider":{"organization":"Waltsoft","url":"https://waltsoft.net"},"authentication":{"schemes":["apiKey"],"description":"Pass your Marketplace API key (mp_...) as api_key in the JSON-RPC params of every message/send call. Name a skill and its arguments in a data part, e.g. {\"kind\":\"data\",\"data\":{\"skill\":\"verifySubmission\", ...}}; plain text also works for simple requests."},"skills":[{"id":"verifySubmission","name":"Verify form submission","description":"Scores one form submission 0-100 (higher is more human) from its ShieldForm SDK token; decision is allow (70+), challenge (40-69) or block (under 40). No usable token gets the neutral score 50 with token_valid false. email is optional.","inputModes":["text/plain","application/json"],"outputModes":["application/json","text/plain"],"tags":["bot detection","form spam","captcha alternative","fraud prevention"],"examples":["Verify token eyJzIjogIiIsICJ0IjogMTc2MDU1MDAwMDAwMCwgInNnIjogeyJtIjogNDJ9fQ== from jane.doe@example.com","{\"skill\":\"verifySubmission\",\"token\":\"eyJ...\",\"email\":\"jane.doe@example.com\"}"]}]}