The buyer skill, version 0.1.0
One skill for every buying agent.
The skill agentic-insurance-protocol tells an AI agent how to buy insurance for a customer under the Agentic Insurance Protocol (AIP). Any assistant that loads skills in the Agent Skills format can install it. The skill uses the AIP registry and the AIP server of each seller, and it follows the rules of the customer's country.
The skill is open source, under the Apache 2.0 licence of this repository. The AIP maintainers wrote the first draft. The goal is that the industry agrees on it, and that the regulator of each country owns the rules of its country.
Install
- Copy the folder
agentic-insurance-protocol/into the skills folder of your assistant. - Give the assistant MCP access to the AIP registry and to the sellers' servers.
- Give it the PAP operations extension, so that the customer can approve the validation and the application. Without PAP, the agent can give indicative prices only.
No public registry runs yet. The registry will also serve the skill through the MCP Skills extension, so that a host that loads skills over MCP gets it from the registry with no copy.
Who it is for
Makers of AI assistants
An assistant that loads the skill follows one procedure to buy insurance, and its maker can say which version it follows.
Insurers and distributors
The skill shows what an agent checks before it calls their tools, and what it keeps after.
Regulators
Each country has a folder of rules. A regulator can read in a few minutes what an agent does in its country, and it can take its folder over.
What the agent does
The skill gives the agent 12 steps, in this order. Open a step to read it as the agent reads it. Each tool is on the registry or on the seller's server.
1Understand the need
Ask what the customer wants to insure, where they live (the country, and the state in the United States), where the insured good is, and what they want the cover to do, in their own words. Record this statement and the time. It becomes the
NeedsAssessmentof the application. Tell the customer that you do not hold an insurance licence, and that a licensed seller sells the product.2Load the rules of the country
Call
get_country_ruleson the registry with the country, the subdivision and the line. Follow every file of the result as well as this skill. When a file is stricter than this skill, follow the file. When the registry does not answer, read the bundled files inreferences/countries/<code>/:country.md, then the file of the state instates/and the file of the line inlines/when they exist. Tell the customer which version you used. When no file exists for the country, tell the customer that AIP has no rules for that country yet.3Find sellers
Call
search_distributorswith the country, the subdivision, the line and the insured family, andmin_conformance_level: 2to get prices. When the customer names a seller, use that seller. The order of the results is random, so never show it as a ranking. A search result is not a licence check.4Check the seller
Call
get_distributoron the seller's server. Itsdomainmust be the domain of that server. Then callverify_licencewithcapacity: "distributor", the domain of the server that will receive the answers, the country, the subdivision (required in the United States) and the line. Do this before you send any answer of the customer. Act on the verdict as the table below says, and keep the result.5Check the underwriting scope
Call
list_productswith the country, the subdivision, the line and the insured family. Compare theunderwriting_scopeof each product with what the customer said. The country, and the subdivision when the scope lists some, must be ingeography. What the customer insures must match afamilyand, when the scope lists kinds, a kind ininsured. Drop each product that excludes the customer. Then read theconditionsagainst what the customer said, and ask the customer when you are not sure. When no product fits, tell the customer and send no answers.6Give the documents
Call
get_documentswith theproduct_id. Before you show any price, give the customer each document withrequired_before_commitment: true, for example the IPID. Record thedocument_id, theversion, thesha256and the time you gave each one.7Ask the questions
Call
get_question_setwith theproduct_idand the country. Ask each question in plain words, with itsx-asktext when it has one. Give a source for each answer, as the table of sources below says. Skip each question marked"x-collected-by": "distributor_page", because the customer gives that value on the seller's page. Callquotewith the answers you have. Onneeds_input, ask for themissing_fieldsand callquoteagain. These offers are indicative, so say so.8Have the customer validate the answers
When the answers are complete and the customer wants a firm price, call
validate_answerswith the answers and their sources. Show thesummaryof the operation to the person who will be the subscriber, and ask them to approve it. When they correct an answer, change it and callvalidate_answersagain. When they approve, confirm the operation at the PAP operations endpoint withapproved_by: "user". On success, keep the validation fromresult.data.validation.9Get the binding offer
Call
quoteagain with the same answers and sources, and with thevalidation. Show each offer from its own fields, in the seller's words: the premium, its period and whether taxes are in it, the cover, the limits, the excess, the main exclusions, the waiting period, the insurer andvalid_until. Show several offers side by side, with no ranking. Follow the country file on comparison and recommendation. Onno_offer, give the customer itsmessage.10Check the insurer
When the insurer in
Offer.provideris not the seller, callverify_licencewithcapacity: "provider"and one of itslicences, or its domain. Act on the verdict as for the seller. Callget_documentswith theoffer_id, and give the customer each document that the law requires and that they did not get yet.11Apply
When the customer chooses an offer, ask them to confirm that the answers are true and complete. Call
submit_applicationorconclude, as thesubscription_pathsof the offer allow, with the parties, the declaration and its validation, the needs assessment, the documents you gave, and the customer's choice about contact. Show thesummaryof the operation with the price, the start date, the insurer and the withdrawal period. Confirm it only when the customer approves this revision. For an application, give the customer thehandoff_url, where they finish on the seller's page.12Keep the evidence
Keep the version of the rules, the licence checks, the documents you gave, the answers with their sources, the validation, the offer, the operation and its evidence record. Give the customer a copy, with the seller's
complaints_url. Readreferences/evidence.mdbefore this step.
What the agent never does
These rules come from the specifications, and the skill repeats them where the agent needs them.
Never send answers, apply or conclude for a customer, or an insured good, outside the United States, the United Kingdom and France.
Never send an answer of the customer to a seller before
verify_licencegiveslicensedfor that seller.Never send answers, apply or conclude through a party whose verdict is
not_licensedorunknown.Never apply or conclude before you check the insurer, when the insurer is not the seller.
Never show the order of a search as a ranking.
Never send answers to
quotefor a product whose structured scope excludes the customer.Never invent an answer, and never send an answer without its source.
Never set
validated_by_customerto true for a value that the customer did not confirm.Never ask for, keep or pass on a value marked
distributor_page.Never take a price, a cover, a limit or an excess from a web page when the seller has
quote.Never ask for a binding offer, or apply, without the customer's validation of the answers.
Never set
accuracy_confirmedto true for invented or test data, or before the customer confirms that the answers are true and complete.Never confirm an operation without the customer's approval of that revision, and never through an AIP tool. Never use a standing permission for an AIP operation.
Never recommend an offer, rank the offers, or give your own reading of what a term of the cover means for the customer, unless the country file allows it. Send the customer's questions about advice and terms to the seller.
Never send the customer's personal data to the registry.
Your country, your rules
Each country has a folder: the country file, and a file for each state or line that needs more rules. Each rule names its legal source, and stays a draft until a lawyer or the regulator reviews it. The registry serves the same files, so an agent follows the current version of each one.
| Country | Status | Version | Owner | Rules | Last legal review |
|---|---|---|---|---|---|
| France | Draft | 0.1.0 | AIP maintainers | 22, 22 not reviewed | None yet |
| United Kingdom | Draft | 0.1.0 | AIP maintainers | 20, 20 not reviewed | None yet |
| United States | Draft | 0.1.0 | AIP maintainers | 14, 14 not reviewed | None yet |
Take over a country file
A regulator, or a body that a regulator names, can own the folder of its country, or one file in it. A US state's insurance department can own the file of its state while the maintainers keep the US file. Then each agent that follows the skill applies the rules that the regulator wrote.
- The regulator contacts the AIP maintainers through an issue.
- The regulator reviews the file and changes what it wants: what the agent may say, the documents, the demands and needs, the withdrawal period, sensitive data, complaints, or extra steps for its market. A country file can make the procedure stricter. It cannot remove a rule of the AIP specification.
- In the front matter,
ownerbecomes the regulator,statusbecomesendorsed,endorsed_bynames the regulator,reviewed_atgives the date of the review, andversionchanges. - The maintainers merge the change. The registry serves the new version, and each agent that loads the rules from the registry gets it on its next call. Agents that use the bundled copy get it with the next release of the skill.
A regulator can also add a file for a state in states/, or for one line in lines/. That file adds subdivision or line to its front matter, and the registry serves it after the country file.