Moltbound
Consent and checkout rail for AI agents: 20 US services, passkey approval. Sandbox: simulated data.
Should I use this
Quality & Safety
Findings (4)
- LOWin moltbound_purchase_status
- LOWin moltbound_request_grant
- LOWin moltbound_poll_grant
- LOWin moltbound_revoke_grant
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": {
"sandbox": {
"url": "https://moltbound.dev/kapi/mcp"
}
}
}Remote endpoints
https://moltbound.dev/kapi/mcpstreamable-httpWhat it can do
Tool inventory
Tools (17)
🟢moltbound_list_services
List all 20 services across 9 categories with partner counts, descriptions, and required fields. Answers 'What sort of quotes can you provide?'. SANDBOX: use fictitious data only. Do not enter real personal details.
Input Schema
{
"type": "object",
"properties": {}
}⚪moltbound_start_session(jurisdiction, service_id, agent_name)
Start an anonymous TEST-ONLY quote session. TEST ONLY. Moltbound is a sandbox. Every partner is fictional and every quote is simulated: these are not real quotes, not financial advice, and nothing will be bought for real. Moltbound is not an insurer or broker. United States only. SANDBOX: use fictitious data only. Do not enter real personal details. Relay the notice to your human, then continue. SANDBOX: use fictitious data only. Do not enter real personal details.
Input Schema
{
"type": "object",
"properties": {
"jurisdiction": {
"enum": [
"US"
],
"default": "US"
},
"service_id": {
"type": "string",
"default": "car_insurance",
"description": "Any of the 20 service IDs, or '*' for all 20 services"
},
"agent_name": {
"type": "string"
}
},
"required": [
"jurisdiction"
]
}🟢moltbound_requirements(session_token, service_id)
Fields to ask the human for a service. SANDBOX: use fictitious data only. Do not enter real personal details. Pass service_id to inspect any of the 20 services.
Input Schema
{
"type": "object",
"properties": {
"session_token": {
"type": "string",
"description": "From moltbound_start_session or moltbound_human_sim_verify"
},
"service_id": {
"type": "string",
"description": "Optional service_id override (e.g. home_building, electricity)"
}
},
"required": [
"session_token"
]
}🟢moltbound_get_quotes(session_token, service_id, auto_default, risk_profile)
Request simulated quotes (cheapest first) with the human's answers. Pass parameters directly for any of the 20 services. SANDBOX: use fictitious data only. Do not enter real personal details.
Input Schema
{
"type": "object",
"properties": {
"session_token": {
"type": "string",
"description": "Session token from moltbound_start_session"
},
"service_id": {
"type": "string",
"enum": [
"car_insurance",
"dog_pet_insurance",
"home_building",
"contents",
"travel",
"life_quote_only",
"gas_energy",
"electricity",
"broadband_internet",
"mobile_plan",
"roadside",
"pet_boarding",
"health_insurance",
"motorcycle_insurance",
"sme_business_insurance",
"cyber_insurance",
"dental_vision",
"water_utility",
"home_security",
"gym_membership"
],
"description": "Which of the 20 US services to quote, e.g. car_insurance, home_building, dog_pet_insurance, travel, electricity."
},
"auto_default": {
"type": "boolean",
"default": false,
"description": "Set true to fill missing fields with safe sandbox defaults. Car insurance driver fields (numberOfDrivers, driverAges) are filled only when both are missing; rejected if only one is missing."
},
"risk_profile": {
"type": "object",
"additionalProperties": true,
"description": "The service's fields as key/value pairs (see moltbound_requirements). They may also be passed at the top level."
}
},
"required": [
"session_token",
"service_id"
],
"description": "Request simulated quotes with the human's answers for one service. SANDBOX: use fictitious data only. Do not enter real personal details.",
"additionalProperties": true
}🟢moltbound_quote_status(session_token, job_id, sort, partner, cover, ...)
Poll a quote job until complete, then show the human the quotes. Optional sort/filter: sort (price_asc|price_desc|deductible_asc|deductible_desc|cover_desc|partner), partner, cover (basic|standard|comprehensive, comma list), max_deductible, max_price, limit. The human picks which quote to continue with. SANDBOX: use fictitious data only. Do not enter real personal details.
Input Schema
{
"type": "object",
"properties": {
"session_token": {
"type": "string",
"description": "From moltbound_start_session or moltbound_human_sim_verify"
},
"job_id": {
"type": "string"
},
"sort": {
"type": "string"
},
"partner": {
"type": "string"
},
"cover": {
"type": "string"
},
"max_deductible": {
"type": "number"
},
"max_price": {
"type": "number"
},
"limit": {
"type": "integer"
}
},
"required": [
"session_token",
"job_id"
]
}⚪moltbound_consent_link(session_token, max_price, service_id, jurisdiction)
Give the human a code to link you so they can approve a (fictional) purchase with their passkey. SANDBOX: use fictitious data only. Do not enter real personal details.
Input Schema
{
"type": "object",
"properties": {
"session_token": {
"type": "string",
"description": "From moltbound_start_session or moltbound_human_sim_verify"
},
"max_price": {
"type": "number"
},
"service_id": {
"type": "string"
},
"jurisdiction": {
"enum": [
"US"
],
"default": "US"
}
},
"required": [
"session_token"
]
}⚪moltbound_complete_purchase(session_token, consent_request_id)
After the human approved on Moltbound's website (or via moltbound_human_sim_approve): complete the fictional purchase within 15 minutes. Bound to that exact quote and agent: repeating the call for the same approved quote is idempotent (returns the existing purchase_id), while reusing an approval for any other quote returns consent_used (another agent or session gets not_found, as it cannot see that approval) and an expired approval returns consent_expired. SANDBOX: use fictitious data only. Do not enter real personal details.
Input Schema
{
"type": "object",
"properties": {
"session_token": {
"type": "string",
"description": "From moltbound_start_session or moltbound_human_sim_verify"
},
"consent_request_id": {
"type": "string"
}
},
"required": [
"session_token",
"consent_request_id"
]
}⚪moltbound_purchase_status(session_token, purchase_id)
Poll the status of a fictional purchase by purchase_id until 'bound'. Returns partner's policy_number. SANDBOX: use fictitious data only. Do not enter real personal details.
Input Schema
{
"type": "object",
"properties": {
"session_token": {
"type": "string",
"description": "From moltbound_start_session or moltbound_human_sim_verify"
},
"purchase_id": {
"type": "string"
}
},
"required": [
"session_token",
"purchase_id"
]
}⚪moltbound_approval_request(session_token, job_id, bid_id)
After the human linked you and you quoted: ask them to approve one quote. SANDBOX: use fictitious data only. Do not enter real personal details.
Input Schema
{
"type": "object",
"properties": {
"session_token": {
"type": "string",
"description": "From moltbound_start_session or moltbound_human_sim_verify"
},
"job_id": {
"type": "string"
},
"bid_id": {
"type": "string"
}
},
"required": [
"session_token",
"job_id",
"bid_id"
]
}⚪moltbound_quick_quote(prompt, service_id, state, auto_default, risk_profile, ...)
One-shot quotes across any service. Accepts a natural language prompt, partial fields, or a full risk profile. When auto_default is true, missing fields are populated with safe sandbox defaults (car insurance driver fields numberOfDrivers and driverAges are filled only when both are missing; rejected if only one is missing). Pass grant_token for Protected Mode. SANDBOX: use fictitious data only. Do not enter real personal details.
Input Schema
{
"type": "object",
"properties": {
"prompt": {
"type": "string",
"description": "Plain-language request, e.g. 'car insurance for a 2019 Honda Civic in Austin TX 78701'. No names or ID numbers."
},
"service_id": {
"type": "string",
"enum": [
"car_insurance",
"dog_pet_insurance",
"home_building",
"contents",
"travel",
"life_quote_only",
"gas_energy",
"electricity",
"broadband_internet",
"mobile_plan",
"roadside",
"pet_boarding",
"health_insurance",
"motorcycle_insurance",
"sme_business_insurance",
"cyber_insurance",
"dental_vision",
"water_utility",
"home_security",
"gym_membership"
],
"description": "Which of the 20 US services to quote, e.g. car_insurance, home_building, dog_pet_insurance, travel, electricity."
},
"state": {
"type": "string",
"description": "Two-letter US state code, e.g. TX"
},
"auto_default": {
"type": "boolean",
"default": false,
"description": "Set true to fill missing fields with safe sandbox defaults. Car insurance driver fields (numberOfDrivers, driverAges) are filled only when both are missing; rejected if only one is missing."
},
"risk_profile": {
"type": "object",
"additionalProperties": true,
"description": "Optional: the service's fields as key/value pairs (see moltbound_requirements). They may also be passed at the top level."
},
"grant_token": {
"type": "string",
"description": "Optional grant token for Protected Mode"
}
},
"description": "One-shot quote request: a plain-language prompt, and/or service_id plus any of that service's fields. SANDBOX: use fictitious data only. Do not enter real personal details.",
"additionalProperties": true
}⚪moltbound_request_grant(service, jurisdiction, purpose, fields, expires_in_days, ...)
Request a scoped data grant for an agent. Returns an 8-character user_code and verification URL for human passkey approval. SANDBOX: use fictitious data only. Do not enter real personal details.
Input Schema
{
"type": "object",
"properties": {
"service": {
"type": "string",
"description": "Service ID (e.g. car_insurance, dog_pet_insurance)"
},
"jurisdiction": {
"enum": [
"US"
],
"default": "US"
},
"purpose": {
"type": "string"
},
"fields": {
"type": "array",
"items": {
"type": "string"
}
},
"expires_in_days": {
"type": "integer",
"default": 30
},
"reusable": {
"type": "boolean",
"default": true
}
},
"required": [
"service"
]
}⚪moltbound_poll_grant(link_id, poll_secret)
Poll for human approval of a data grant using link_id and poll_secret. SANDBOX: use fictitious data only. Do not enter real personal details.
Input Schema
{
"type": "object",
"properties": {
"link_id": {
"type": "string"
},
"poll_secret": {
"type": "string"
}
},
"required": [
"link_id",
"poll_secret"
]
}🟢moltbound_grant_status(grant_id, grant_token)
Inspect the status and approved fields of an active data grant. SANDBOX: use fictitious data only. Do not enter real personal details.
Input Schema
{
"type": "object",
"properties": {
"grant_id": {
"type": "string"
},
"grant_token": {
"type": "string",
"description": "Access token or poll secret for this grant"
}
},
"required": [
"grant_id"
]
}⚪moltbound_revoke_grant(grant_id, grant_token)
Revoke an active data grant on behalf of the user. SANDBOX: use fictitious data only. Do not enter real personal details.
Input Schema
{
"type": "object",
"properties": {
"grant_id": {
"type": "string"
},
"grant_token": {
"type": "string",
"description": "Access token or poll secret for this grant"
}
},
"required": [
"grant_id"
]
}🟡moltbound_human_sim_start(email, jurisdiction, service_id, capability, agent_name, ...)
Moltbook / Email-Only Simulated Human mode (sandbox test-only): send a 6-digit verification code to an email address so an autonomous agent can simulate the human side without a browser passkey. SANDBOX: use fictitious data only. Do not enter real personal details.
Input Schema
{
"type": "object",
"properties": {
"email": {
"type": "string"
},
"jurisdiction": {
"enum": [
"US"
],
"default": "US"
},
"service_id": {
"type": "string",
"default": "*"
},
"capability": {
"enum": [
"quote_only",
"quote_and_bind"
],
"default": "quote_and_bind"
},
"agent_name": {
"type": "string"
},
"session_token": {
"type": "string"
}
},
"required": [
"email"
]
}⚪moltbound_human_sim_verify(email, code, jurisdiction, service_id, capability, ...)
Verify the 6-digit email code from moltbound_human_sim_start. Returns a session_token, mandate_id (defaulting to '*' all 20 services), and human_sim_token for sandbox purchase approval. SANDBOX: use fictitious data only. Do not enter real personal details.
Input Schema
{
"type": "object",
"properties": {
"email": {
"type": "string"
},
"code": {
"type": "string"
},
"jurisdiction": {
"enum": [
"US"
],
"default": "US"
},
"service_id": {
"type": "string",
"default": "*"
},
"capability": {
"enum": [
"quote_only",
"quote_and_bind"
],
"default": "quote_and_bind"
},
"agent_name": {
"type": "string"
},
"session_token": {
"type": "string"
}
},
"required": [
"email",
"code"
]
}⚪moltbound_human_sim_approve(consent_request_id, human_sim_token, email, code)
Approve a sandbox consent_request_id in email-only simulated human mode using human_sim_token (or email + code). Never billable. SANDBOX: use fictitious data only. Do not enter real personal details.
Input Schema
{
"type": "object",
"properties": {
"consent_request_id": {
"type": "string"
},
"human_sim_token": {
"type": "string"
},
"email": {
"type": "string"
},
"code": {
"type": "string"
}
},
"required": [
"consent_request_id"
]
}Community
Evidence