Write your bar as a rule
requireCall when you know what you need from a counterparty and want it as an exact rule before you check anyone. Write the bar in plain words (words=...) or as structured JSON (rule=..., schema: resource mizan://schemas/requirement-rule-v2.json or https://studio.mizan.market/app/schemas/requirement-rule-v2.schema.json); both give the same rule and the same hash. Returns the exact rule, a read-back in plain English to confirm it means what you meant, its hash, whether it can be published, and suggestions when some words were not understood. Ready-made bars: the library resources (mizan://library/...). Then call check(subject, rule=). Free. Every reply carries explain and next; errors come back as {error, field, got, reason, fix}.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | A name for a published rule (stored beside the rule, outside its hash). | |
| rule | No | Or the same bar as structured JSON: {"core": "mizan-req-core/2", "rule": {...}}. Schema: https://studio.mizan.market/app/schemas/requirement-rule-v2.schema.json (also the MCP resource mizan://schemas/requirement-rule-v2.json). Words and JSON for the same bar give the same rule and the same hash. | |
| words | No | Your bar in plain words, e.g. "forward record 180 days, sharpe at least 1.3, max drawdown at most 25%, company domain". Words MIZAN cannot read are refused with the reason and suggestions, never guessed. | |
| api_key | No | Your MIZAN key (mzn_…), only to publish. claim_identity() gives one in one call. | |
| publish | No | Publish the rule as a versioned requirement others can adopt (needs api_key). Publishable says first whether it can be published today. | |
| visibility | No | public |