{"openapi":"3.1.0","info":{"title":"Urdu Phrases API","version":"0.1.0","description":"A fully local, hand-curated everyday Urdu phrasebook: 85+ verified phrases across greetings, courtesy, family, food, directions, shopping, time, emergencies and basic numbers, each in real Urdu (Perso-Arabic Nastaliq) script with a romanized transliteration and English meaning.\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://urduphrases.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"hr@unifydynamics.com","url":"https://connectorbay.com/urduphrases/docs"},"termsOfService":"https://connectorbay.com/urduphrases/terms"},"servers":[{"url":"https://urduphrases.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/urduphrases/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/phrase_search":{"post":{"operationId":"phrase_search","summary":"Keyword search across every phrase's Urdu text, transliteration, English meaning and category. Use","description":"Keyword search across every phrase's Urdu text, transliteration, English meaning and category. Use\n    for \"how do you say water in Urdu\", \"Urdu phrases about emergencies\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"query":{"description":"Keyword — English or romanized Urdu.","examples":["thank you","water","help"],"minLength":1,"title":"Query","type":"string"}},"required":["query"],"title":"phrase_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/phrases_by_category":{"post":{"operationId":"phrases_by_category","summary":"Every phrase in one category. Use categories_list for valid names. Use for \"list Urdu shopping","description":"Every phrase in one category. Use categories_list for valid names. Use for \"list Urdu shopping\n    phrases\", \"family terms in Urdu\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"category":{"description":"A category name.","examples":["Greetings","Shopping","Emergencies"],"title":"Category","type":"string"}},"required":["category"],"title":"phrases_by_categoryArguments","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/greeting_for_context":{"post":{"operationId":"greeting_for_context","summary":"Suggests one greeting for a stated time of day and formality level, with a short usage note. Use for","description":"Suggests one greeting for a stated time of day and formality level, with a short usage note. Use for\n    \"what should I say to greet someone in the morning in Urdu\", \"formal Urdu greeting\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"time_of_day":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"morning/afternoon/evening/night; omit for a time-neutral greeting.","examples":["morning","evening"],"title":"Time Of Day"},"formal":{"default":true,"description":"Whether a formal/respectful greeting is wanted.","title":"Formal","type":"boolean"}},"title":"greeting_for_contextArguments","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/phrase_of_the_day":{"post":{"operationId":"phrase_of_the_day","summary":"One phrase, the same for everyone on a given calendar day. Use for \"Urdu phrase of the day\".","description":"One phrase, the same for everyone on a given calendar day. Use for \"Urdu phrase of the day\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"phrase_of_the_dayArguments","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/family_terms":{"post":{"operationId":"family_terms","summary":"Every family-relation term (mother, father, brother, sister, grandparents, in-laws, etc). Use for","description":"Every family-relation term (mother, father, brother, sister, grandparents, in-laws, etc). Use for\n    \"how do you say brother in Urdu\", \"Urdu family vocabulary\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"family_termsArguments","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/pronunciation_guide":{"post":{"operationId":"pronunciation_guide","summary":"Practical notes on Urdu pronunciation and script: right-to-left direction, aspirated consonants,","description":"Practical notes on Urdu pronunciation and script: right-to-left direction, aspirated consonants,\n    retroflex vs dental sounds, nasal vowels, the aap/tum/tu formality levels, and 'kal' meaning both\n    yesterday and tomorrow. Use for \"why does Urdu have three words for you\", \"what does the h in 'kh' mean\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"topic":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A specific topic to look up; omit to list all.","examples":["aap tum tu","aspirated consonants"],"title":"Topic"}},"title":"pronunciation_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/categories_list":{"post":{"operationId":"categories_list","summary":"Every phrase category with how many phrases are in it. Use for \"what categories of Urdu phrases do","description":"Every phrase category with how many phrases are in it. Use for \"what categories of Urdu phrases do\n    you cover\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"categories_listArguments","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}}}}