chameleon-webmcp.ryan-970.workers.dev
Chameleon
First seen 2026-11-05 · Last seen 2026-11-05 · Source: webmcp.com
Answer 3 · Act 11 · Transact 1 · Score: Not yet scored
Tool inspector
create_form_tool
Mints a persistent tool from a form widget. REQUIRED after you add a form for repeated entries such as blood sugar; add_rows does not mint and is not a substitute. Name it verb_noun such as log_blood_sugar. The schema mirrors current fields and remints when they change. Each call appends one validated row. Survives reload until the form is deleted or remove_minted_tool is called. Returns the generated input schema.
Input schema
| Property | Type | Required | Description |
|---|---|---|---|
widgetId |
string | yes | Must be a form widget with at least one bound field. |
toolName |
string | yes | snake_case verb phrase, e.g. "log_blood_sugar". Must not collide with an existing tool. |
description |
string | yes | Written for the next agent. Say what one call records, name the fields and units or options, and give one example invocation in prose. |
expectedStateVersion |
integer | no | The stateVersion from your latest describe_current_state call. Pass it on static mutations to avoid overwriting a newer human or agent change. If stale, the tool returns STALE_STATE without changing the board. |
rationale |
string | no | One sentence explaining why you are making this change. Shown to the human in the activity log. |
Raw JSON schema
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"widgetId": {
"type": "string",
"pattern": "^w_[a-zA-Z0-9_-]{6,}$",
"description": "Must be a form widget with at least one bound field."
},
"toolName": {
"type": "string",
"pattern": "^[a-z][a-z0-9_]{2,49}$",
"description": "snake_case verb phrase, e.g. \"log_blood_sugar\". Must not collide with an existing tool."
},
"description": {
"type": "string",
"minLength": 20,
"maxLength": 500,
"description": "Written for the next agent. Say what one call records, name the fields and units or options, and give one example invocation in prose."
},
"expectedStateVersion": {
"description": "The stateVersion from your latest describe_current_state call. Pass it on static mutations to avoid overwriting a newer human or agent change. If stale, the tool returns STALE_STATE without changing the board.",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"rationale": {
"description": "One sentence explaining why you are making this change. Shown to the human in the activity log.",
"type": "string",
"maxLength": 300
}
},
"required": [
"widgetId",
"toolName",
"description"
],
"additionalProperties": false
}
Similar websites
econsor.de
German digital agency building portals, e-commerce sites and online marketing, combining strategy, design and AI to grow clients' visibility and customer base.
inkframe-eta.vercel.app
Browser-native Elah video editor for 9:16 and 16:9 exports
agentdesk-demo.vercel.app
Meridian Ops
eworker.ca
E-Worker is business infrastructure powered by AI, with focused apps and connected business work.