{"name":"sugarvet-mcp","version":"v1","protocolVersion":"2024-11-05","baseUrl":"https://ark6.sugarvet.com","endpoint":"/mcp/","scopeNote":"This public Sugarvet MCP surface is intended for registration and registration-related geolocation assistance only.","documentationUrl":"https://ark6.sugarvet.com/.well-known/agent-docs.json","examples":[{"name":"jsonrpc_register_start_core","description":"Start a core registration over the MCP JSON-RPC transport.","transport":"jsonrpc","path":"/mcp/","method":"POST","payload":{"id":1,"jsonrpc":"2.0","method":"tools/call","params":{"arguments":{"dob":"1990-01-31","email":"user@example.com","personaType":"core","userAgent":"mcp-client"},"name":"register_start"}}},{"name":"http_register_start_affiliate","description":"Start an affiliate registration over the direct HTTP endpoint.","transport":"http","path":"/mcp/register/start","method":"POST","payload":{"affiliateTrackingCode":"AFF123","dob":"1990-01-01","email":"affiliate@example.com","metadata":{"path":"/mcp/register/start"},"personaType":"affiliate","userAgent":"mcp-client"}},{"name":"http_register_complete_core","description":"Complete a verified core registration with registration-ready location fields.","transport":"http","path":"/mcp/register/complete","method":"POST","payload":{"form":{"cityName":"New York","countryCode":"US","email":"user@example.com","howHeardAboutUs":"search_engine","howHeardAboutUsDetail":"sugar dating app search","latitude":"40.7128","longitude":"-74.0060","password":"Str0ng!Pass","passwordConfirmation":"Str0ng!Pass","personaType":"core","role":"sugarbaby","sex":"female","stateCode":"NY"},"registrationID":"pending-registration-id","userAgent":"mcp-client"}}],"errors":[{"code":"invalid_dob","message":"invalid date of birth","cause":"DOB is missing or not in strict YYYY-MM-DD format.","resolution":"Send DOB as a zero-padded date string such as 1990-01-31."},{"code":"underage","message":"must be at least 18 years old","cause":"Core registrations require an adult DOB.","resolution":"Provide a DOB proving the applicant is at least 18 years old."},{"code":"weak_password","message":"password does not meet requirements","cause":"Password is too short or missing uppercase, lowercase, number, or symbol.","resolution":"Use a password with at least 8 characters including upper, lower, number, and symbol, for example Str0ng!Pass."},{"code":"password_mismatch","message":"passwords do not match","cause":"passwordConfirmation differs from password.","resolution":"Send an identical passwordConfirmation value."},{"code":"missing_location","message":"location is required","cause":"Core completion is missing latitude, longitude, cityName, or countryCode.","resolution":"Resolve the location through geo_suggest_locations or geo_reverse_lookup and copy the returned values directly."},{"code":"missing_attribution_source","message":"how did you hear about us is required","cause":"howHeardAboutUs was not provided.","resolution":"Always send howHeardAboutUs and howHeardAboutUsDetail."},{"code":"missing_attribution_detail","message":"attribution detail is required","cause":"Selected attribution source requires custom detail text.","resolution":"Provide howHeardAboutUsDetail, for example sugar dating app search or friend shared a link."},{"code":"invalid_registration_session","message":"invalid or incomplete registration session","cause":"registrationID is missing, unverified, expired, or already completed.","resolution":"Use the pending registration returned by register_start and complete verification before register_complete."}],"tools":[{"name":"register_start","description":"Start a Sugarvet registration via MCP. `dob` must use `YYYY-MM-DD`. Supported personas are `core` and `affiliate`.","inputSchema":{"properties":{"affiliateTrackingCode":{"description":"Optional affiliate tracking code to bind attribution during registration.","type":"string"},"dob":{"description":"Date of birth in `YYYY-MM-DD` format, for example `1990-01-31`.","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"email":{"description":"Applicant email address.","format":"email","type":"string"},"ip":{"description":"Optional client IP for analytics.","type":"string"},"metadata":{"description":"Optional analytics and routing metadata. Use `affiliateTrackingCode` here again on completion if attribution must persist across steps.","type":"object"},"personaType":{"description":"Registration persona. Only `core` and `affiliate` are accepted.","enum":["core","affiliate"],"type":"string"},"referralUserID":{"description":"Optional referring Sugarvet user ID.","type":"string"},"userAgent":{"description":"Optional client user agent string for analytics.","type":"string"}},"required":["personaType","email","dob"],"type":"object"}},{"name":"register_verify_pending","description":"Verify a pending Sugarvet registration via MCP","inputSchema":{"properties":{"code":{"description":"Verification code delivered by Sugarvet.","type":"string"},"pendingRegistrationID":{"description":"Pending registration ID returned by `register_start`.","type":"string"}},"required":["pendingRegistrationID","code"],"type":"object"}},{"name":"register_complete","description":"Complete a Sugarvet registration via MCP. Passwords must be at least 8 characters and include upper, lower, number, and symbol. Core registrations require registration-ready location fields.","inputSchema":{"properties":{"form":{"properties":{"cityName":{"description":"Required for `core`. Use the exact city returned by geo lookup tools when possible.","type":"string"},"countryCode":{"description":"Required for `core`. Two-letter uppercase country code such as `US`.","type":"string"},"dob":{"description":"Required for `core` only when no verified pending registration exists. Format must be `YYYY-MM-DD`. Must represent an adult age 18+.","pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"email":{"description":"Applicant email. Must match the pending registration when a verified registration session is used.","format":"email","type":"string"},"emailConfirmation":{"description":"Optional email confirmation. Used when email confirmation is required and no verified pending registration is supplied.","format":"email","type":"string"},"firstName":{"description":"Required for affiliate. Optional for core; defaults are applied if omitted.","type":"string"},"howHeardAboutUs":{"description":"Required attribution source key, for example `search_engine` or `other`.","type":"string"},"howHeardAboutUsDetail":{"description":"Required when the attribution source allows custom text. In practice, clients should always send this field.","type":"string"},"lastName":{"description":"Required for affiliate. Optional for core; defaults are applied if omitted.","type":"string"},"latitude":{"description":"Required for `core`. Decimal latitude string, for example `40.7128`.","type":"string"},"longitude":{"description":"Required for `core`. Decimal longitude string, for example `-74.0060`.","type":"string"},"password":{"description":"Must contain at least one uppercase letter, one lowercase letter, one number, and one symbol.","minLength":8,"type":"string"},"passwordConfirmation":{"description":"Must exactly match `password`.","type":"string"},"personaType":{"description":"Must be `core` or `affiliate`.","enum":["core","affiliate"],"type":"string"},"role":{"description":"Required for `core`. `sugarbaby` is the default browser value; `sugarprovider` is also accepted.","enum":["sugarbaby","sugarprovider"],"type":"string"},"sex":{"description":"Required for `core`. Only `male` and `female` are accepted.","enum":["male","female"],"type":"string"},"stateCode":{"description":"Recommended for `core`. Regional code such as `NY`.","type":"string"}},"required":["email","password","passwordConfirmation","personaType","howHeardAboutUs"],"type":"object"},"ip":{"description":"Optional client IP for analytics.","type":"string"},"metadata":{"description":"Optional analytics and routing metadata. Re-send `affiliateTrackingCode` here when continuing an affiliate-attributed flow.","type":"object"},"registrationID":{"description":"Verified registration session ID returned from start/verify steps.","type":"string"},"userAgent":{"description":"Optional client user agent string for analytics.","type":"string"}},"required":["registrationID","form"],"type":"object"}},{"name":"geo_suggest_locations","description":"Search location suggestions for MCP registration. Use this to get city/state/country plus latitude/longitude values that satisfy core registration requirements.","inputSchema":{"properties":{"limit":{"description":"Optional max suggestions, default 5.","maximum":10,"minimum":1,"type":"integer"},"query":{"description":"User-entered city or region query such as `New York` or `London`.","type":"string"}},"required":["query"],"type":"object"}},{"name":"geo_reverse_lookup","description":"Resolve latitude and longitude into the nearest registration-friendly city/state/country record.","inputSchema":{"properties":{"latitude":{"description":"Decimal latitude string, for example `40.7128`.","type":"string"},"longitude":{"description":"Decimal longitude string, for example `-74.0060`.","type":"string"}},"required":["latitude","longitude"],"type":"object"}}],"apiDoc":{"initializePath":"/mcp/","methods":["initialize","tools/list","tools/call"],"toolNames":["register_start","register_verify_pending","register_complete","geo_suggest_locations","geo_reverse_lookup"]}}
