For AI agents

Query the directory, don’t scrape it

Insurers Global is built to be read by software as much as by people. There are three ways in, from richest to simplest: WebMCP tools inside the page, a static JSON API, and plain-text discovery files. All of them serve the same dataset, version 2026-09-02+b4c86679e80b, under CC BY 4.0.

1. WebMCP tools in the browser

Every page on this origin registers the tools below through navigator.modelContext.registerTool(), the API proposed by the W3C Web Machine Learning Community Group under the name WebMCP. An agent driving a WebMCP-capable browser can call them directly; the tools fetch the JSON API lazily and answer from it. On browsers without the API the script is a silent no-op. Forms on the search and country pages also carry the declarative toolname and tooldescription attributes.

ToolWhat it doesInputs
search_insurersSearch licensed insurance companies, reinsurers, takaful operators and insurance groups across Africa by name. Returns matching insurers, countries and groups with their slugs and links.
  • queryrequired string
    Company, group or country name, or part of one.
  • limit integer
    Maximum number of results to return.
list_insurersList licensed insurers with optional filters. Filter by country slug (e.g. "kenya"), class slug (e.g. "life", "general-non-life", "reinsurer", "takaful-islamic"), group type slug (e.g. "pan-african-group", "state-owned-parastatal") or parent group slug.
  • country string
    Country slug, e.g. "nigeria".
  • class string
    Class of business slug.
  • group_type string
    Ownership group type slug.
  • group string
    Parent group slug, e.g. "sanlam-allianz".
  • limit integer
    Maximum number of results to return.
  • offset integer
    Results to skip, for paging.
get_countryGet one country: regulator (name, acronym, website, regime), currency, counts by class and ownership, verification status against the regulator register, 2026 market notes, and the full list of licensed insurers.
  • countryrequired string
    Country slug (e.g. "ghana") or ISO alpha-2 code (e.g. "GH").
get_insurerGet one insurer by slug, including its parent group, class, regulator, source basis, notes and sibling entities in the same group.
  • slugrequired string
    Insurer slug, e.g. "kenya-britam-life-assurance".
list_groupsList pan-African and multinational insurance groups with licensed entities in two or more African countries, with their footprint.
  • limit integer
    Maximum number of results to return.
  • offset integer
    Results to skip, for paging.
get_groupGet one insurance group by slug: home market, type, countries covered and every licensed entity in the directory.
  • slugrequired string
    Group slug, e.g. "old-mutual-ltd".
list_regulatorsList the insurance supervisory authority for every covered country: name, acronym, website, currency, regulatory regime and the register source used for verification.
  • region string
    Optional region slug, e.g. "west-africa".

The manifest at /.well-known/webmcp.json lists the same tools with full JSON Schema. The WebMCP specification is still a draft; tool names and schemas here are stable, the registration mechanism will track the spec.

2. Static JSON API

Every endpoint is a pre-rendered file served from the Cloudflare edge with Access-Control-Allow-Origin: *. No keys, no rate limits beyond fair use, no pagination: fetch the file you need and filter locally. List endpoints wrap results in an envelope with version, verified, licence and data.

EndpointContents
/api/v1/meta.jsonDataset version, counts, endpoint list and vocabularies (region, class, ownership slugs).
/api/v1/countries.jsonAll 50 countries: regulator, currency, counts by class and ownership, verification, market notes.
/api/v1/countries/{slug}.jsonOne country plus its complete insurer list. Example: /api/v1/countries/kenya.json
/api/v1/insurers.jsonAll 886 licensed entities in one file (about 600 KB).
/api/v1/insurers/{slug}.jsonOne insurer with regulator detail and sibling entities in the same group.
/api/v1/groups.jsonMulti-country insurance groups with footprint.
/api/v1/groups/{slug}.jsonOne group: countries and entities. Example: /api/v1/groups/sanlam-allianz.json
/api/v1/regulators.jsonSupervisory authority per country with website and register source.
/api/v1/search-index.jsonCompact [name, type, slug, country] tuples for fuzzy matching.
/api/v1/openapi.jsonOpenAPI 3.1 description of everything above.
/.well-known/webmcp.jsonManifest of the WebMCP tools registered on every page.
/llms.txtShort orientation for language models, with links per country.
/llms-full.txtOne line per insurer, grouped by country, for retrieval and grounding.
// In an agent-aware browser, on any insurers.global page:
const result = await navigator.modelContext.callTool?.('get_country', { country: 'KE' });
// Or, from anywhere, without a browser:
const res = await fetch('https://insurers.global/api/v1/countries/kenya.json');
const { data } = await res.json();
console.log(data.regulator.acronym, data.total, data.insurers.length);

3. Vocabularies

Filters use these slugs. They are also returned by /api/v1/meta.json.

Regions

  • north-africa North Africa
  • west-africa West Africa
  • central-africa Central Africa
  • east-africa East Africa
  • southern-africa Southern Africa
  • indian-ocean Indian Ocean

Classes

  • composite Composite (C)
  • funeral-assistance Funeral / Assistance (F)
  • general-non-life General (Non-life) (G)
  • health-medical Health / Medical (H)
  • life Life (L)
  • microinsurer Microinsurer (M)
  • reinsurer Reinsurer (R)
  • specialty-credit-captive Specialty / Credit / Captive (X)
  • takaful-islamic Takaful / Islamic (T)

Ownership

  • domestic-private Domestic private (DO)
  • foreign-multinational Foreign multinational (FM)
  • mutual-cooperative Mutual / cooperative (MU)
  • pan-african-group Pan-African group (PA)
  • regional-multilateral Regional / multilateral (RG)
  • state-owned-parastatal State-owned / parastatal (SO)

4. Ground rules