{"openapi":"3.0.3","info":{"title":"Gnist Context — ILOSTAT (ILO Labour Statistics)","description":"International Labour Organization statistics — employment, unemployment, wages, working conditions, labour force participation, child labour, and migration data for 190+ countries.\n\n- **MCP endpoint:** `https://context.gnist.ai/mcp/ilostat/`\n- **Toolkit page:** `/toolkits/ilostat`\n- **Full API spec:** `/api/openapi.json`\n- **Get an API key:** `/signup`","version":"1.0.0","contact":{"name":"GnistAI","url":"https://gnist.ai"}},"servers":[{"url":"https://context.gnist.ai","description":"Production"}],"paths":{"/rest/ilostat/search_datasets":{"post":{"tags":["Economics"],"summary":"search_datasets","description":"Search the ILOSTAT dataset catalog by keyword.\n\nReturns matching datasets with their dataflow IDs needed for\nget_data, get_dataset_structure, and compare_countries calls.\nILOSTAT covers employment, unemployment, wages, working conditions,\nlabour force participation, child labour, migration, and social\nprotection across 190+ countries.\n\nArgs:\n    query: Search term (e.g. \"unemployment\", \"wages\", \"child labour\").\n    limit: Number of results to return (1-50, default 20).\n\nReturns:\n    List of matching datasets with id, name, agency, and description.\n    Use the 'id' field as the dataflow parameter in other tools.","operationId":"ilostat_search_datasets","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"query":{"description":"Search term for ILOSTAT datasets (e.g. \"unemployment\", \"wages\", \"child labour\", \"migration\", \"working poverty\").","type":"string"},"limit":{"default":20,"description":"Number of results to return (1-50, default 20).","type":"integer"}},"required":["query"],"type":"object"}}}}}},"/rest/ilostat/list_datasets":{"post":{"tags":["Economics"],"summary":"list_datasets","description":"List available ILOSTAT datasets, optionally filtered by topic.\n\nBrowse the full ILOSTAT data catalog. Use this to discover what\ndatasets exist before querying specific data.\n\nArgs:\n    topic: Optional topic filter keyword. Omit to list all datasets.\n    limit: Maximum datasets to return (1-100, default 50).\n\nReturns:\n    List of datasets with id, name, and description.","operationId":"ilostat_list_datasets","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":false,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"topic":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Optional topic filter (e.g. \"employment\", \"wages\", \"labour force\", \"migration\"). Omit to list all."},"limit":{"default":50,"description":"Maximum datasets to return (1-100, default 50).","type":"integer"}},"type":"object"}}}}}},"/rest/ilostat/get_dataset_structure":{"post":{"tags":["Economics"],"summary":"get_dataset_structure","description":"Get the dimension structure of an ILOSTAT dataset.\n\nShows what dimensions (filters) are available for a dataset and their\nvalid values. Use this before get_data to understand what country codes,\nsex breakdowns, age groups, and other parameters are accepted.\n\nArgs:\n    dataflow: ILOSTAT dataflow identifier from search_datasets.\n\nReturns:\n    List of dimensions with their valid codes/values. Each dimension\n    shows its position in the SDMX key and sample values.","operationId":"ilostat_get_dataset_structure","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"dataflow":{"description":"ILOSTAT dataflow identifier from search_datasets (e.g. \"DF_UNE_2EAP_SEX_AGE_RT\", \"DF_EMP_TEMP_SEX_AGE_NB\").","type":"string"}},"required":["dataflow"],"type":"object"}}}}}},"/rest/ilostat/get_data":{"post":{"tags":["Economics"],"summary":"get_data","description":"Fetch data from an ILOSTAT dataset.\n\nQuery any ILOSTAT dataset by country and time period. Covers\nemployment, unemployment, wages, working conditions, labour force\nparticipation, child labour, migration, and social protection\nacross 190+ countries worldwide.\n\nArgs:\n    dataflow: ILOSTAT dataflow identifier. Use search_datasets to find IDs.\n    countries: ISO alpha-2/3 country codes. Omit for all countries.\n    start_period: Start period filter (e.g. \"2015\").\n    end_period: End period filter (e.g. \"2023\").\n    dimension_filter: Advanced SDMX dimension key. Overrides countries.\n    limit: Maximum observations to return (1-1000, default 200).\n\nReturns:\n    Observations with all dimension labels and values.","operationId":"ilostat_get_data","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"dataflow":{"description":"ILOSTAT dataflow identifier (e.g. \"DF_UNE_2EAP_SEX_AGE_RT\"). Use search_datasets to find IDs.","type":"string"},"countries":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"description":"ISO alpha-2/3 country codes (e.g. [\"USA\", \"DEU\", \"NOR\"]). Omit for all countries."},"start_period":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Start period (e.g. \"2015\", \"2020-Q1\", \"2020-01\")."},"end_period":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"End period (e.g. \"2023\", \"2023-Q4\", \"2023-12\")."},"dimension_filter":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Advanced: SDMX dimension key filter (dot-separated, e.g. \"USA.A.UNE_DEAP_RT.SEX_T.YGE15\"). Overrides countries param. Use get_dataset_structure to find valid dimension values."},"limit":{"default":200,"description":"Maximum observations to return (1-1000, default 200).","type":"integer"}},"required":["dataflow"],"type":"object"}}}}}},"/rest/ilostat/compare_countries":{"post":{"tags":["Economics"],"summary":"compare_countries","description":"Compare data across countries for a given ILOSTAT dataset.\n\nFetches the same indicator for multiple countries side by side.\nUseful for cross-country analysis of unemployment rates, wage levels,\nlabour force participation, and other ILO labour statistics.\n\nArgs:\n    dataflow: ILOSTAT dataflow identifier.\n    country_codes: ISO alpha-2/3 country codes to compare. Maximum 20.\n    start_period: Start period. Omit for most recent data.\n    end_period: End period. Omit for most recent data.\n\nReturns:\n    Data grouped by country for easy comparison.","operationId":"ilostat_compare_countries","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"dataflow":{"description":"ILOSTAT dataflow identifier (e.g. \"DF_UNE_2EAP_SEX_AGE_RT\").","type":"string"},"country_codes":{"description":"ISO alpha-2/3 country codes to compare (e.g. [\"USA\", \"DEU\", \"JPN\", \"NOR\"]). Maximum 20.","items":{"type":"string"},"type":"array"},"start_period":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Start period (e.g. \"2020\"). Omit for most recent data."},"end_period":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"End period (e.g. \"2023\"). Omit for most recent data."}},"required":["dataflow","country_codes"],"type":"object"}}}}}},"/rest/ilostat/report_feedback":{"post":{"tags":["Economics"],"summary":"report_feedback","description":"Report a bug, feature request, or general feedback for this data source.\n\nUse this when something doesn't work as expected, when you'd like\na new feature, or when you have suggestions for improvement.\n\nArgs:\n    feedback: Describe the issue or suggestion.\n    feedback_type: One of 'bug', 'feature_request', or 'general'.","operationId":"ilostat_report_feedback","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"feedback":{"type":"string"},"feedback_type":{"default":"general","type":"string"}},"required":["feedback"],"type":"object"}}}}}}},"tags":[{"name":"Economics","description":"Data sources: Economics"}],"components":{"securitySchemes":{"ApiKeyHeader":{"type":"apiKey","in":"header","name":"gnist-api-key","description":"API key passed via request header."},"ApiKeyQuery":{"type":"apiKey","in":"query","name":"gnist_api_key","description":"API key passed via query parameter."}}}}