{"openapi":"3.0.3","info":{"title":"Gnist Context — ESCO (Skills & Occupations)","description":"European skills, competences, and occupations classification — 13,890 skills and 3,008 occupations linked to ISCO-08 codes in 28 languages.\n\n- **MCP endpoint:** `https://context.gnist.ai/mcp/esco/`\n- **Toolkit page:** `/toolkits/esco`\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/esco/esco_search_skills":{"post":{"tags":["Economics"],"summary":"esco_search_skills","description":"Search the European skills classification (ESCO).\n\nESCO is the EU's multilingual classification of Skills, Competences,\nQualifications and Occupations. It covers 13,890 skills and 3,008\noccupations with labels in 28 languages.\n\nUse this tool to find skills by keyword. Returns skill URIs that can be\npassed to esco_get_skill for full details including related occupations.\n\nArgs:\n    query: Search terms for skills.\n    language: Language code for results (default: en).\n    limit: Maximum results (1-50, default: 10).\n\nReturns:\n    List of matching skills with URI and title, plus total count.","operationId":"esco_esco_search_skills","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 query (e.g. \"python programming\", \"data analysis\", \"project management\").","type":"string"},"language":{"default":"en","description":"Language code for results (en, no, de, fr, etc.).","type":"string"},"limit":{"default":10,"description":"Maximum results to return (1-50).","type":"integer"}},"required":["query"],"type":"object"}}}}}},"/rest/esco/esco_search_occupations":{"post":{"tags":["Economics"],"summary":"esco_search_occupations","description":"Search the European occupation classification (ESCO).\n\nFind occupations by keyword. Each occupation is linked to ISCO-08 codes\nand has associated essential and optional skills. Returns URIs that can\nbe passed to esco_get_occupation or esco_get_occupation_skills.\n\nArgs:\n    query: Search terms for occupations.\n    language: Language code for results (default: en).\n    limit: Maximum results (1-50, default: 10).\n\nReturns:\n    List of matching occupations with URI and title, plus total count.","operationId":"esco_esco_search_occupations","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 query (e.g. \"software developer\", \"nurse\", \"electrician\").","type":"string"},"language":{"default":"en","description":"Language code for results.","type":"string"},"limit":{"default":10,"description":"Maximum results to return (1-50).","type":"integer"}},"required":["query"],"type":"object"}}}}}},"/rest/esco/esco_get_skill":{"post":{"tags":["Economics"],"summary":"esco_get_skill","description":"Get detailed information about an ESCO skill.\n\nReturns the skill description, alternative labels, broader/narrower skills\nin the hierarchy, and which occupations require this skill (essential vs optional).\n\nArgs:\n    uri: ESCO skill URI (e.g. \"http://data.europa.eu/esco/skill/...\").\n    language: Language code (default: en).\n\nReturns:\n    Skill details including description, related skills, and linked occupations.","operationId":"esco_esco_get_skill","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":{"uri":{"description":"ESCO skill URI (from search results).","type":"string"},"language":{"default":"en","description":"Language code.","type":"string"}},"required":["uri"],"type":"object"}}}}}},"/rest/esco/esco_get_occupation":{"post":{"tags":["Economics"],"summary":"esco_get_occupation","description":"Get detailed information about an ESCO occupation.\n\nReturns the occupation description, ISCO-08 code, alternative labels,\nand lists of essential and optional skills required for the role.\n\nArgs:\n    uri: ESCO occupation URI (e.g. \"http://data.europa.eu/esco/occupation/...\").\n    language: Language code (default: en).\n\nReturns:\n    Occupation details including description, ISCO code, and skill requirements.","operationId":"esco_esco_get_occupation","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":{"uri":{"description":"ESCO occupation URI (from search results).","type":"string"},"language":{"default":"en","description":"Language code.","type":"string"}},"required":["uri"],"type":"object"}}}}}},"/rest/esco/esco_get_occupation_skills":{"post":{"tags":["Economics"],"summary":"esco_get_occupation_skills","description":"List all skills required for an ESCO occupation.\n\nReturns the complete skill profile split into essential skills (must-have)\nand optional skills (nice-to-have), with totals. Useful for job matching,\ntraining gap analysis, and curriculum design.\n\nArgs:\n    uri: ESCO occupation URI.\n    language: Language code (default: en).\n\nReturns:\n    Essential and optional skill lists with counts.","operationId":"esco_esco_get_occupation_skills","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":{"uri":{"description":"ESCO occupation URI.","type":"string"},"language":{"default":"en","description":"Language code.","type":"string"}},"required":["uri"],"type":"object"}}}}}},"/rest/esco/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":"esco_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."}}}}