Server definition
- Hash
- sha256:576cd66d4f168717d95728242e98fa5942d2e0a440ab62e9e6c27134f52b9df2
- What it is
- What a remote MCP server returned when asked what it offers: 26 tools
The blob, as servednamed by its sha256
{
"instructions": null,
"tools": [
{
"description": "Station-level utilization aggregated over a GeoJSON area and a date window of at most 92 days, optionally filtered to a capacity band (default 150 kW = HPC; pass 100 for fast charging). The reply is one row per station, so it reads an area without pulling any station's daily rows.",
"inputSchema": {
"properties": {
"country_iso3": {
"description": "ISO-3166 alpha-3 scope, e.g. NOR.",
"maxLength": 3,
"minLength": 3,
"title": "Country Iso3",
"type": "string"
},
"date_from": {
"description": "YYYY-MM-DD (required).",
"title": "Date From",
"type": "string"
},
"date_to": {
"description": "YYYY-MM-DD (required; window <= 92 days, >= date_from).",
"title": "Date To",
"type": "string"
},
"geometry": {
"description": "GeoJSON Polygon/MultiPolygon as a JSON string.",
"title": "Geometry",
"type": "string"
},
"max_capacity_kw": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Max Capacity Kw"
},
"min_capacity_kw": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "kW floor (default 150 = HPC; pass 100 for fast-charging).",
"title": "Min Capacity Kw"
}
},
"required": [
"country_iso3",
"geometry",
"date_from",
"date_to"
],
"title": "aggregate_charging_utilizationArguments",
"type": "object"
},
"name": "aggregate_charging_utilization",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "aggregate_charging_utilizationOutput",
"type": "object"
}
},
{
"description": "EVSE-level utilization aggregated over a GeoJSON area and a date window of at most 92 days, optionally filtered to a capacity band. The per-connector counterpart of aggregate_charging_utilization.",
"inputSchema": {
"properties": {
"country_iso3": {
"description": "ISO-3166 alpha-3 scope, e.g. NOR.",
"maxLength": 3,
"minLength": 3,
"title": "Country Iso3",
"type": "string"
},
"date_from": {
"description": "YYYY-MM-DD (required).",
"title": "Date From",
"type": "string"
},
"date_to": {
"description": "YYYY-MM-DD (required; window <= 92 days, >= date_from).",
"title": "Date To",
"type": "string"
},
"geometry": {
"description": "GeoJSON Polygon/MultiPolygon as a JSON string.",
"title": "Geometry",
"type": "string"
},
"max_capacity_kw": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Max Capacity Kw"
},
"min_capacity_kw": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "kW floor (default 150 = HPC; pass 100 for fast-charging).",
"title": "Min Capacity Kw"
}
},
"required": [
"country_iso3",
"geometry",
"date_from",
"date_to"
],
"title": "aggregate_evse_utilizationArguments",
"type": "object"
},
"name": "aggregate_evse_utilization",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "aggregate_evse_utilizationOutput",
"type": "object"
}
},
{
"description": "How hard is each EVSE at this site working compared with the area around it?\n\nReads the area_benchmark claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"AreaBenchmarkParams": {
"additionalProperties": false,
"properties": {
"aggregate_params": {
"$ref": "#/$defs/EvseAggregateParams"
},
"observation_params": {
"$ref": "#/$defs/StationUtilizationParams"
},
"site_id": {
"minLength": 1,
"title": "Site Id",
"type": "string"
}
},
"required": [
"site_id",
"observation_params",
"aggregate_params"
],
"title": "AreaBenchmarkParams",
"type": "object"
},
"CapacityBand": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"anyOf": [
{
"exclusiveMinimum": 0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Max Capacity Kw"
},
"min_capacity_kw": {
"anyOf": [
{
"exclusiveMinimum": 0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Min Capacity Kw"
}
},
"title": "CapacityBand",
"type": "object"
},
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"EvseAggregateParams": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityBand",
"default": {
"max_capacity_kw": null,
"min_capacity_kw": null
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"geometry": {
"minLength": 1,
"title": "Geometry",
"type": "string"
}
},
"required": [
"country_iso3",
"geometry",
"date_range"
],
"title": "EvseAggregateParams",
"type": "object"
},
"StationUtilizationParams": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"station_ids": {
"items": {
"type": "string"
},
"maxLength": 20,
"minLength": 1,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids",
"date_range"
],
"title": "StationUtilizationParams",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/AreaBenchmarkParams"
}
},
"required": [
"params"
],
"title": "area_benchmarkArguments",
"type": "object"
},
"name": "area_benchmark",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "area_benchmarkOutput",
"type": "object"
}
},
{
"description": "How long does a session at this site actually last?\n\nReads the avg_session_minutes claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"AvgSessionMinutesParams": {
"additionalProperties": false,
"properties": {
"observation_params": {
"$ref": "#/$defs/StationUtilizationParams"
},
"site_id": {
"minLength": 1,
"title": "Site Id",
"type": "string"
},
"station_id": {
"anyOf": [
{
"minLength": 1,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Station Id"
}
},
"required": [
"site_id",
"observation_params"
],
"title": "AvgSessionMinutesParams",
"type": "object"
},
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"StationUtilizationParams": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"station_ids": {
"items": {
"type": "string"
},
"maxLength": 20,
"minLength": 1,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids",
"date_range"
],
"title": "StationUtilizationParams",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/AvgSessionMinutesParams"
}
},
"required": [
"params"
],
"title": "avg_session_minutesArguments",
"type": "object"
},
"name": "avg_session_minutes",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "avg_session_minutesOutput",
"type": "object"
}
},
{
"description": "How many EVSE-hours at this station carried charging on the drilled day, and how many of its EVSEs were charging at once in the busiest hour?\n\nReads the busy_evse_hours claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"BusyEvseHoursParams": {
"additionalProperties": false,
"properties": {
"date_range": {
"$ref": "#/$defs/DateRange"
},
"observation_params": {
"$ref": "#/$defs/EvseHourlyParams"
},
"peak_window": {
"$ref": "#/$defs/PeakWindow",
"default": {
"from_hour": 6,
"until_hour": 23
}
},
"site_id": {
"minLength": 1,
"title": "Site Id",
"type": "string"
},
"station_id": {
"minLength": 1,
"title": "Station Id",
"type": "string"
}
},
"required": [
"observation_params",
"date_range",
"site_id",
"station_id"
],
"title": "BusyEvseHoursParams",
"type": "object"
},
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"DateList": {
"additionalProperties": false,
"properties": {
"dates": {
"items": {
"type": "string"
},
"minLength": 1,
"title": "Dates",
"type": "array"
}
},
"required": [
"dates"
],
"title": "DateList",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"EvseHourlyParams": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Date"
},
"dates": {
"anyOf": [
{
"$ref": "#/$defs/DateList"
},
{
"type": "null"
}
],
"default": null
},
"station_ids": {
"items": {
"type": "string"
},
"maxLength": 20,
"minLength": 1,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids"
],
"title": "EvseHourlyParams",
"type": "object"
},
"PeakWindow": {
"additionalProperties": false,
"properties": {
"from_hour": {
"default": 6,
"maximum": 23,
"minimum": 0,
"title": "From Hour",
"type": "integer"
},
"until_hour": {
"default": 23,
"maximum": 24,
"minimum": 1,
"title": "Until Hour",
"type": "integer"
}
},
"title": "PeakWindow",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/BusyEvseHoursParams"
}
},
"required": [
"params"
],
"title": "busy_evse_hoursArguments",
"type": "object"
},
"name": "busy_evse_hours",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "busy_evse_hoursOutput",
"type": "object"
}
},
{
"description": "How does this site's demand per EVSE-day compare with the corridor drawn around it?\n\nReads the corridor_benchmark claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"CapacityBand": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"anyOf": [
{
"exclusiveMinimum": 0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Max Capacity Kw"
},
"min_capacity_kw": {
"anyOf": [
{
"exclusiveMinimum": 0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Min Capacity Kw"
}
},
"title": "CapacityBand",
"type": "object"
},
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"CorridorBenchmarkParams": {
"additionalProperties": false,
"properties": {
"aggregate_params": {
"$ref": "#/$defs/EvseAggregateParams"
},
"observation_params": {
"$ref": "#/$defs/StationUtilizationParams"
},
"site_id": {
"minLength": 1,
"title": "Site Id",
"type": "string"
},
"station_id": {
"minLength": 1,
"title": "Station Id",
"type": "string"
}
},
"required": [
"site_id",
"observation_params",
"station_id",
"aggregate_params"
],
"title": "CorridorBenchmarkParams",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"EvseAggregateParams": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityBand",
"default": {
"max_capacity_kw": null,
"min_capacity_kw": null
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"geometry": {
"minLength": 1,
"title": "Geometry",
"type": "string"
}
},
"required": [
"country_iso3",
"geometry",
"date_range"
],
"title": "EvseAggregateParams",
"type": "object"
},
"StationUtilizationParams": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"station_ids": {
"items": {
"type": "string"
},
"maxLength": 20,
"minLength": 1,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids",
"date_range"
],
"title": "StationUtilizationParams",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/CorridorBenchmarkParams"
}
},
"required": [
"params"
],
"title": "corridor_benchmarkArguments",
"type": "object"
},
"name": "corridor_benchmark",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "corridor_benchmarkOutput",
"type": "object"
}
},
{
"description": "How does this site compare with the named stations around it — distance, EVSE count, max kW, and sessions per EVSE-day each?\n\nReads the corridor_comparison claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"CorridorComparisonParams": {
"additionalProperties": false,
"properties": {
"location": {
"$ref": "#/$defs/NearbyStationParams"
},
"observation_params": {
"$ref": "#/$defs/StationUtilizationParams"
},
"site_id": {
"pattern": "^[0-9a-fA-F]{32}$",
"title": "Site Id",
"type": "string"
}
},
"required": [
"site_id",
"location",
"observation_params"
],
"title": "CorridorComparisonParams",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"NearbyStationParams": {
"additionalProperties": false,
"properties": {
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"lat": {
"maximum": 90,
"minimum": -90,
"title": "Lat",
"type": "number"
},
"limit": {
"anyOf": [
{
"maximum": 50,
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Limit"
},
"lng": {
"maximum": 180,
"minimum": -180,
"title": "Lng",
"type": "number"
},
"radius_km": {
"exclusiveMinimum": 0,
"maximum": 10,
"title": "Radius Km",
"type": "number"
}
},
"required": [
"country_iso3",
"lat",
"lng",
"radius_km"
],
"title": "NearbyStationParams",
"type": "object"
},
"StationUtilizationParams": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"station_ids": {
"items": {
"type": "string"
},
"maxLength": 20,
"minLength": 1,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids",
"date_range"
],
"title": "StationUtilizationParams",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/CorridorComparisonParams"
}
},
"required": [
"params"
],
"title": "corridor_comparisonArguments",
"type": "object"
},
"name": "corridor_comparison",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "corridor_comparisonOutput",
"type": "object"
}
},
{
"description": "Which days ran far above this site's normal, and by how much?\n\nReads the daily_spike claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"DailySpikeParams": {
"additionalProperties": false,
"properties": {
"factor": {
"default": 1.5,
"exclusiveMinimum": 0,
"title": "Factor",
"type": "number"
},
"observation_params": {
"$ref": "#/$defs/StationUtilizationParams"
},
"site_id": {
"minLength": 1,
"title": "Site Id",
"type": "string"
}
},
"required": [
"site_id",
"observation_params"
],
"title": "DailySpikeParams",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"StationUtilizationParams": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"station_ids": {
"items": {
"type": "string"
},
"maxLength": 20,
"minLength": 1,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids",
"date_range"
],
"title": "StationUtilizationParams",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/DailySpikeParams"
}
},
"required": [
"params"
],
"title": "daily_spikeArguments",
"type": "object"
},
"name": "daily_spike",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "daily_spikeOutput",
"type": "object"
}
},
{
"description": "Was one particular day unusual for the day of week it fell on?\n\nReads the day_vs_similar claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"DayVsSimilarParams": {
"additionalProperties": false,
"properties": {
"observation_params": {
"$ref": "#/$defs/StationUtilizationParams"
},
"site_id": {
"minLength": 1,
"title": "Site Id",
"type": "string"
},
"station_id": {
"minLength": 1,
"title": "Station Id",
"type": "string"
},
"target_date": {
"title": "Target Date",
"type": "string"
}
},
"required": [
"site_id",
"observation_params",
"station_id",
"target_date"
],
"title": "DayVsSimilarParams",
"type": "object"
},
"StationUtilizationParams": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"station_ids": {
"items": {
"type": "string"
},
"maxLength": 20,
"minLength": 1,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids",
"date_range"
],
"title": "StationUtilizationParams",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/DayVsSimilarParams"
}
},
"required": [
"params"
],
"title": "day_vs_similarArguments",
"type": "object"
},
"name": "day_vs_similar",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "day_vs_similarOutput",
"type": "object"
}
},
{
"description": "How much of the area's demand does this one site take, said as a multiple of the mean station?\n\nReads the demand_share_multiple claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"CapacityBand": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"anyOf": [
{
"exclusiveMinimum": 0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Max Capacity Kw"
},
"min_capacity_kw": {
"anyOf": [
{
"exclusiveMinimum": 0,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Min Capacity Kw"
}
},
"title": "CapacityBand",
"type": "object"
},
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"DemandShareMultipleParams": {
"additionalProperties": false,
"properties": {
"aggregate_params": {
"$ref": "#/$defs/StationAggregateParams"
},
"observation_params": {
"$ref": "#/$defs/StationUtilizationParams"
},
"site_id": {
"minLength": 1,
"title": "Site Id",
"type": "string"
}
},
"required": [
"site_id",
"observation_params",
"aggregate_params"
],
"title": "DemandShareMultipleParams",
"type": "object"
},
"StationAggregateParams": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityBand",
"default": {
"max_capacity_kw": null,
"min_capacity_kw": null
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"geometry": {
"minLength": 1,
"title": "Geometry",
"type": "string"
}
},
"required": [
"country_iso3",
"geometry",
"date_range"
],
"title": "StationAggregateParams",
"type": "object"
},
"StationUtilizationParams": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"station_ids": {
"items": {
"type": "string"
},
"maxLength": 20,
"minLength": 1,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids",
"date_range"
],
"title": "StationUtilizationParams",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/DemandShareMultipleParams"
}
},
"required": [
"params"
],
"title": "demand_share_multipleArguments",
"type": "object"
},
"name": "demand_share_multiple",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "demand_share_multipleOutput",
"type": "object"
}
},
{
"description": "Which estate sites reported on every day of the window, which are partial or young, and how full is the window's final day?\n\nReads the estate_coverage claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"EstateCoverageParams": {
"additionalProperties": false,
"properties": {
"estate": {
"$ref": "#/$defs/EstateScope"
},
"site_id": {
"minLength": 1,
"title": "Site Id",
"type": "string"
}
},
"required": [
"site_id",
"estate"
],
"title": "EstateCoverageParams",
"type": "object"
},
"EstateScope": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"station_ids": {
"items": {
"pattern": "^[0-9a-fA-F]{32}$",
"type": "string"
},
"maxLength": 50,
"minLength": 2,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids",
"date_range"
],
"title": "EstateScope",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/EstateCoverageParams"
}
},
"required": [
"params"
],
"title": "estate_coverageArguments",
"type": "object"
},
"name": "estate_coverage",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "estate_coverageOutput",
"type": "object"
}
},
{
"description": "Did demand per EVSE across the estate move month over month, and did each focus site move with it?\n\nReads the estate_monthly_series claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"EstateMonthlySeriesParams": {
"additionalProperties": false,
"properties": {
"estate": {
"$ref": "#/$defs/EstateScope"
},
"focus_station_ids": {
"default": [],
"items": {
"pattern": "^[0-9a-fA-F]{32}$",
"type": "string"
},
"maxItems": 6,
"title": "Focus Station Ids",
"type": "array"
},
"site_id": {
"minLength": 1,
"title": "Site Id",
"type": "string"
}
},
"required": [
"site_id",
"estate"
],
"title": "EstateMonthlySeriesParams",
"type": "object"
},
"EstateScope": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"station_ids": {
"items": {
"pattern": "^[0-9a-fA-F]{32}$",
"type": "string"
},
"maxLength": 50,
"minLength": 2,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids",
"date_range"
],
"title": "EstateScope",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/EstateMonthlySeriesParams"
}
},
"required": [
"params"
],
"title": "estate_monthly_seriesArguments",
"type": "object"
},
"name": "estate_monthly_series",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "estate_monthly_seriesOutput",
"type": "object"
}
},
{
"description": "When in the day does demand at this site peak?\n\nReads the hourly_spike claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"DateList": {
"additionalProperties": false,
"properties": {
"dates": {
"items": {
"type": "string"
},
"minLength": 1,
"title": "Dates",
"type": "array"
}
},
"required": [
"dates"
],
"title": "DateList",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"EvseHourlyParams": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Date"
},
"dates": {
"anyOf": [
{
"$ref": "#/$defs/DateList"
},
{
"type": "null"
}
],
"default": null
},
"station_ids": {
"items": {
"type": "string"
},
"maxLength": 20,
"minLength": 1,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids"
],
"title": "EvseHourlyParams",
"type": "object"
},
"HourlySpikeParams": {
"additionalProperties": false,
"properties": {
"date_range": {
"$ref": "#/$defs/DateRange"
},
"observation_params": {
"$ref": "#/$defs/EvseHourlyParams"
},
"peak_window": {
"$ref": "#/$defs/PeakWindow",
"default": {
"from_hour": 6,
"until_hour": 23
}
},
"site_id": {
"minLength": 1,
"title": "Site Id",
"type": "string"
}
},
"required": [
"observation_params",
"date_range",
"site_id"
],
"title": "HourlySpikeParams",
"type": "object"
},
"PeakWindow": {
"additionalProperties": false,
"properties": {
"from_hour": {
"default": 6,
"maximum": 23,
"minimum": 0,
"title": "From Hour",
"type": "integer"
},
"until_hour": {
"default": 23,
"maximum": 24,
"minimum": 1,
"title": "Until Hour",
"type": "integer"
}
},
"title": "PeakWindow",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/HourlySpikeParams"
}
},
"required": [
"params"
],
"title": "hourly_spikeArguments",
"type": "object"
},
"name": "hourly_spike",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "hourly_spikeOutput",
"type": "object"
}
},
{
"description": "List the individual EVSEs (connectors) of up to 20 stations, with their capacity in kW. Stall counts and capacity bands come from here rather than from a station record.",
"inputSchema": {
"properties": {
"country_iso3": {
"description": "ISO-3166 alpha-3 scope, e.g. NOR.",
"maxLength": 3,
"minLength": 3,
"title": "Country Iso3",
"type": "string"
},
"station_ids": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "string"
}
],
"description": "1-20 station ids (array or comma-separated).",
"title": "Station Ids"
}
},
"required": [
"country_iso3",
"station_ids"
],
"title": "list_evsesArguments",
"type": "object"
},
"name": "list_evses",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "list_evsesOutput",
"type": "object"
}
},
{
"description": "Is demand per EVSE rising or falling month over month?\n\nReads the monthly_sessions_per_stall_day claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"MonthlySessionsPerStallDayParams": {
"additionalProperties": false,
"properties": {
"observation_params": {
"$ref": "#/$defs/StationUtilizationParams"
},
"site_id": {
"minLength": 1,
"title": "Site Id",
"type": "string"
},
"station_id": {
"anyOf": [
{
"minLength": 1,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Station Id"
}
},
"required": [
"site_id",
"observation_params"
],
"title": "MonthlySessionsPerStallDayParams",
"type": "object"
},
"StationUtilizationParams": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"station_ids": {
"items": {
"type": "string"
},
"maxLength": 20,
"minLength": 1,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids",
"date_range"
],
"title": "StationUtilizationParams",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/MonthlySessionsPerStallDayParams"
}
},
"required": [
"params"
],
"title": "monthly_sessions_per_stall_dayArguments",
"type": "object"
},
"name": "monthly_sessions_per_stall_day",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "monthly_sessions_per_stall_dayOutput",
"type": "object"
}
},
{
"description": "List the charging stations within a radius of a point, nearest first. The radius is in kilometres and at most 10; the reply is the API payload inline. This is how a site's competitors are found before any claim is read.",
"inputSchema": {
"properties": {
"country_iso3": {
"description": "ISO-3166 alpha-3 scope, e.g. NOR.",
"maxLength": 3,
"minLength": 3,
"title": "Country Iso3",
"type": "string"
},
"lat": {
"title": "Lat",
"type": "number"
},
"limit": {
"anyOf": [
{
"maximum": 50,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Limit"
},
"lng": {
"title": "Lng",
"type": "number"
},
"radius_km": {
"description": "km, > 0 and <= 10.",
"exclusiveMinimum": 0,
"maximum": 10,
"title": "Radius Km",
"type": "number"
}
},
"required": [
"country_iso3",
"lat",
"lng",
"radius_km"
],
"title": "nearby_charging_stationsArguments",
"type": "object"
},
"name": "nearby_charging_stations",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "nearby_charging_stationsOutput",
"type": "object"
}
},
{
"description": "When the site reaches its busiest hour of the day, do the stations around it reach their own busiest hours at the same time?\n\nReads the peak_hour_co_saturation claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"DateList": {
"additionalProperties": false,
"properties": {
"dates": {
"items": {
"type": "string"
},
"minLength": 1,
"title": "Dates",
"type": "array"
}
},
"required": [
"dates"
],
"title": "DateList",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"EvseHourlyParams": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Date"
},
"dates": {
"anyOf": [
{
"$ref": "#/$defs/DateList"
},
{
"type": "null"
}
],
"default": null
},
"station_ids": {
"items": {
"type": "string"
},
"maxLength": 20,
"minLength": 1,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids"
],
"title": "EvseHourlyParams",
"type": "object"
},
"PeakHourCoSaturationParams": {
"additionalProperties": false,
"properties": {
"date_range": {
"$ref": "#/$defs/DateRange"
},
"observation_params": {
"$ref": "#/$defs/EvseHourlyParams"
},
"peak_window": {
"$ref": "#/$defs/PeakWindow",
"default": {
"from_hour": 6,
"until_hour": 23
}
},
"site_id": {
"pattern": "^[0-9a-fA-F]{32}$",
"title": "Site Id",
"type": "string"
},
"tolerance_hours": {
"default": 1,
"maximum": 6,
"minimum": 0,
"title": "Tolerance Hours",
"type": "integer"
}
},
"required": [
"observation_params",
"date_range",
"site_id"
],
"title": "PeakHourCoSaturationParams",
"type": "object"
},
"PeakWindow": {
"additionalProperties": false,
"properties": {
"from_hour": {
"default": 6,
"maximum": 23,
"minimum": 0,
"title": "From Hour",
"type": "integer"
},
"until_hour": {
"default": 23,
"maximum": 24,
"minimum": 1,
"title": "Until Hour",
"type": "integer"
}
},
"title": "PeakWindow",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/PeakHourCoSaturationParams"
}
},
"required": [
"params"
],
"title": "peak_hour_co_saturationArguments",
"type": "object"
},
"name": "peak_hour_co_saturation",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "peak_hour_co_saturationOutput",
"type": "object"
}
},
{
"description": "What kind of place is this site sitting in?\n\nReads the poi_context claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.\n\nplaces carries the rows this claim reads, because they are transcribed by the caller rather than fetched.",
"inputSchema": {
"$defs": {
"PlaceRow": {
"additionalProperties": true,
"properties": {
"co_located": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Co Located"
},
"dist_m": {
"minimum": 0,
"title": "Dist M",
"type": "integer"
},
"kind": {
"minLength": 1,
"title": "Kind",
"type": "string"
},
"lat": {
"title": "Lat",
"type": "number"
},
"lon": {
"title": "Lon",
"type": "number"
},
"name": {
"minLength": 1,
"title": "Name",
"type": "string"
},
"note": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Note"
},
"place_ref": {
"minLength": 1,
"title": "Place Ref",
"type": "string"
},
"rating": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Rating"
},
"reviews": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Reviews"
},
"source": {
"enum": [
"google_places",
"chargefinder"
],
"title": "Source",
"type": "string"
},
"station_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Station Id"
}
},
"required": [
"name",
"kind",
"dist_m",
"lat",
"lon",
"place_ref",
"source"
],
"title": "PlaceRow",
"type": "object"
},
"PoiContextParams": {
"additionalProperties": false,
"properties": {
"site_id": {
"minLength": 1,
"title": "Site Id",
"type": "string"
}
},
"required": [
"site_id"
],
"title": "PoiContextParams",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/PoiContextParams"
},
"places": {
"items": {
"$ref": "#/$defs/PlaceRow"
},
"title": "Places",
"type": "array"
}
},
"required": [
"params",
"places"
],
"title": "poi_contextArguments",
"type": "object"
},
"name": "poi_context",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "poi_contextOutput",
"type": "object"
}
},
{
"description": "Where does this site sit in its estate's ranking, and how far is it from the estate median and the estate leader?\n\nReads the rank_gap claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"EstateScope": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"station_ids": {
"items": {
"pattern": "^[0-9a-fA-F]{32}$",
"type": "string"
},
"maxLength": 50,
"minLength": 2,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids",
"date_range"
],
"title": "EstateScope",
"type": "object"
},
"RankGapParams": {
"additionalProperties": false,
"properties": {
"estate": {
"$ref": "#/$defs/EstateScope"
},
"site_id": {
"pattern": "^[0-9a-fA-F]{32}$",
"title": "Site Id",
"type": "string"
},
"station_id": {
"pattern": "^[0-9a-fA-F]{32}$",
"title": "Station Id",
"type": "string"
}
},
"required": [
"site_id",
"estate",
"station_id"
],
"title": "RankGapParams",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/RankGapParams"
}
},
"required": [
"params"
],
"title": "rank_gapArguments",
"type": "object"
},
"name": "rank_gap",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "rank_gapOutput",
"type": "object"
}
},
{
"description": "What road does this site sit on, and what class is it?\n\nReads the road_context claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"OvertureRoadsParams": {
"additionalProperties": false,
"properties": {
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"radius_m": {
"anyOf": [
{
"exclusiveMinimum": 0,
"maximum": 10000,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Radius M"
},
"station_ids": {
"items": {
"type": "string"
},
"maxLength": 20,
"minLength": 1,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids"
],
"title": "OvertureRoadsParams",
"type": "object"
},
"RoadContextParams": {
"additionalProperties": false,
"properties": {
"observation_params": {
"$ref": "#/$defs/OvertureRoadsParams"
},
"site_id": {
"minLength": 1,
"title": "Site Id",
"type": "string"
}
},
"required": [
"site_id",
"observation_params"
],
"title": "RoadContextParams",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/RoadContextParams"
}
},
"required": [
"params"
],
"title": "road_contextArguments",
"type": "object"
},
"name": "road_context",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "road_contextOutput",
"type": "object"
}
},
{
"description": "Find charging stations in one country by structured filter — id, title, address, operator. The reply is the API payload inline: station ids, titles, addresses and operators, which is what the claim tools take as site_id and station_id.",
"inputSchema": {
"properties": {
"address": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Address"
},
"country_iso3": {
"description": "ISO-3166 alpha-3 scope, e.g. NOR.",
"maxLength": 3,
"minLength": 3,
"title": "Country Iso3",
"type": "string"
},
"id": {
"anyOf": [
{
"pattern": "^[0-9a-fA-F]{32}$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "One 32-char hex station id.",
"title": "Id"
},
"limit": {
"anyOf": [
{
"maximum": 50,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Limit"
},
"operator": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Operator"
},
"title": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Title"
}
},
"required": [
"country_iso3"
],
"title": "search_charging_stationsArguments",
"type": "object"
},
"name": "search_charging_stations",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "search_charging_stationsOutput",
"type": "object"
}
},
{
"description": "How hard is each EVSE at this site working per day?\n\nReads the sessions_per_stall_day claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"SessionsPerStallDayParams": {
"additionalProperties": false,
"properties": {
"observation_params": {
"$ref": "#/$defs/StationUtilizationParams"
},
"site_id": {
"minLength": 1,
"title": "Site Id",
"type": "string"
},
"station_id": {
"anyOf": [
{
"minLength": 1,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Station Id"
}
},
"required": [
"site_id",
"observation_params"
],
"title": "SessionsPerStallDayParams",
"type": "object"
},
"StationUtilizationParams": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"station_ids": {
"items": {
"type": "string"
},
"maxLength": 20,
"minLength": 1,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids",
"date_range"
],
"title": "StationUtilizationParams",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/SessionsPerStallDayParams"
}
},
"required": [
"params"
],
"title": "sessions_per_stall_dayArguments",
"type": "object"
},
"name": "sessions_per_stall_day",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "sessions_per_stall_dayOutput",
"type": "object"
}
},
{
"description": "What is this site — how many EVSEs, and how close is the nearest station?\n\nReads the site_profile claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"NearbyStationParams": {
"additionalProperties": false,
"properties": {
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"lat": {
"maximum": 90,
"minimum": -90,
"title": "Lat",
"type": "number"
},
"limit": {
"anyOf": [
{
"maximum": 50,
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Limit"
},
"lng": {
"maximum": 180,
"minimum": -180,
"title": "Lng",
"type": "number"
},
"radius_km": {
"exclusiveMinimum": 0,
"maximum": 10,
"title": "Radius Km",
"type": "number"
}
},
"required": [
"country_iso3",
"lat",
"lng",
"radius_km"
],
"title": "NearbyStationParams",
"type": "object"
},
"SiteProfileParams": {
"additionalProperties": false,
"properties": {
"location": {
"$ref": "#/$defs/NearbyStationParams"
},
"site_id": {
"pattern": "^[0-9a-fA-F]{32}$",
"title": "Site Id",
"type": "string"
}
},
"required": [
"site_id",
"location"
],
"title": "SiteProfileParams",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/SiteProfileParams"
}
},
"required": [
"params"
],
"title": "site_profileArguments",
"type": "object"
},
"name": "site_profile",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "site_profileOutput",
"type": "object"
}
},
{
"description": "How do the estate's sites rank on sessions per EVSE-day over one window, and how far is the leader above the estate median?\n\nReads the site_ranking claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"EstateScope": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"station_ids": {
"items": {
"pattern": "^[0-9a-fA-F]{32}$",
"type": "string"
},
"maxLength": 50,
"minLength": 2,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids",
"date_range"
],
"title": "EstateScope",
"type": "object"
},
"SiteRankingParams": {
"additionalProperties": false,
"properties": {
"estate": {
"$ref": "#/$defs/EstateScope"
},
"site_id": {
"minLength": 1,
"title": "Site Id",
"type": "string"
}
},
"required": [
"site_id",
"estate"
],
"title": "SiteRankingParams",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/SiteRankingParams"
}
},
"required": [
"params"
],
"title": "site_rankingArguments",
"type": "object"
},
"name": "site_ranking",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "site_rankingOutput",
"type": "object"
}
},
{
"description": "How many minutes of charging did this site actually deliver over the window?\n\nReads the total_charging_minutes claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"StationUtilizationParams": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"station_ids": {
"items": {
"type": "string"
},
"maxLength": 20,
"minLength": 1,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids",
"date_range"
],
"title": "StationUtilizationParams",
"type": "object"
},
"TotalChargingMinutesParams": {
"additionalProperties": false,
"properties": {
"observation_params": {
"$ref": "#/$defs/StationUtilizationParams"
},
"site_id": {
"minLength": 1,
"title": "Site Id",
"type": "string"
},
"station_id": {
"anyOf": [
{
"minLength": 1,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Station Id"
}
},
"required": [
"site_id",
"observation_params"
],
"title": "TotalChargingMinutesParams",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/TotalChargingMinutesParams"
}
},
"required": [
"params"
],
"title": "total_charging_minutesArguments",
"type": "object"
},
"name": "total_charging_minutes",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "total_charging_minutesOutput",
"type": "object"
}
},
{
"description": "How much charging demand did this site see over the window?\n\nReads the total_sessions claim for one site and returns only its result: the status the claim decided from its own observations (computed or insufficient), the typed result, and the display a deliverable would print. The observations behind it are pulled into a scratch directory that is deleted before the call returns, so the rows never enter the conversation and nothing is left on the server to read back later — this call is the whole reading.",
"inputSchema": {
"$defs": {
"CapacityRange": {
"additionalProperties": false,
"properties": {
"max_capacity_kw": {
"default": 1000,
"title": "Max Capacity Kw",
"type": "number"
},
"min_capacity_kw": {
"default": 150,
"title": "Min Capacity Kw",
"type": "number"
}
},
"title": "CapacityRange",
"type": "object"
},
"DateRange": {
"additionalProperties": false,
"properties": {
"date_from": {
"title": "Date From",
"type": "string"
},
"date_to": {
"title": "Date To",
"type": "string"
}
},
"required": [
"date_from",
"date_to"
],
"title": "DateRange",
"type": "object"
},
"StationUtilizationParams": {
"additionalProperties": false,
"properties": {
"capacity": {
"$ref": "#/$defs/CapacityRange",
"default": {
"max_capacity_kw": "1000.0",
"min_capacity_kw": "150.0"
}
},
"country_iso3": {
"maxLength": 3,
"minLength": 3,
"pattern": "^[A-Za-z]{3}$",
"title": "Country Iso3",
"type": "string"
},
"date_range": {
"$ref": "#/$defs/DateRange"
},
"station_ids": {
"items": {
"type": "string"
},
"maxLength": 20,
"minLength": 1,
"title": "Station Ids",
"type": "array"
}
},
"required": [
"country_iso3",
"station_ids",
"date_range"
],
"title": "StationUtilizationParams",
"type": "object"
},
"TotalSessionsParams": {
"additionalProperties": false,
"properties": {
"observation_params": {
"$ref": "#/$defs/StationUtilizationParams"
},
"site_id": {
"minLength": 1,
"title": "Site Id",
"type": "string"
},
"station_id": {
"anyOf": [
{
"minLength": 1,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Station Id"
}
},
"required": [
"site_id",
"observation_params"
],
"title": "TotalSessionsParams",
"type": "object"
}
},
"properties": {
"params": {
"$ref": "#/$defs/TotalSessionsParams"
}
},
"required": [
"params"
],
"title": "total_sessionsArguments",
"type": "object"
},
"name": "total_sessions",
"outputSchema": {
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "total_sessionsOutput",
"type": "object"
}
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:576cd66d4f168717d95728242e98fa5942d2e0a440ab62e9e6c27134f52b9df2 | sha256sum