spokes.alainschlesser.com
A shared map for finding a place that works for everyone. Plan several stops, bring your people and agents, and choose what to share. No account needed.
First seen 2026-11-05 · Last seen 2026-11-05 · Source: webmcp.com
Answer 6 · Act 17 · Transact 1 · Score: Not yet scored
Tool inspector
submit_requirement
Add or update your need; requirementId updates an existing one. Hard needs classify candidates; unknown evidence remains uncertain. Shared publishes content; application-private stores it for the app and owner; agent-private declares without payload/note and uses screening verdicts. Returns the need ID and applied settings.
Input schema
| Property | Type | Required | Description |
|---|---|---|---|
baseRevision |
integer | yes | Use the revision from your last sync; on sync_required, read the delta before retrying. |
requirementId |
string | no | — |
visibility |
string | yes | — |
hardness |
string | yes | — |
delegation |
object | yes | — |
payload |
— | no | — |
scopeHint |
object | no | — |
note |
string | no | — |
Raw JSON schema
{
"additionalProperties": false,
"type": "object",
"required": [
"baseRevision",
"visibility",
"hardness",
"delegation"
],
"properties": {
"baseRevision": {
"minimum": 0,
"description": "Use the revision from your last sync; on sync_required, read the delta before retrying.",
"type": "integer"
},
"requirementId": {
"maxLength": 40,
"type": "string"
},
"visibility": {
"type": "string",
"enum": [
"shared",
"application-private",
"agent-private"
]
},
"hardness": {
"type": "string",
"enum": [
"hard",
"soft"
]
},
"delegation": {
"additionalProperties": false,
"type": "object",
"required": [
"mode"
],
"properties": {
"mode": {
"type": "string",
"enum": [
"locked",
"approval_required",
"negotiable",
"soft"
]
},
"bound": {
"additionalProperties": false,
"type": "object",
"required": [
"dimension",
"max"
],
"properties": {
"dimension": {
"type": "string",
"enum": [
"radius_m",
"per_person_eur",
"walk_min"
]
},
"max": {
"type": "number"
}
}
}
}
},
"payload": {
"anyOf": [
{
"additionalProperties": false,
"type": "object",
"required": [
"kind",
"key",
"expect"
],
"properties": {
"kind": {
"const": "attribute",
"type": "string"
},
"key": {
"type": "string",
"enum": [
"vegetarian-options",
"vegan-options",
"gluten-free-options",
"halal-options",
"lactose-free-options",
"wheelchair-accessible",
"outdoor-seating",
"dog-friendly",
"wifi",
"quiet",
"step-free-entrance",
"accessible-toilet",
"assistance-dog-access",
"takeaway",
"delivery",
"price-level",
"cuisine"
]
},
"expect": {
"type": "string",
"enum": [
"verified_true",
"verified_false"
]
}
}
},
{
"additionalProperties": false,
"type": "object",
"required": [
"kind",
"dimension",
"max"
],
"properties": {
"kind": {
"const": "scope",
"type": "string"
},
"dimension": {
"type": "string",
"enum": [
"walk_min",
"radius_m"
]
},
"max": {
"type": "number"
},
"referent": {
"$ref": "#/$defs/schema1"
}
}
},
{
"additionalProperties": false,
"type": "object",
"required": [
"kind",
"dimension",
"max",
"mode"
],
"properties": {
"kind": {
"const": "scope",
"type": "string"
},
"dimension": {
"const": "travel_min",
"type": "string"
},
"max": {
"type": "number"
},
"mode": {
"type": "string",
"enum": [
"walk",
"bike",
"car",
"transit"
]
},
"referent": {
"$ref": "#/$defs/schema1"
}
}
},
{
"additionalProperties": false,
"type": "object",
"required": [
"kind",
"perPersonMax"
],
"properties": {
"kind": {
"const": "budget",
"type": "string"
},
"perPersonMax": {
"additionalProperties": false,
"type": "object",
"required": [
"amount",
"currency"
],
"properties": {
"amount": {
"minimum": 0,
"type": "number"
},
"currency": {
"type": "string",
"enum": [
"EUR",
"USD"
]
}
}
}
}
},
{
"additionalProperties": false,
"type": "object",
"required": [
"kind",
"window"
],
"properties": {
"kind": {
"const": "time",
"type": "string"
},
"window": {
"additionalProperties": false,
"type": "object",
"required": [
"start",
"end"
],
"properties": {
"start": {
"format": "date-time",
"maxLength": 40,
"type": "string"
},
"end": {
"format": "date-time",
"maxLength": 40,
"type": "string"
}
}
},
"phrase": {
"minLength": 1,
"maxLength": 200,
"type": "string"
}
}
},
{
"additionalProperties": false,
"type": "object",
"required": [
"kind",
"text"
],
"properties": {
"kind": {
"const": "text",
"type": "string"
},
"text": {
"minLength": 1,
"maxLength": 200,
"type": "string"
},
"evidenceKeys": {
"maxItems": 6,
"uniqueItems": true,
"type": "array",
"items": {
"type": "string",
"enum": [
"vegetarian-options",
"vegan-options",
"gluten-free-options",
"halal-options",
"lactose-free-options",
"wheelchair-accessible",
"outdoor-seating",
"dog-friendly",
"wifi",
"quiet",
"step-free-entrance",
"accessible-toilet",
"assistance-dog-access",
"takeaway",
"delivery",
"price-level",
"cuisine",
"nearby-toilets"
]
}
}
}
},
{
"additionalProperties": false,
"type": "object",
"required": [
"kind",
"key",
"values",
"lifetime"
],
"properties": {
"kind": {
"const": "exclusion",
"type": "string"
},
"key": {
"const": "cuisine",
"type": "string"
},
"values": {
"minItems": 1,
"maxItems": 8,
"type": "array",
"items": {
"maxLength": 60,
"type": "string"
}
},
"lifetime": {
"type": "string",
"enum": [
"session",
"durable"
]
}
}
},
{
"additionalProperties": false,
"type": "object",
"required": [
"kind",
"key",
"values",
"lifetime"
],
"properties": {
"kind": {
"const": "inclusion",
"type": "string"
},
"key": {
"const": "cuisine",
"type": "string"
},
"values": {
"minItems": 1,
"maxItems": 8,
"type": "array",
"items": {
"maxLength": 60,
"type": "string"
}
},
"lifetime": {
"type": "string",
"enum": [
"session",
"durable"
]
}
}
}
]
},
"scopeHint": {
"additionalProperties": false,
"type": "object",
"required": [
"affects"
],
"properties": {
"affects": {
"const": "candidate-eligibility",
"type": "string"
},
"category": {
"type": "string",
"enum": [
"dietary",
"accessibility",
"budget",
"distance",
"time",
"personal-history",
"atmosphere",
"other"
]
}
}
},
"note": {
"maxLength": 200,
"type": "string"
}
},
"$defs": {
"schema3": {
"minLength": 1,
"maxLength": 40,
"description": "Step whose chosen place this referent points at; omit for the current step (`s1` by default).",
"type": "string"
},
"schema2": {
"additionalProperties": false,
"type": "object",
"required": [
"kind"
],
"properties": {
"kind": {
"const": "self",
"type": "string"
},
"stepId": {
"$ref": "#/$defs/schema3"
}
}
},
"schema4": {
"additionalProperties": false,
"type": "object",
"required": [
"kind"
],
"properties": {
"kind": {
"const": "scopeCenter",
"type": "string"
},
"stepId": {
"$ref": "#/$defs/schema3"
}
}
},
"schema5": {
"additionalProperties": false,
"type": "object",
"required": [
"kind",
"candidateId"
],
"properties": {
"kind": {
"const": "candidate",
"type": "string"
},
"candidateId": {
"minLength": 1,
"maxLength": 40,
"type": "string"
},
"stepId": {
"$ref": "#/$defs/schema3"
}
}
},
"schema6": {
"additionalProperties": false,
"type": "object",
"required": [
"kind",
"participantId"
],
"properties": {
"kind": {
"const": "participant",
"type": "string"
},
"participantId": {
"minLength": 1,
"maxLength": 40,
"type": "string"
},
"stepId": {
"$ref": "#/$defs/schema3"
}
}
},
"schema7": {
"additionalProperties": false,
"type": "object",
"required": [
"kind",
"lat",
"lng"
],
"properties": {
"kind": {
"const": "point",
"type": "string"
},
"lat": {
"minimum": -90,
"maximum": 90,
"type": "number"
},
"lng": {
"minimum": -180,
"maximum": 180,
"type": "number"
},
"label": {
"minLength": 1,
"maxLength": 100,
"type": "string"
},
"stepId": {
"$ref": "#/$defs/schema3"
}
}
},
"schema8": {
"additionalProperties": false,
"type": "object",
"required": [
"kind",
"landmarkId"
],
"properties": {
"kind": {
"const": "landmark",
"type": "string"
},
"landmarkId": {
"minLength": 1,
"maxLength": 100,
"type": "string"
},
"stepId": {
"$ref": "#/$defs/schema3"
}
}
},
"schema1": {
"anyOf": [
{
"$ref": "#/$defs/schema2"
},
{
"$ref": "#/$defs/schema4"
},
{
"$ref": "#/$defs/schema5"
},
{
"$ref": "#/$defs/schema6"
},
{
"$ref": "#/$defs/schema7"
},
{
"$ref": "#/$defs/schema8"
}
]
}
}
}
Similar websites
gabrielcatdeveloper.github.io
portami
carregados.com.br
Brazilian EV charging station map and trip planner for finding charging points and planning routes with charging stops across Latin America.
trip-world-taupe.vercel.app
TripBuilder is a shared itinerary workspace for humans and AI agents.
freemap.sk
Freemap Slovakia, a detailed digital map of Central Europe for hiking, cycling, cross-country skiing and horse riding, with marked trails and place search.