{"$schema":"https://verifymcp.io/schemas/trust-report.json","schemaVersion":1,"license":{"name":"CC BY-NC 4.0","url":"https://creativecommons.org/licenses/by-nc/4.0/"},"generatedAt":"2026-11-05T16:24:54.604Z","url":"https://verifymcp.io/servers/ai-wondel-olx/olx-mcp","markdownUrl":"https://verifymcp.io/servers/ai-wondel-olx/olx-mcp.md","server":{"slug":"ai-wondel-olx","name":"OLX MCP","registryName":"ai.wondel/olx","description":"OLX.pl classifieds in every category: property, cars, electronics, jobs, free items; offer details.","registryStatus":"active","deletedAt":null,"statusMessage":null,"liveness":"live","publisher":{"class":"unknown","claimed":false}},"component":{"slug":"olx-mcp","type":"remote","identifier":"https://mcp.wondel.ai/olx/mcp","withdrawn":false,"url":"https://verifymcp.io/servers/ai-wondel-olx/olx-mcp","version":"1.0.0","transport":null,"scoredAt":"2026-11-05T03:30:29.036Z"},"score":{"total":57,"tier":"low","status":"scored","weekDelta":null,"history":[{"date":"2026-11-05","total":57},{"date":"2026-11-04","total":56},{"date":"2026-11-03","total":56},{"date":"2026-11-02","total":55}]},"categories":[{"name":"Endpoint Security","score":46,"verdict":"fail","reasons":["The endpoint's TLS certificate is valid, in date, and uses a strong key.","Authorisation not fully verified: no authorisation is required to call this server, and 3 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.","HTTPS enforcement could not be verified: the plaintext port answered with HTTP 405, which proves neither a plaintext path nor enforcement.","HSTS check failed: the Strict-Transport-Security header is absent.","DNSSEC check failed: this domain isn't protected by DNSSEC."],"codes":[{"code":"tls.valid","args":{}},{"code":"auth.none_undeclared","args":{"undeclared_tools":"3"}},{"code":"https.inconclusive","args":{"reason":"plaintext_status","status":"405"}},{"code":"headers.hsts_absent","args":{}},{"code":"dnssec.absent","args":{}}]},{"name":"Transport & Reachability","score":100,"verdict":"pass","reasons":["Verified streamable-http transport via a live MCP handshake."],"codes":[{"code":"transport.verified","args":{"transport":"streamable-http"}}]},{"name":"Schema Quality & AI Usability","score":49,"verdict":"fail","reasons":["AI-judged instruction clarity (good).","Context-footprint check failed: tool/resource definitions use about 2053 tokens (~684/item across 3 items; 3 tools + 0 resources), over budget; trim descriptions and params.","Usage-examples check failed: none of the tools include examples."],"codes":[{"code":"schema.ai_quality","args":{"band":"good"}},{"code":"schema.footprint_heavy","args":{"avg":"684","items":"3","tools":"3","tokens":"2053","resources":"0"}},{"code":"schema.examples_absent","args":{}}]},{"name":"Stability & Change Management","score":10,"verdict":"partial","reasons":["Stability observed for 3 of 30 days with no destabilising changes; credit accrues until the full window elapses."],"codes":[{"code":"stability.building_history","args":{"days":"3"}}]},{"name":"Tool Coverage","score":100,"verdict":"pass","reasons":["100% of tools have a non-trivial description (not blank, and not just the tool's name).","100% of tool parameters carry a description.","Structured output schemas are declared (33% of tools); any adoption earns full credit."],"codes":[{"code":"toolquality.descriptions","args":{"pct":"100"}},{"code":"toolquality.param_docs","args":{"pct":"100"}},{"code":"toolquality.output_present","args":{"pct":"33"}}]},{"name":"Tool Safety","score":100,"verdict":"pass","reasons":["No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.","We read all 3 captured tool definition(s), and no name or description among them implies an irreversible operation.","An AI judge read all 4 captured unit(s) of tool text and found none that tries to manipulate the model reading it."],"codes":[{"code":"toolsafety.injection_clean","args":{}},{"code":"toolsafety.destructive_none","args":{"tools":"3"}},{"code":"toolsafety.manipulation_clean","args":{"units":"4","judged":"4"}}]},{"name":"Capabilities","score":100,"verdict":"pass","reasons":["Implements a current MCP spec version (2026-07-28)."],"codes":[{"code":"protocol.current","args":{"version":"2026-07-28"}}]}],"inconclusive":["Authorisation not fully verified: no authorisation is required to call this server, and 3 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.","HTTPS enforcement could not be verified: the plaintext port answered with HTTP 405, which proves neither a plaintext path nor enforcement."],"malware":[],"components":[{"slug":"olx-mcp","type":"remote","identifier":"https://mcp.wondel.ai/olx/mcp","withdrawn":false,"score":57,"current":true,"url":"https://verifymcp.io/servers/ai-wondel-olx/olx-mcp","markdownUrl":"https://verifymcp.io/servers/ai-wondel-olx/olx-mcp.md"}],"facts":[{"label":"Endpoint","value":"https://mcp.wondel.ai/olx/mcp"},{"label":"Transports","value":"streamable-http"},{"label":"Auth","value":"none"},{"label":"Version","value":"1.0.0"}],"install":{"available":true,"bundleSha256":null},"tools":[{"name":"olx_search","title":"Search OLX.pl classifieds","description":"Search offers on OLX.pl, Poland's largest classifieds site, across every category: flats and houses for rent or sale, cars and parts, phones and electronics, furniture, clothes, jobs, services, free items. Filter by words, category, place (city or district, with a radius) or voivodeship, price range, new/used, private vs business seller, and any category-specific attribute via `filters`. Common category_id values: Nieruchomości 3 (flats for rent 15, flats for sale 14, houses for rent 20, houses for sale 18, rooms 11, plots 709), Motoryzacja 5 (passenger cars 84, motorcycles 81, car parts 82), Elektronika 99 (smartphones 1839, laptops 1199, TVs 1849, game consoles 1604), Dom i Ogród 628 (furniture 565), Moda 87, Dla Dzieci 88, Sport i Hobby 767 (bicycles 461), Zwierzęta 103, Praca 4 (jobs), Usługi 4371, Oddam za darmo 1151 (free items). olx_categories lists the full tree and shows which categories a query's offers fall in. Pass an offer's `id` to olx_offer for the full description, all photos and map location. Fetched live from OLX.pl's public API (typically well under 1 s; a few seconds when it falls back to an unblocker). Result shape: { source, fetchedAt, query, resolved_location, total_count, offset, limit, next_offset, count, offers: [...], note? } — the list key is `offers`; `total_count` counts all matches, but OLX pages through only the first 1000 (pass `next_offset` as `offset` for more). Each offer: { id, url, title, price: { value, currency, negotiable, type, label, per?, previous_value? } | null, salary?, area_m2?, rooms?, params, city, district, region, category_id, category, seller_type, promoted, created_time, refreshed_time, photo, photos_count, description, external_url? }. `price.value` is a number in `currency` (PLN) or null when there is no amount. `price.type`: 'price' = the asking price (`negotiable` when the seller accepts offers; for flat/house rentals the monthly rent), 'arranged' (to be agreed) with value null, 'budget' = the advertiser's b…","inputs":[{"name":"category_id","type":"integer","required":false,"description":"OLX category id (see the list above or olx_categories), e.g. 15 = flats for rent."},{"name":"condition","type":"string","required":false,"description":"Item condition (Stan) — goods categories only (electronics, fashion, home…)."},{"name":"distance_km","type":"integer","required":false,"description":"Also include offers within this radius of location, in km (OLX offers 2, 5, 10, 15, 30, 50, 75, 100)."},{"name":"filters","type":"object","required":false,"description":"Category-specific OLX filters (requires category_id). Keys come from an offer's `params` keys: 'filter_float_<key>:from' / ':to' for numbers, 'filter_enum_<key>' for choices (value or list of option…"},{"name":"include_promoted","type":"boolean","required":false,"description":"Also return OLX's paid top-ad slots (flagged promoted: true). They repeat across pages and ignore sort_by, so they are left out by default."},{"name":"limit","type":"integer","required":false,"description":"Results per call, 1–50. Default 20."},{"name":"location","type":"string","required":false,"description":"Polish name of a city, town or village, optionally followed by a district: 'Kraków', 'Warszawa Mokotów', 'Gdańsk Wrzeszcz'. English names ('Warsaw') are not recognised; a partial name returns suggest…"},{"name":"no_cache","type":"boolean","required":false,"description":"Force a fresh fetch and bypass this server's result cache (5 min). Default false."},{"name":"offset","type":"integer","required":false,"description":"Skip this many results (0–1000; OLX pages through the first 1000 only). Default 0."},{"name":"owner_type","type":"string","required":false,"description":"'private' = private individuals only; 'business' = companies/agencies only."},{"name":"price_from","type":"number","required":false,"description":"Minimum price in PLN (monthly rent for rentals)."},{"name":"price_to","type":"number","required":false,"description":"Maximum price in PLN (monthly rent for rentals)."},{"name":"query","type":"string","required":false,"description":"Search words, matched loosely against titles and descriptions. Polish terms work best ('rower górski', 'kawalerka', 'iphone 13 pro'). Omit to browse a category/place."},{"name":"region","type":"string","required":false,"description":"Voivodeship. Alone: search the whole voivodeship. With location: picks among same-name places."},{"name":"sort_by","type":"string","required":false,"description":"'relevance', 'newest' (most recently posted or refreshed first), 'price_asc' (cheapest first) or 'price_desc'. Default: OLX's own ordering."}],"outputs":[{"name":"count","type":"number","required":true,"description":null},{"name":"fetchedAt","type":"string","required":true,"description":null},{"name":"limit","type":"number","required":true,"description":null},{"name":"next_offset","type":null,"required":false,"description":null},{"name":"note","type":null,"required":false,"description":null},{"name":"offers","type":"array","required":true,"description":null},{"name":"offset","type":"number","required":true,"description":null},{"name":"query","type":"object","required":true,"description":null},{"name":"resolved_location","type":null,"required":false,"description":null},{"name":"source","type":"string","required":true,"description":null},{"name":"total_count","type":null,"required":false,"description":null}],"hasOutputSchema":true,"hasExamples":false,"tokenEstimate":1383},{"name":"olx_offer","title":"Get one OLX.pl offer","description":"Full details of one OLX.pl offer: price (or salary for a job), every attribute with its Polish name and value (area, rooms, rent, condition, model, year, mileage…), the full description, all photo URLs, location (city, district, voivodeship, map coordinates — often approximate), seller type and public name (company, or the first name a private seller shows), posting/refresh/expiry times, OLX delivery availability, and the original otodom.pl link for partner property listings. No contact details. Fetched live from OLX.pl's public API (typically well under 1 s; a few seconds when it falls back to an unblocker). Result: { source, fetchedAt, offer: { id, url, title, status, category_id, category, price, salary?, area_m2?, rooms?, params: [{ key, name, value }], description, location: { city, city_id, district, district_id, region, region_id, lat, lon, approximate }, seller: { type, name, member_since }, created_time, refreshed_time, valid_to_time, promotion, olx_delivery, photos, external_url } }.","inputs":[{"name":"id","type":null,"required":true,"description":"The offer's numeric id (e.g. 1100381308) or its OLX URL (…-CID3-ID1ct5rC.html), as returned by olx_search."},{"name":"no_cache","type":"boolean","required":false,"description":"Force a fresh fetch and bypass this server's result cache (5 min). Default false."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":321},{"name":"olx_categories","title":"Browse OLX.pl categories","description":"Find the category_id for olx_search. Without arguments: OLX's 19 top-level categories. With parent_id: that category's sub-categories (instant, from a snapshot of OLX's category tree). With query: which categories the offers matching those words fall in, with live offer counts, largest first — the quickest way to pick a category for a search term (e.g. 'iphone 13' → Smartfony i telefony komórkowe > iPhone). Result: { source, parent, query?, total_count?, count, categories: [{ id, name, path, has_children, count? }] } — `path` is the full Polish name trail ('Nieruchomości > Mieszkania > Wynajem').","inputs":[{"name":"no_cache","type":"boolean","required":false,"description":"Force a fresh fetch and bypass this server's result cache (5 min). Default false."},{"name":"parent_id","type":"integer","required":false,"description":"List this category's sub-categories (e.g. 3 = Nieruchomości). With query: scope the counts to it."},{"name":"query","type":"string","required":false,"description":"Search words; returns the categories their offers fall in, with counts (one live request)."}],"outputs":[],"hasOutputSchema":false,"hasExamples":false,"tokenEstimate":247}],"toolsTruncatedAtCapture":false,"diagnostics":{"capturedAt":"2026-11-05T03:30:29.000Z","track":"remote","endpoint":"https://mcp.wondel.ai/olx/mcp","declaredUrl":null,"truncated":false,"tls":{"outcome":"valid","label":"Valid","version":"TLS 1.3","cipherSuite":"TLS_AES_128_GCM_SHA256","chainError":null,"certificates":[{"subject":"CN=wondel.ai","issuer":"CN=WE1,O=Google Trust Services,C=US","notBefore":"2026-10-23T11:47:25Z","notAfter":"2027-01-21T12:47:21Z","keyType":"ECDSA","keyBits":256,"isCa":false},{"subject":"CN=WE1,O=Google Trust Services,C=US","issuer":"CN=GTS Root R4,O=Google Trust Services LLC,C=US","notBefore":"2023-12-13T09:00:00Z","notAfter":"2029-02-20T14:00:00Z","keyType":"ECDSA","keyBits":256,"isCa":true},{"subject":"CN=GTS Root R4,O=Google Trust Services LLC,C=US","issuer":"CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE","notBefore":"2023-11-15T03:43:21Z","notAfter":"2028-01-28T00:00:42Z","keyType":"ECDSA","keyBits":384,"isCa":true}]},"dnssec":{"result":"insecure","label":"Not signed","name":"mcp.wondel.ai.","steps":[{"zone":".","outcome":"verified","label":"Verified"},{"zone":"ai.","outcome":"verified","label":"Verified"},{"zone":"wondel.ai.","outcome":"insecure_proven","label":"Unsigned (proven)"}]},"auth":{"outcome":"none","label":"No authorisation required","gate":null,"gateLabel":null,"status":200,"authorizationServers":[]},"httpsRedirect":{"outcome":"inconclusive","label":"Inconclusive","status":405},"transports":[{"transport":"streamable-http","outcome":"verified","label":"Verified","status":200,"followed":false}],"provenance":null,"installScripts":[],"installScriptsTotal":null,"vulnerabilities":[],"vulnerabilitiesTotal":null,"dependencies":null},"mismatches":[],"changelog":{"trackingSince":"2026-11-02","recent":[{"id":"chg_01a1a9c2-0c4f-7466-bc49-70000b5a632e","kind":"score.total_changed","summary":"Trust score (56 → 57)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-05","url":"https://verifymcp.io/servers/ai-wondel-olx/olx-mcp#chg-chg_01a1a9c2-0c4f-7466-bc49-70000b5a632e"},{"id":"chg_01a19f73-e467-73c3-a281-95f167f68899","kind":"check.reverified","summary":"Stability (unverified → 0.03)","materiality":"functional","direction":"improvement","scoreDelta":null,"occurredOn":"2026-11-03","url":"https://verifymcp.io/servers/ai-wondel-olx/olx-mcp#chg-chg_01a19f73-e467-73c3-a281-95f167f68899"},{"id":"chg_01a19f73-e468-720d-bad5-189ab426e007","kind":"score.total_changed","summary":"Trust score (55 → 56)","materiality":"functional","direction":"improvement","scoreDelta":1,"occurredOn":"2026-11-03","url":"https://verifymcp.io/servers/ai-wondel-olx/olx-mcp#chg-chg_01a19f73-e468-720d-bad5-189ab426e007"},{"id":"chg_01a19c8f-bdf3-7591-bd87-a78d21e04b1d","kind":"score.first_scored","summary":"First indexed and scored","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-02","url":"https://verifymcp.io/servers/ai-wondel-olx/olx-mcp#chg-chg_01a19c8f-bdf3-7591-bd87-a78d21e04b1d"}],"truncated":false,"feedUrl":"https://verifymcp.io/servers/ai-wondel-olx/olx-mcp/changelog.json"},"links":{"html":"https://verifymcp.io/servers/ai-wondel-olx/olx-mcp","markdown":"https://verifymcp.io/servers/ai-wondel-olx/olx-mcp.md","changelogJson":"https://verifymcp.io/servers/ai-wondel-olx/olx-mcp/changelog.json","changelogRss":"https://verifymcp.io/servers/ai-wondel-olx/olx-mcp.xml","external":[{"label":"Remote endpoint","href":"https://mcp.wondel.ai/olx/mcp"},{"label":"Website","href":"https://mcps.wondel.ai/servers/olx/"}]}}