letsclarify
Collect structured human input — approvals, decisions, reviews, data — via web forms. Create a form with a JSON schema, send unique URLs to humans, poll for results. Use when your workflow needs a human in the loop before proceeding.
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/heisee/letsclarifyLet's Clarify Skill
Let's Clarify is a Human-in-the-Loop infrastructure service. Use it when your workflow needs structured human input — approvals, decisions, data collection, document review — before proceeding.
Base URL: https://letsclarify.ai
Integration: This skill provides both an MCP server (preferred for MCP-compatible agents) and a REST API. See MCP Server below.
Quick Start
0. Register (and Delete) an API Key
curl -X POST https://letsclarify.ai/api/v1/register \
-H "Content-Type: application/json" \
-d '{"name": "My Agent", "email": "[email protected]"}'
Response (201):
{
"api_key": "lc_...",
"key_prefix": "lc_xxxxx",
"warning": "Store securely. Shown only once."
}
Store the api_key value securely. It is shown only once. Include it in all subsequent API calls as Authorization: Bearer lc_....
Error (422): Validation errors (e.g., missing name/email) return:
{ "error": "validation_failed", "message": "..." }
Delete your API key:
curl -X DELETE https://letsclarify.ai/api/v1/register \
-H "Authorization: Bearer lc_..."
Response (200):
{ "deleted": true }
1. Create a Form
curl -X POST https://letsclarify.ai/api/v1/forms \
-H "Content-Type: application/json" \
-H "Authorization: Bearer lc_..." \
-d '{
"title": "Approve Budget Increase",
"context_markdown": "## Q3 Budget\nPlease review the proposed 15% increase.",
"recipient_count": 3,
"retention_days": 7,
"webhook_url": "https://your-agent.example.com/webhook",
"schema": [
{
"id": "decision",
"type": "radio",
"label": "Your decision",
"required": true,
"options": [
{ "value": "approve", "label": "Approve" },
{ "value": "reject", "label": "Reject" }
]
},
{
"id": "notes",
"type": "textarea",
"label": "Additional notes",
"required": false,
"validation": { "max_length": 1000 }
}
]
}'
Response (201):
{
"form_token": "xK9m2...",
"delete_token": "dT3r...",
"base_url_template": "https://letsclarify.ai/f/xK9m2.../{recipient_uuid}",
"poll_url": "https://letsclarify.ai/api/v1/forms/xK9m2.../results",
"summary_url": "https://letsclarify.ai/api/v1/forms/xK9m2.../summary",
"delete_url": "https://letsclarify.ai/api/v1/forms/xK9m2...",
"recipients": ["uuid-1", "uuid-2", "uuid-3"]
}
recipient_count accepts 1–1,000. Use the recipients endpoint to add more (up to 10,000 total).
Advanced: Client-Provided UUIDs and Prefilled Values
Instead of (or alongside) recipient_count, pass a recipients array with optional uuid and prefill per entry:
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-heisee-letsclarify": {
"enabled": true,
"auto_update": true
}
}
}