Developer quickstart
Use the same rules through REST or MCP.
Six read-only tools return explicit evidence, unknowns, revisions, and assumptions. Published responses identify their reviewed dataset revision and evaluation scope.
REST quickstart
curl --get https://asmaliana.com/api/v1/places \
--data-urlencode "query=lantern" \
--data-urlencode "locale=en"
Public facts use 1 credit. Visit-window checks use 2, itinerary validation 3, and planning 5. The current anonymous quota is 30 credits per UTC day.
Remote MCP
{
"mcpServers": {
"asmaliana": {
"type": "streamable-http",
"url": "https://asmaliana.com/mcp"
}
}
}
The endpoint implements Streamable HTTP with the official TypeScript SDK. It is stateless and read-only. A dedicated D1 binding provides scoped API-key lookup and atomic quota accounting; no public key is issued by default. OAuth is not advertised or implemented.
Machine-readable contracts
Capabilities
read-onlysearch_melaka_places
Search covered Melaka demo or verified place facts with deterministic filters and evidence-aware matching. Use it to discover stable place IDs. Do not treat missing evidence as a passed hard constraint or use it for live inventory.
GET /api/v1/places · 1 credit
read-onlyget_melaka_place_facts
Retrieve rights-filtered facts, field evidence, schedules, offers, services, facilities, and revisions for one covered place ID. Do not use it to confirm live operation, ticket inventory, or a booking.
GET /api/v1/places/{place_id} · 1 credit
read-onlycheck_melaka_visit_window
Check whether an arrival and duration fit published schedules, exceptions, last entry, and known service status. Use before finalizing an itinerary. This is not a real-time opening, inventory, or booking confirmation.
POST /api/v1/visit-window/check · 2 credits
read-onlyget_melaka_weather_advisory
Return the configured Melaka-area weather advisory state, forecast coverage, spatial granularity, validity, and evidence. Do not interpret area forecasts as venue conditions or absence of warnings as safety.
GET /api/v1/weather/advisory · 1 credit
read-onlyplan_melaka_day
Build a deterministic single-day candidate itinerary of at most eight stops from covered facts and explicit route assumptions. Use for a practical draft. It does not promise a globally optimal route or live availability.
POST /api/v1/itineraries/plan · 5 credits
read-onlyvalidate_melaka_itinerary
Validate up to eight structured stops against published windows, services, costs, constraints, and supplied transport estimates. Use for an existing itinerary. Free-text parsing, booking, and live operation checks are not supported.
POST /api/v1/itineraries/validate · 3 credits
Important semantics
success: true means the computation ran, not that a venue is open or a trip is guaranteed.needs_verification is a normal 200 result when evidence is insufficient.- POST computations are side-effect free and use
private, no-store. - Request bodies are limited to 64 KiB; responses to 128 KiB; arrays and strings are schema-bounded.