Gated three-step revenue operations chain. Step 1 validates the commission hierarchy structure (BFS split-sum, orphan detection, circular-reference guard per ASC 606). Step 2 reconciles commission statement lines against expected amounts (gate: if a discrepancy is found the chain exits early — the statement must be clean before amortization proceeds). Step 3 computes ASC 340-40 incremental commission amortization, applying the §340-40-25-4 practical expedient for contract terms of 12 months or less. No personal data is processed.
validate_commission_hierarchy{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "validate_commission_hierarchy",
"arguments": {
"hierarchy": [
{"agent_id": "NP1", "parent_id": null, "split_pct": 100},
{"agent_id": "ManagerA", "parent_id": "NP1", "split_pct": 60},
{"agent_id": "ManagerB", "parent_id": "NP1", "split_pct": 40},
{"agent_id": "AgentX", "parent_id": "ManagerA", "split_pct": 50},
{"agent_id": "AgentY", "parent_id": "ManagerA", "split_pct": 50}
]
}
},
"id": 1
}
reconcile_commission_statement{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "reconcile_commission_statement",
"arguments": {
"statement_lines": [
{
"agent_id": "AGT001",
"gross_premium": 10000,
"commission_rate_pct": 10,
"split_pct": 100,
"stated_commission": 1000
}
],
"tolerance_pct": 1
}
},
"id": 2
}
amortize_asc606_commissions{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "amortize_asc606_commissions",
"arguments": {
"incremental_cost": 12000,
"contract_term_months": 24,
"renewal_commensurate": false,
"renewal_cost": 0,
"amortization_period_override_months": null,
"impairment_indicators": []
}
},
"id": 3
}
Copy this paragraph into Claude, OpenClaw, or any MCP-aware agent to run this whole workflow on the server and check one field that answers a real question.
Question: The carrier's commission statement arrived for reconciliation. Does any line's stated commission fall outside our tolerance against the recomputed amount?
Run the AINumbers MCP tool `run_chain` with {"chain":"commission-integrity-and-amortization"} and read `art-266-reconcile-commission-statement.has_discrepancy`.
Re-run with `inputs` for `art-266-reconcile-commission-statement`, reusing the values that result echoed, with `statement_lines` changed so AGT001 states 900 against an expected 1000. Compare the same field.
Verify: call `verify_execution_hash` (https://mcp.ainumbers.co/mcp) with `claimed_hash` set to `composite_execution_hash` and the full `composite_artifact`.
Ledger, for a human re-check: https://ledger.ainumbers.co/
PII rule: send synthetic or anonymised inputs only. The MCP server runs these kernels and logs no payloads.
Chain page: https://ainumbers.co/chaingraph/chains/commission-integrity-and-amortization.html