addrbookFor publishers
← The evidence ledger

Evidence row 291105

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 38687002-9c54-4a23-bf91-67fa0dacf6cf
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
8e1d4a7a207890752deb1ca8a4e1b85649005aacfe74a455e729d125a1d22f4a
Leaf
0xc71a619ca45a10b7088354e4da8a556bc07d7dc1dd2f6f097e3a249f54cab903

What was observed

{
  "count": 16,
  "tools": [
    {
      "description": "Returns a secure payment link (iDEAL or card, via Dodo Payments, EUR 2.95 incl. VAT) for the full English report on a Dutch address: crime vs national rate, noise and air quality, flood probability, ground height, monuments, permits, amenities, liveability breakdown and home-value trend. The report opens right after payment. Only use when the user wants the full report or asks to buy it.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "addition": {
            "description": "Optional house number addition",
            "type": "string"
          },
          "house_letter": {
            "description": "Optional house letter, e.g. A",
            "type": "string"
          },
          "house_number": {
            "description": "House number, e.g. 1",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991,
            "type": "integer"
          },
          "postcode": {
            "description": "Dutch postcode, e.g. 3511LX",
            "type": "string"
          },
          "q": {
            "description": "Alternative to postcode: free-text address, e.g. 'Visschersplein 1 Utrecht'",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "buy_full_address_report"
    },
    {
      "description": "Use when enriching a list of Dutch addresses (up to 10 per call, 0.0015 USDC each): official BAG address and coordinates, CBS neighbourhood, liveability percentile, crime per 1,000 residents vs national, average home value and optionally the energy label. Unfound addresses are flagged, not charged extra. Costs 0.015 USDC via x402, or 8 credits of a Factline API key. The first 5 paid-tool calls a day are free, no payment or key needed.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "addresses": {
            "description": "1 to 10 addresses separated by ';', e.g. '3511LX 1; 2517AS 100'",
            "type": "string"
          },
          "include": {
            "description": "'energy_label' to add energy labels",
            "type": "string"
          }
        },
        "required": [
          "addresses"
        ],
        "type": "object"
      },
      "name": "nl_address_batch"
    },
    {
      "description": "Use when you need to check that a Dutch address exists or get its exact spelling and coordinates: official BAG address from postcode + house number or free text, latitude/longitude, BAG ids, municipality, province and CBS neighbourhood code. Cheap address validation for onboarding, delivery and CRM. Source: Kadaster BAG via PDOK. Costs 0.002 USDC via x402, or 1 credit of a Factline API key. The first 5 paid-tool calls a day are free, no payment or key needed.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "addition": {
            "description": "Optional house number addition",
            "type": "string"
          },
          "house_letter": {
            "description": "Optional house letter, e.g. A",
            "type": "string"
          },
          "house_number": {
            "description": "House number, e.g. 1",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991,
            "type": "integer"
          },
          "postcode": {
            "description": "Dutch postcode, e.g. 3511LX",
            "type": "string"
          },
          "q": {
            "description": "Alternative to postcode: free-text address, e.g. 'Visschersplein 1 Utrecht'",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "nl_address_lookup"
    },
    {
      "description": "Use when you have coordinates in the Netherlands and need the address: nearest official BAG address with distance in metres, postcode, city, municipality, province, BAG ids and CBS buurt and wijk codes, plus other nearby addresses. Input: WGS84 latitude and longitude. Source: Kadaster BAG via PDOK. Costs 0.002 USDC via x402, or 1 credit of a Factline API key. The first 5 paid-tool calls a day are free, no payment or key needed.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "lat": {
            "description": "Latitude, e.g. 52.0836",
            "type": "string"
          },
          "lon": {
            "description": "Longitude, e.g. 4.2919",
            "type": "string"
          }
        },
        "required": [
          "lat",
          "lon"
        ],
        "type": "object"
      },
      "name": "nl_address_reverse"
    },
    {
      "description": "Use when the user asks whether a Dutch neighbourhood or postcode is safe: police-registered crime per 1,000 residents vs the national rate, split into burglary, bicycle theft, vehicle crime, violence and vandalism, with counts and a ratio. Input: Dutch postcode or CBS buurt code. Source: Politie open data, CBS. Costs 0.003 USDC via x402, or 2 credits of a Factline API key. The first 5 paid-tool calls a day are free, no payment or key needed.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "code": {
            "description": "Alternative: CBS neighbourhood code, e.g. BU05182245",
            "type": "string"
          },
          "postcode": {
            "description": "Any Dutch postcode in the neighbourhood, e.g. 2517AS",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "nl_crime"
    },
    {
      "description": "Use when the user asks for the energy label of a Dutch home: the officially registered label (A++++ to G), registration and expiry date, building type and energy index, or a clear 'none registered'. Input: postcode + house number. Source: RVO EP-Online, the Dutch national register. Costs 0.005 USDC via x402, or 3 credits of a Factline API key. The first 5 paid-tool calls a day are free, no payment or key needed.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "addition": {
            "description": "Optional house number addition",
            "type": "string"
          },
          "house_letter": {
            "description": "Optional house letter, e.g. A",
            "type": "string"
          },
          "house_number": {
            "description": "House number, e.g. 1",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991,
            "type": "integer"
          },
          "postcode": {
            "description": "Dutch postcode, e.g. 3511LX",
            "type": "string"
          },
          "q": {
            "description": "Alternative to postcode: free-text address, e.g. 'Visschersplein 1 Utrecht'",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "nl_energy_label"
    },
    {
      "description": "Use when the user asks if a Dutch address can flood: annual flood probability (any water, over 20, 50 and 200 cm) from Rijkswaterstaat LIWO, 2050 and 2100 climate scenarios, worst-case water depth and ground height vs sea level (AHN). Input: postcode + house number. Costs 0.004 USDC via x402, or 2 credits of a Factline API key. The first 5 paid-tool calls a day are free, no payment or key needed.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "addition": {
            "description": "Optional house number addition",
            "type": "string"
          },
          "house_letter": {
            "description": "Optional house letter, e.g. A",
            "type": "string"
          },
          "house_number": {
            "description": "House number, e.g. 1",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991,
            "type": "integer"
          },
          "postcode": {
            "description": "Dutch postcode, e.g. 3511LX",
            "type": "string"
          },
          "q": {
            "description": "Alternative to postcode: free-text address, e.g. 'Visschersplein 1 Utrecht'",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "nl_flood_risk"
    },
    {
      "description": "Free. Use when the user mentions a Dutch address or asks about a home in the Netherlands: year built, floor area, use, neighbourhood residents and average home value, liveability percentile, in English. Accepts postcode + house number or free text. Sources: BAG, CBS, Leefbaarometer.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "addition": {
            "description": "Optional house number addition",
            "type": "string"
          },
          "house_letter": {
            "description": "Optional house letter, e.g. A",
            "type": "string"
          },
          "house_number": {
            "description": "House number, e.g. 1",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991,
            "type": "integer"
          },
          "postcode": {
            "description": "Dutch postcode, e.g. 3511LX",
            "type": "string"
          },
          "q": {
            "description": "Alternative to postcode: free-text address, e.g. 'Visschersplein 1 Utrecht'",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "nl_home_basic"
    },
    {
      "description": "Use when the user is choosing between 2 to 5 Dutch addresses: side-by-side liveability, crime, home values, floor area, year built, noise, air quality, ground height and distances to station, supermarket, school and GP, with the best address per metric and the full report for each. Input: addresses separated by ';'. Costs 0.08 USDC via x402, or 40 credits of a Factline API key. The first 5 paid-tool calls a day are free, no payment or key needed.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "addresses": {
            "description": "2 to 5 Dutch addresses separated by ';', e.g. '3511LX 1; 2517AS 100'",
            "type": "string"
          }
        },
        "required": [
          "addresses"
        ],
        "type": "object"
      },
      "name": "nl_home_compare"
    },
    {
      "description": "Use when the user asks about a specific Dutch home or address before renting, buying or moving: full English report with year built, floor area, energy label, crime vs national rate, noise, air quality (NO2, PM2.5), ground height, monuments, permits, schools, 18 amenity distances, neighbourhood income and home values. Input: postcode + house number. Sources: Kadaster, CBS, Politie, RIVM, RVO. Costs 0.04 USDC via x402, or 20 credits of a Factline API key. The first 5 paid-tool calls a day are free, no payment or key needed.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "addition": {
            "description": "Optional house number addition",
            "type": "string"
          },
          "house_letter": {
            "description": "Optional house letter, e.g. A",
            "type": "string"
          },
          "house_number": {
            "description": "House number, e.g. 1",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991,
            "type": "integer"
          },
          "postcode": {
            "description": "Dutch postcode, e.g. 3511LX",
            "type": "string"
          },
          "q": {
            "description": "Alternative to postcode: free-text address, e.g. 'Visschersplein 1 Utrecht'",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "nl_home_report"
    },
    {
      "description": "Use when the user asks what homes cost in a Dutch area: average home value (WOZ) in the neighbourhood with its trend, plus actual average sale prices per year in the municipality vs the national average. Context for an asking price, not a valuation of one home. Input: postcode or CBS buurt code. Source: CBS, Kadaster. Costs 0.003 USDC via x402, or 2 credits of a Factline API key. The first 5 paid-tool calls a day are free, no payment or key needed.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "code": {
            "description": "Alternative: CBS neighbourhood code, e.g. BU05182245",
            "type": "string"
          },
          "postcode": {
            "description": "Any Dutch postcode in the neighbourhood, e.g. 2517AS",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "nl_house_prices"
    },
    {
      "description": "Use when the user asks what a Dutch neighbourhood or postcode area is like: residents and age mix, housing and home values, household income, energy use, distances to 18 amenities, police-registered crime vs national rate and liveability score, in English. Input: any postcode or CBS buurt code. Sources: CBS, Politie, Leefbaarometer. Costs 0.01 USDC via x402, or 5 credits of a Factline API key. The first 5 paid-tool calls a day are free, no payment or key needed.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "code": {
            "description": "Alternative: CBS neighbourhood code, e.g. BU05182245",
            "type": "string"
          },
          "postcode": {
            "description": "Any Dutch postcode in the neighbourhood, e.g. 2517AS",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "nl_neighbourhood"
    },
    {
      "description": "Free. Use when the user asks what a Dutch neighbourhood or postcode area is like, or whether it is safe: headline facts for a postcode: residents, average home value (WOZ) and the municipality's average sale price, share of owner-occupied homes, liveability percentile, crime per 1,000 residents vs the national rate, and distance to supermarket, GP, primary school and train station. Sources: CBS, Politie, Leefbaarometer.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "code": {
            "description": "Alternative: CBS neighbourhood code, e.g. BU05182245",
            "type": "string"
          },
          "postcode": {
            "description": "Any Dutch postcode in the neighbourhood, e.g. 2517AS",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "nl_neighbourhood_summary"
    },
    {
      "description": "Use when you need every address in a Dutch postcode: street, house number, letter and addition, BAG id and coordinates, sorted. For address pickers, delivery and canvassing routes and data cleaning. Source: Kadaster BAG via PDOK. Costs 0.005 USDC via x402, or 3 credits of a Factline API key. The first 5 paid-tool calls a day are free, no payment or key needed.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "postcode": {
            "description": "6-character postcode, e.g. 2517AS",
            "type": "string"
          }
        },
        "required": [
          "postcode"
        ],
        "type": "object"
      },
      "name": "nl_postcode_addresses"
    },
    {
      "description": "Use when a tenant asks if their Dutch rent is too high or what the maximum rent is: estimated rent points (WWS) from floor area, energy label and neighbourhood WOZ, the likely segment (social up to 143 points, middle 144-186, free 187+) and the approximate maximum basic rent (2026 limits). An estimate with a link to the official check. Input: postcode + house number. Costs 0.01 USDC via x402, or 5 credits of a Factline API key. The first 5 paid-tool calls a day are free, no payment or key needed.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "addition": {
            "description": "Optional house number addition",
            "type": "string"
          },
          "house_letter": {
            "description": "Optional house letter, e.g. A",
            "type": "string"
          },
          "house_number": {
            "description": "House number, e.g. 1",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991,
            "type": "integer"
          },
          "postcode": {
            "description": "Dutch postcode, e.g. 3511LX",
            "type": "string"
          },
          "q": {
            "description": "Alternative to postcode: free-text address, e.g. 'Visschersplein 1 Utrecht'",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "nl_rent_check"
    },
    {
      "description": "Free. Use when the user asks about schools near a Dutch address or postcode, or is moving with children: the nearest primary and secondary schools, with distance, denomination, pupils, the share of pupils reaching the target reading and maths level on the end-of-primary test (vs national), and secondary exam pass rates per track (vmbo/havo/vwo). Also the nearest daycare (0 to 4) and after-school care (4 to 12) with registered places. Sources: DUO, Landelijk Register Kinderopvang.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "postcode": {
            "description": "Dutch postcode, e.g. 3511LX or 3511",
            "type": "string"
          }
        },
        "required": [
          "postcode"
        ],
        "type": "object"
      },
      "name": "nl_schools_near"
    }
  ]
}

