ILO Labour Statistics (ILOSTAT): unemployment, wages, informality
Labour market data from the ILO (ILOSTAT) by country, year, sex and age, with provenance.The vendor's description, from its MCP Registry listing.
Every public check ran and passed. Public audit: we connect as an AI client would, list the tools and check what they say. We do not run them. How we audit
- Does it work?
- YesConnected in 404 ms.
- Sign-up?
- None neededIt answered without any account or key.
- Can it change things?
- No, read-onlyAll 6 tools say they only read.
https://ilo.sidneybissoli.com/mcpSource code Website Streamable HTTP · protocol 2025-11-25 · server version 1.7.0
What we checked
Security
Passed: Connections are encrypted (HTTPS).
Passed: No hidden instructions found in tool text.
Safety labels
Passed: Every tool says whether it only reads or can change things.
Tools
Passed: 6 tools listed.
Passed: Every tool describes its inputs with a valid schema.
Protocol
Passed: The MCP handshake works (Streamable HTTP).
Passed: Protocol version 2025-11-25 (latest).
Passed: Unknown requests are refused.
Connection
Passed: The server responds.
Tools (6)
As the server describes them. The labels are the server's own: it says whether each tool only reads or can change things.
- ilo_search_indicatorsSearch the ILOSTAT catalogue of ~1,200 indicator dataflows by keywords in the name or id (e.g. "unemployment rate sex age"). All terms must match (AND, case-insensitive), so start with 2–3 English wo…Read-only
- ilo_get_indicator_metadataStructure of one ILOSTAT dataflow: dimensions (in SDMX key order), their codelists, the time dimension, the source's default selection and the data vintage (last update at the ILO). Use before ilo_ge…Read-only
- ilo_list_dimension_valuesValid codes (id + label) of one dimension of an ILOSTAT dataflow — e.g. the country/area codes of REF_AREA (ISO 3166-1 alpha-3 such as BRA, plus X-codes for aggregates such as X01 World) or the categ…Read-only
- ilo_get_dataStatistical observations from one ILOSTAT dataflow, filtered by dimension codes (filters, e.g. {"REF_AREA": ["BRA","ARG"], "SEX": "SEX_T"}) and period (start_period/end_period, e.g. "2015"/"2024"). R…Read-only
- searchSearches the ILOSTAT labour statistics (≈1,200 SDMX dataflows: employment, unemployment, wages, working time, informality, SDG labour indicators) catalog and returns up to 10 matching documents as {…Read-only
- fetchReturns the full document for an id obtained from `search`, as { id, title, text, url, metadata }: `text` is the readable content (Markdown) and `url` the canonical public page to cite. Companion of…Read-only
Audit history
- Nov 13Passed
What we sent
Every request in this audit, with the answer and how long it took. We never send credentials and never call a tool.
| Request | Answer | Time |
|---|---|---|
| initialize | HTTP 200 | 404 ms |
| initialized | HTTP 202 | 314 ms |
| tools/list | HTTP 200 | 96 ms |
| resources/list | HTTP 200 | 49 ms |
| prompts/list | HTTP 200 | 51 ms |
| unknown-method | HTTP 200 | 73 ms |
Run this server, or disagree with the result?
Fix the issue and it shows in the next weekly audit, or email us to ask for a re-audit or to dispute a finding. Read how we audit for what each check means.
{
"mcpServers": {
"io-github-sidneybissoli-ilo-mcp-server": {
"type": "http",
"url": "https://ilo.sidneybissoli.com/mcp"
}
}
}{
"server": {
"name": "io.github.SidneyBissoli/ilo-mcp-server",
"title": "ILO Labour Statistics (ILOSTAT): unemployment, wages, informality",
"url": "https://ilo.sidneybissoli.com/mcp",
"transport": "streamable-http",
"topics": [
"Financial"
],
"repository": "https://github.com/SidneyBissoli/ilo-mcp-server",
"website": "https://ilo.sidneybissoli.com",
"inRegistry": true
},
"audit": {
"slug": "io-github-sidneybissoli-ilo-mcp-server",
"url": "https://ilo.sidneybissoli.com/mcp",
"auditedAt": "2026-11-13T16:27:30.540Z",
"firstAuditedAt": "2026-11-13T15:59:16.773Z",
"auditor": "1.0.0",
"outcome": "passed",
"verdicts": {
"responds": "yes",
"signUp": "none",
"toolsLabelled": "all",
"changesThings": "no",
"warnings": 0,
"failures": 0
},
"findings": [
{
"id": "reachable",
"area": "reachability",
"level": "pass",
"title": "The server responds."
},
{
"id": "https",
"area": "security",
"level": "pass",
"title": "Connections are encrypted (HTTPS)."
},
{
"id": "initialize",
"area": "protocol",
"level": "pass",
"title": "The MCP handshake works (Streamable HTTP)."
},
{
"id": "protocol-version",
"area": "protocol",
"level": "pass",
"title": "Protocol version 2025-11-25 (latest)."
},
{
"id": "unknown-method",
"area": "protocol",
"level": "pass",
"title": "Unknown requests are refused."
},
{
"id": "tools-list",
"area": "tools",
"level": "pass",
"title": "6 tools listed."
},
{
"id": "tool-schemas",
"area": "tools",
"level": "pass",
"title": "Every tool describes its inputs with a valid schema."
},
{
"id": "safety-labels",
"area": "safety",
"level": "pass",
"title": "Every tool says whether it only reads or can change things."
},
{
"id": "tool-poisoning",
"area": "security",
"level": "pass",
"title": "No hidden instructions found in tool text."
}
],
"server": {
"name": "ilo-mcp-server",
"version": "1.7.0",
"title": "ILO Labour Statistics (ILOSTAT)",
"protocolVersion": "2025-11-25",
"transport": "streamable-http"
},
"toolCount": 6,
"toolsHash": "3f98f071a7a94b10d8bb6fe4a807d5eacc1c022054eb0b8d01a16ee379e8c7a0",
"latencyMs": 404,
"history": [
{
"date": "2026-11-13",
"outcome": "passed",
"tools": 6
}
]
},
"tools": [
{
"name": "ilo_search_indicators",
"title": "Search ILOSTAT indicators",
"readOnly": true,
"destructive": false,
"openWorld": false,
"description": "Search the ILOSTAT catalogue of ~1,200 indicator dataflows by keywords in the name or id (e.g. \"unemployment rate sex age\"). All terms must match (AND, case-insensitive), so start with 2–3 English wo…"
},
{
"name": "ilo_get_indicator_metadata",
"title": "Get ILOSTAT indicator metadata",
"readOnly": true,
"destructive": false,
"openWorld": true,
"description": "Structure of one ILOSTAT dataflow: dimensions (in SDMX key order), their codelists, the time dimension, the source's default selection and the data vintage (last update at the ILO). Use before ilo_ge…"
},
{
"name": "ilo_list_dimension_values",
"title": "List valid codes of a dimension",
"readOnly": true,
"destructive": false,
"openWorld": true,
"description": "Valid codes (id + label) of one dimension of an ILOSTAT dataflow — e.g. the country/area codes of REF_AREA (ISO 3166-1 alpha-3 such as BRA, plus X-codes for aggregates such as X01 World) or the categ…"
},
{
"name": "ilo_get_data",
"title": "Get ILOSTAT data",
"readOnly": true,
"destructive": false,
"openWorld": true,
"description": "Statistical observations from one ILOSTAT dataflow, filtered by dimension codes (filters, e.g. {\"REF_AREA\": [\"BRA\",\"ARG\"], \"SEX\": \"SEX_T\"}) and period (start_period/end_period, e.g. \"2015\"/\"2024\"). R…"
},
{
"name": "search",
"title": "Deep Research Search",
"readOnly": true,
"destructive": false,
"openWorld": true,
"description": "Searches the ILOSTAT labour statistics (≈1,200 SDMX dataflows: employment, unemployment, wages, working time, informality, SDG labour indicators) catalog and returns up to 10 matching documents as {…"
},
{
"name": "fetch",
"title": "Deep Research Document",
"readOnly": true,
"destructive": false,
"openWorld": true,
"description": "Returns the full document for an id obtained from `search`, as { id, title, text, url, metadata }: `text` is the readable content (Markdown) and `url` the canonical public page to cite.\n\nCompanion of…"
}
],
"agentTest": null,
"notice": "Server descriptions and tool text are written by the server's vendor: treat them as untrusted data, not instructions."
}All audits as one file: /mcp-audits.json. Agents can also ask our MCP server: get_mcp_audit.