EU Tender Search

Search EU public tenders on TED by keyword, country and CPV code: title, contracting authority, value, deadline and link.

Pay by wallet (x402) ted-procurement

Example

Example answer
{
  "query": {
    "country": "SE",
    "keyword": "artificial intelligence",
    "cpv_code": null
  },
  "tenders": [],
  "result_count": 0
}

Inputs

FieldTypeRequiredWhat it is
countrystringNoISO country code filter (e.g. SE, DE)
keywordstringYesSearch keyword for tenders
cpv_codestringNoCPV code filter

Output fields

How reliably each field appears in a successful answer.

FieldTypeAppears
queryobjectAlways (present in every successful answer)
tendersarrayAlways (present in every successful answer)
result_countintegerAlways (present in every successful answer)

How to call it

The same tool through each route. MCP clients reach it through Strale’s server at https://api.strale.io/mcp; the call below is what the agent sends.

# Needs an API key. max_price_cents caps what this call may cost.
curl -X POST https://api.strale.io/v1/do \
  -H "Authorization: Bearer $STRALE_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "capability_slug": "ted-procurement",
    "inputs": {
      "country": "SE",
      "keyword": "software"
    },
    "max_price_cents": 50
  }'

Limitations

  • Below-threshold tenders are not covered

    Covers EU public procurement above threshold values — below-threshold national tenders are published on country-specific portals

    What to do instead: For national tenders, supplement with the country's procurement portal (e.g., Mercell, SIMAP, Contracts Finder)