{
  "spec_version": "1.0",
  "sources": [
    {
      "id": "api",
      "type": "openapi",
      "url": "https://hammockproject.dumaguete.uk/openapi.json"
    },
    {
      "id": "mcp",
      "type": "mcp",
      "url": "https://hammockproject.dumaguete.uk/.well-known/mcp-server-card"
    }
  ],
  "flows": [
    {
      "id": "where-now",
      "title": "Where is it tonight, and next",
      "description": "Answer: where is the Hammock Hotel Project now, until when, how many hammocks are free, and where does it move next.",
      "actions": [
        {
          "id": "now",
          "source": "api",
          "operationId": "getNow"
        }
      ]
    },
    {
      "id": "send-to-join",
      "title": "Point a person at the right night",
      "description": "Find a night with hammocks free, then hand the person its join link. Joining itself is theirs to do.",
      "actions": [
        {
          "id": "nights",
          "source": "api",
          "operationId": "listNights"
        },
        {
          "id": "join",
          "source": "api",
          "operationId": "getNow",
          "links": {
            "join_url": "nights.output.nights[].join_url"
          }
        }
      ]
    },
    {
      "id": "find-the-page",
      "title": "Find the page that answers",
      "description": "Turn a question into the page (and its Markdown twin) that answers it.",
      "actions": [
        {
          "id": "search",
          "source": "api",
          "operationId": "searchSite",
          "parameters": {
            "q": "the user's words"
          }
        }
      ]
    }
  ]
}
