Search tenders and grant calls
search_opportunitiesHybrid search. LT OK: viešieji pirkimai, kelio darbai, asfaltavimas. LV OK: ceļu būve, grants ceļu. BE OK: voirie, wegenwerken, chaussée, égouts. NL OK: wegenbouw, riolering, asfalt, groot onderhoud, wegconstructie. FR OK: assainissement, enrobé, chaussée. LUX OK: réfection. MLT/CYP OK: road works, asphalt; CYP αυτοκινητόδρομος, ασφαλτόστρωση. ES OK: carreteras, alcantarillado, asfalto, repavimentación. PT OK: estradas, asfalto, pavimentação. PL OK: remont drogi, kanalizacja. CZ OK: silnice. ET OK: teehitustööd. IT OK: manutenzione stradale, asfaltatura. DK OK: vej, asfalt. DE OK: Straßenbau, Autobahn. IRL OK: bóthar. SWE OK: vägunderhåll, asfalt. GRC OK: οδός, ασφάλτωση. HUN OK: útépítés, aszfalt. SVK OK: cestné stavby, asfalt. FIN OK: tie, asfalt. RO OK: drumuri, asfaltare, canalizare. Use cpv_labels and nuts_names, not codes. Then get_opportunity and read_document. Scope by country — EU-wide ~10x. Filters: countries (ISO3 'LTU', or 'LT'), cpv (any prefix: '45', '452' or a full code), status ('open' default; 'forthcoming' for not-yet-open; 'any' adds expired), deadline_after / deadline_before (ISO dates), min_value / max_value (in EUR, converted from the buyer's currency; notices we cannot price in euros are excluded from a value filter rather than guessed at). Only here: criteria_stated=true returns only notices whose SELECTION CRITERIA the buyer published — about half of TED; and no_guarantee=true returns only notices that state no bid bond is required, which is cash a small company has to find before it can bid at all. NOTE on cpv and contract_nature: sources that publish neither (Lithuanian CVP notices, EU grant calls) are INCLUDED alongside those filters and ranked rather than dropped; pass cpv_strict=true or nature_strict=true to exclude them. Multi-lot procurements collapse to one entry (lots, lot_ids) — report once. Cards compact by default (summary_cut when truncated); fields='full' for raw codes or a longer summary. Filters beyond the obvious: source ('ted', 'cvp', 'ft', 'ee', 'lv', …), type ('tender' or 'grant' — use it when the user asks specifically for grant calls), contract_nature ('works', 'supplies', 'services'), lang, and exclude_results=true to drop award notices for things already decided. nuts narrows BELOW country level to a NUTS2 region ('DE30', 'LT01') — the granularity that decides whether a site is reachable, which country-level filtering cannot express. Not every notice publishes one, so a region filter excludes notices whose location is unstated. RECALL DEPENDS ON THE LANGUAGE YOU ASK IN. Notices carry the buyer's own wording and no English translation of it: 99.6% of foreign-language notices have an English title that is only 'Country - sector - '. Queries in the notice's language find their target 75% of the time against 25% for English ones (36 known-item probes, measured 2026-08-28). So TRANSLATE THE QUERY YOURSELF and pass the translations in queries, one per country in scope: queries=['', '']. Keep query as the user typed it - phrasings are ADDED, not substituted, each fused as its own ranking. Translate the DISTINCTIVE TERMS, not the sentence: a native phrasing of common words measures WORSE than the English one. Send the trade term. This tool aims for RECALL rather than a tidy shortlist: expect candidates worth filtering, and do that filtering yourself. Every response carries a coverage block with matching_your_filters - how many notices the filters admit in total, all of which were ranked rather than sampled. Tell the user that number: ten results mean something different out of twelve than out of four hundred.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cpv | No | ||
| kind | No | ||
| lang | No | ||
| nuts | No | ||
| type | No | ||
| limit | No | ||
| query | No | ||
| fields | No | compact | |
| source | No | ||
| status | No | open | |
| queries | No | ||
| countries | No | ||
| max_value | No | ||
| min_value | No | ||
| cpv_strict | No | ||
| value_band | No | ||
| nuts_strict | No | ||
| no_guarantee | No | ||
| cpv_divisions | No | ||
| nature_strict | No | ||
| deadline_after | No | ||
| contract_nature | No | ||
| criteria_stated | No | ||
| deadline_before | No | ||
| exclude_results | No | ||
| expand_languages | No |