Explain rule
explain_ruleExplains what a lint rule checks, its severity, formats, documentation link, and attached extensions such as fix guidance.
Instructions
Explains one rule: what it checks (description, message, given, then), its severity and formats, a documentation link, and extensions, free-form data the ruleset attached to the rule, such as guidance for fixing it (extensions.prompt).
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"rule": "<rule>"
},
"name": "explain_rule"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| rule | Yes | The rule name, as in a diagnostic code or list_rules | |
| ruleset | No | A ruleset name from list_rulesets (or oas, asyncapi, arazzo), or an inline YAML/JSON ruleset. Default: the default ruleset. | |
| filename | No | A document name, such as "openapi.json", to include the rules the ruleset's overrides apply to it, as lint_document would. Never read. Default: document.yaml. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| then | Yes | ||
| given | Yes | JSONPath expressions; #Name refers to an alias of the ruleset | |
| enabled | Yes | Whether lint_document runs it | |
| formats | Yes | Formats the rule declares; empty means all of the ruleset's | |
| message | Yes | Message template; {{error}} and similar are filled in per diagnostic | |
| severity | Yes | ||
| extensions | Yes | Free-form data the ruleset attached, such as extensions.prompt | |
| description | Yes | ||
| recommended | Yes | ||
| documentationUrl | Yes |