Bid/no-bid verdicts for open EU tenders, from 592,000 real TED contract awards.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Rank CPV sector "lanes" by OBSERVED competition density from the full corpus of 530,000 real EU awards: median bidders, single-bidder share, bid-rate, median value, beachhead score. Answers "where is competition thinnest right now". It does NOT estimate the user's probability of winning — thin competition is a selection signal, not a win forecast. Returns the top-ranked lanes only (see "limit"); the total count is in coverage.lanes_ranked. Data/research tool over TED (Tenders Electronic Daily, CC BY 4.0). No guarantee of award.
How many top-ranked lanes to return (sorted by beachhead_score)
Drop lanes thinner than this (honest: small n = noise)
Rank CPV sector "lanes" by OBSERVED competition density from the full corpus of 530,000 real EU awards: median bidders, single-bidder share, bid-rate, median value, beachhead score. Answers "where is competition thinnest right now". It does NOT estimate the user's probability of winning — thin competition is a selection signal, not a win forecast. Returns the top-ranked lanes only (see "limit"); the total count is in coverage.lanes_ranked. Data/research tool over TED (Tenders Electronic Daily, CC BY 4.0). No guarantee of award.
| Argument | Type | Description |
|---|---|---|
| limit | integer | How many top-ranked lanes to return (sorted by beachhead_score) |
| min_n | integer | Drop lanes thinner than this (honest: small n = noise) |
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1,
"description": "How many top-ranked lanes to return (sorted by beachhead_score)"
},
"min_n": {
"type": "integer",
"default": 20,
"maximum": 500,
"minimum": 1,
"description": "Drop lanes thinner than this (honest: small n = noise)"
}
}
}DEPRECATED — use find_low_competition_lanes instead; this alias behaves identically and stays available for existing clients. The old name wrongly implied a win forecast: TendFeed measures observed competition density, not the probability that you win. Data/research tool over TED (Tenders Electronic Daily, CC BY 4.0). No guarantee of award.
| Argument | Type | Description |
|---|---|---|
| limit | integer | How many top-ranked lanes to return (sorted by beachhead_score) |
| min_n | integer | Drop lanes thinner than this (honest: small n = noise) |
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1,
"description": "How many top-ranked lanes to return (sorted by beachhead_score)"
},
"min_n": {
"type": "integer",
"default": 20,
"maximum": 500,
"minimum": 1,
"description": "Drop lanes thinner than this (honest: small n = noise)"
}
}
}Pull one versioned verdict object by tender id (decision, score, per-channel evidence, price status, reason). Requires an API key (Authorization: Bearer cfm_live_…) with an active TendFeed subscription; without one you get a machine-readable key-required or subscription-required answer. Data/research tool over TED (Tenders Electronic Daily, CC BY 4.0). No guarantee of award.
| Argument | Type | Description |
|---|---|---|
| tender_id* | string | Tender publication id |
{
"type": "object",
"required": [
"tender_id"
],
"properties": {
"tender_id": {
"type": "string",
"description": "Tender publication id"
}
}
}Open EU tenders with a bid/no-bid verdict (Worth-It score, reason, competition density, price corridor where robust, deadline, SME-fit). Filter by sector (CPV division), country (NUTS), SME-only, min score. Guests (no key) get the expired-tender board plus a live_matched count; an API key (Authorization: Bearer cfm_live_…) with an active TendFeed subscription unlocks the live, still-biddable board. Data/research tool over TED (Tenders Electronic Daily, CC BY 4.0). No guarantee of award.
| Argument | Type | Description |
|---|---|---|
| cpv | string | CPV division prefix, e.g. 45 (construction), 72 (IT), 33 (medical) |
| nuts | string | Country prefix, e.g. DE, FR, PL |
| limit | integer | |
| sme_only | boolean | |
| min_score | integer |
{
"type": "object",
"properties": {
"cpv": {
"type": "string",
"description": "CPV division prefix, e.g. 45 (construction), 72 (IT), 33 (medical)"
},
"nuts": {
"type": "string",
"description": "Country prefix, e.g. DE, FR, PL"
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1
},
"sme_only": {
"type": "boolean",
"default": false
},
"min_score": {
"type": "integer",
"default": 0,
"maximum": 100,
"minimum": 0
}
}
}