What the leaf hashes

{"body":"8e1d4a7a207890752deb1ca8a4e1b85649005aacfe74a455e729d125a1d22f4a","id":291105,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793047866045408,"prev":null,"subject":"38687002-9c54-4a23-bf91-67fa0dacf6cf","subject_kind":"endpoint"}

Proof

Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (296695 rows).

  1. 0xc71a4a7a116f1b236211cfca3424b0bd742662ea21cc84d2bc98cb30731c3402
  2. 0x736fa70e020ccff44a04f65fdd6ad9f6897abcee6ff8678d4d826f6e21ebb1dc
  3. 0xf40b1a372b572bc63e6bf0968820fac54d147141b270c2079fdf96a55a875fbe
  4. 0x981d2b7358e4e0ee2c844d254dce16a89f066436a8288a50712d8fa776574aa5
  5. 0xaedbab15a16b96e4a64bf1330306a4ad47d4b2efa67b703439e2397fcaf5d9d5
  6. 0x3c75bfc53ddca8694bfc750be907d1da49115007ebf87eff45dc35af5a9462e8
  7. 0xc43b17587fd8f82dc0f0e4d32aa06fb66f1d3662fe0681fa514bffa2a1e4c893
  8. 0xd3ef446a824ee0bf564276884ad1d14c679b32111c303d16f476101d1148ec06
  9. 0x9f1a6c0a25b49b87eb16c4882f8b59b61ca88a866c0099cfbe6c8000b7a4ee9f
  10. 0xd368ac5e994f236560e1d336e12fc30e107d36c297f051b25005ca4791a16aa4
  11. 0xed975d3cf9a825217ed3ef7c3e4522f054cfe35b47c462678d64461a93581906
  12. 0x9d99c5dad23613921cdfabc849c2dd3c97729992eaa05c4dab5e86e83ed6d220
  13. 0x72e35aac89ebca631656c2b1aecbdc094807d9807f12c22a6ddf35cc1f5e21d6
  14. 0x5b20d8aab05225a3497eadcce89d2e2a586a510fb31334793d3f46f88f0157c5
  15. 0xe94ca5b798e9899ad611e57835af42266e20f53f44977e487d81365e30972beb
  16. 0x703f95866af09c5e5d6ead7411e9a10f964a41a2aff64d4a55ff0053c023a023
  17. 0xd0651cb9bc8155eb52b5247d506e74b8a935057dc190ba52091702ac25ed3a40
  18. 0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f
  19. 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
Day root
0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
Chained
0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
Published
On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae

How to check it · This row as JSON