{"serverId":"mcp-registry/io.github.cartonpliant/fr-legal-kit","tools":[{"name":"buyer","fixed":{"name":"buyer","description":"French invoice buyer identification (L441-9): client name + optional SIRET/SIREN + city. B2C may omit SIRET. Format only. Paid $0.01 USDC Base x402.","inputSchema":{"type":"object","additionalProperties":true,"properties":{}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":67,"tokensAfter":72},{"name":"check_iban","fixed":{"name":"check_iban","description":"IBAN ISO 13616 checksum. Does not prove the account exists. Paid $0.01 USDC Base x402.","inputSchema":{"type":"object","additionalProperties":true,"properties":{}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":52,"tokensAfter":56},{"name":"check_siret","fixed":{"name":"check_siret","description":"SIRET/SIREN checksum (Luhn / La Poste). Does not call INSEE. Paid $0.01 USDC Base x402.","inputSchema":{"type":"object","additionalProperties":true,"properties":{}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":52,"tokensAfter":57},{"name":"export","fixed":{"name":"export","description":"French VAT exemption mention: extra-EU export CGI 262 I, or intra-EU supply CGI 262 ter I. Distinct from reverse-charge /v1/autoliquidation. Paid $0.01 USDC Base x402.","inputSchema":{"type":"object","additionalProperties":true,"properties":{}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":73,"tokensAfter":77},{"name":"interest_start","fixed":{"name":"interest_start","description":"L441-10: calendar day late-payment interest starts (the day after the due date), without a reminder. Accepts due_date or invoice_date + net_days. Paid $0.01 USDC Base x402.","inputSchema":{"type":"object","additionalProperties":true,"properties":{}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":77,"tokensAfter":81},{"name":"net_a_payer","fixed":{"name":"net_a_payer","description":"French invoice footer: HT / VAT / TTC plus collable 'Net à payer : 1 200,00 €'. Same CGI rates as /v1/ht-ttc. Pass exactly one of amount_ht or amount_ttc. Paid $0.01 USDC Base x402.","inputSchema":{"type":"object","additionalProperties":true,"properties":{}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":78,"tokensAfter":83},{"name":"payment_means","fixed":{"name":"payment_means","description":"French invoice means-of-payment mention (L441-9): virement, chèque, CB, espèces, prélèvement, LCR. Default virement. Collable string. Paid $0.01 USDC Base x402.","inputSchema":{"type":"object","additionalProperties":true,"properties":{}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":73,"tokensAfter":77},{"name":"payment_term_max","fixed":{"name":"payment_term_max","description":"Statutory ceiling on agreed FR B2B payment terms: 60 days after invoice issue, or 45 days end-of-month if stipulated (L441-10 I). Not a recommended term. Paid $0.01 USDC Base x402.","inputSchema":{"type":"object","additionalProperties":true,"properties":{}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":79,"tokensAfter":84},{"name":"postcode_fr","fixed":{"name":"postcode_fr","description":"French 5-digit postcode: department prefix (Corsica 2A/2B, overseas 97x). No address lookup. Flags Alsace-Moselle 57/67/68. Paid $0.01 USDC Base x402.","inputSchema":{"type":"object","additionalProperties":true,"properties":{}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":70,"tokensAfter":74}],"toolsChanged":9,"tokensSaved":0,"todo":[],"note":"Deterministic fixes. Changes marked verify need a human look before shipping (renames, inferred annotations, inferred types, removed text). Parameter descriptions in `todo` need to be written by someone who knows the API."}