{"openapi":"3.1.0","info":{"title":"Sahra (Desert) API","version":"0.1.0","description":"A fully local desert ecology, camping/travel safety, and Bedouin desert-life knowledge reference: desert plants and animals with IUCN-verified conservation status, camping safety, traditional Bedouin navigation knowledge, desert geography, and glossaries.\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://sahra.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"hr@unifydynamics.com","url":"https://connectorbay.com/sahra/docs"},"termsOfService":"https://connectorbay.com/sahra/terms"},"servers":[{"url":"https://sahra.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/sahra/docs"},"security":[{},{"bearer":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/desert_plant_info":{"post":{"operationId":"desert_plant_info","summary":"One desert plant's description, habitat, adaptations, and traditional use if any — covers the ghaf","description":"One desert plant's description, habitat, adaptations, and traditional use if any — covers the ghaf\n    tree, date palm, desert truffle, rimth, arfaj, ghada (white broom), samar (umbrella thorn acacia), and\n    desert hyacinth. Use for \"what is the ghaf tree\", \"tell me about rimth\", \"what's arfaj\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"name":{"description":"A desert plant's common or scientific name, or alias.","examples":["ghaf tree","rimth","arfaj","desert truffle","Prosopis cineraria"],"title":"Name","type":"string"}},"required":["name"],"title":"desert_plant_infoArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/desert_animal_info":{"post":{"operationId":"desert_animal_info","summary":"One desert animal's description, habitat, adaptations, and IUCN-verified conservation status — covers","description":"One desert animal's description, habitat, adaptations, and IUCN-verified conservation status — covers\n    the Arabian oryx, fennec fox, desert monitor, sand cat, dorcas gazelle, sand gazelle (reem), Rüppell's\n    fox, Arabian wolf, dromedary camel, the Egyptian spiny-tailed lizard (dhub), and MacQueen's bustard\n    (houbara). Use for \"tell me about the fennec fox\", \"is the desert monitor endangered\", \"what is a dhub\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"name":{"description":"A desert animal's common or scientific name, or alias.","examples":["Arabian oryx","fennec fox","sand cat","desert monitor","Oryx leucoryx"],"title":"Name","type":"string"}},"required":["name"],"title":"desert_animal_infoArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/species_search":{"post":{"operationId":"species_search","summary":"Search all desert plants and animals in this connector's data by partial name, alias, scientific","description":"Search all desert plants and animals in this connector's data by partial name, alias, scientific\n    name, or description text. Use for \"desert animals with big ears\", \"plants that grow in wadis\", \"which\n    animal has no natural water source\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"query":{"description":"Partial name, alias, scientific name, or a word from a species' description, habitat or adaptations.","minLength":1,"title":"Query","type":"string"}},"required":["query"],"title":"species_searchArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/camping_safety_guide":{"post":{"operationId":"camping_safety_guide","summary":"Practical desert camping and travel safety guidance — heat and hydration safety, sandstorm/dust-storm","description":"Practical desert camping and travel safety guidance — heat and hydration safety, sandstorm/dust-storm\n    safety, navigation basics, and nighttime cold. Non-diagnostic: directs to professional medical help or\n    local emergency services for serious symptoms. Use for \"how much water do I need in the desert\", \"what\n    do I do in a sandstorm\", \"desert camping safety tips\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"topic":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"heat | hydration | sandstorm | navigation | cold_nights. Omit to list all topics.","title":"Topic"}},"title":"camping_safety_guideArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/bedouin_navigation_knowledge_info":{"post":{"operationId":"bedouin_navigation_knowledge_info","summary":"Traditional Bedouin desert navigation knowledge — star navigation (Al-Jady, the pole star) and","description":"Traditional Bedouin desert navigation knowledge — star navigation (Al-Jady, the pole star) and\n    landscape-reading (dune orientation, wadi drainage, tracking) — presented factually and respectfully as\n    real historical wayfinding expertise, not folklore. Use for \"how did Bedouin navigate the desert\", \"what\n    is Al-Jady\", \"how do you read dune shape for direction\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"bedouin_navigation_knowledge_infoArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/desert_geography_glossary":{"post":{"operationId":"desert_geography_glossary","summary":"Definitions of real desert-geography and landform terms — erg (sand sea), hamada (rocky plateau),","description":"Definitions of real desert-geography and landform terms — erg (sand sea), hamada (rocky plateau),\n    wadi (dry riverbed), oasis, sabkha (salt flat), reg/serir (gravel plain), barchan and seif dunes, qa'\n    (playa), and yardang. Use for \"what's a wadi\", \"what is an erg\", \"what's the difference between a\n    barchan and a seif dune\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"term":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A specific desert-landform term to look up; omit to list all.","examples":["erg","hamada","wadi","sabkha"],"title":"Term"}},"title":"desert_geography_glossaryArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/conservation_status_info":{"post":{"operationId":"conservation_status_info","summary":"IUCN-verified conservation status for a desert species, or an overview of every species this","description":"IUCN-verified conservation status for a desert species, or an overview of every species this\n    connector tracks — including the Arabian oryx's documented recovery from Extinct in the Wild (1972) to\n    Vulnerable (2011), the first species ever to make that specific IUCN Red List recovery. Use for \"is the\n    Arabian oryx endangered\", \"what's the conservation status of the sand gazelle\", \"which desert animals\n    are endangered\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"species":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A specific plant or animal's name; omit for an overview of every species with a conservation status in this connector's data.","title":"Species"}},"title":"conservation_status_infoArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/water_and_navigation_guide":{"post":{"operationId":"water_and_navigation_guide","summary":"Traditional desert water-source-finding knowledge — wadis, traditional wells, and Oman's falaj/qanat","description":"Traditional desert water-source-finding knowledge — wadis, traditional wells, and Oman's falaj/qanat\n    system — framed historically and practically, alongside a note that this is not a substitute for\n    carrying adequate water on a modern trip. Use for \"how did Bedouin find water in the desert\", \"what is a\n    falaj\", \"traditional desert well knowledge\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"water_and_navigation_guideArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/desert_glossary":{"post":{"operationId":"desert_glossary","summary":"Definitions of general desert-life and travel terms distinct from the geography glossary — badia","description":"Definitions of general desert-life and travel terms distinct from the geography glossary — badia\n    (desert-steppe), Rub' al Khali, sarab (mirage), bedu, qafila (caravan), hima (traditional grazing\n    reserve), simoom, shamal, manzil (waystation), and khaima (tent). Use for \"what does badia mean\", \"what\n    is a qafila\", \"what's hima\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"term":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A specific term to look up; omit to list all.","examples":["badia","rub al khali","shamal","hima"],"title":"Term"}},"title":"desert_glossaryArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}