Vergabeweiser
German public tenders and contract awards: search, deadlines, winners, market figures. Open data.
사용해야 할까요
품질 및 안전성
발견 사항 (1)
- LOWlist_categories에서
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"tenders": {
"url": "https://vergabeweiser.de/mcp"
}
}
}원격 엔드포인트
https://vergabeweiser.de/mcpstreamable-http할 수 있는 일
도구 목록
도구 (8)
🟢search_tenders(query, place, radius_km, status, gewerk, ...)
Search German public tenders like vergabeweiser.de/suche. Free text in German may contain a trade and a place ("Gebäudereinigung Rosenheim", "Dach 25 km um 90402"). Returns 20 results per page with deadline, buyer, place, estimated value and the page URL. result.framework_max is the ceiling of a framework agreement, never an award sum.
입력 스키마
{
"type": "object",
"properties": {
"query": {
"description": "Free text in German: trade, subject, buyer name, optionally a place, e.g. \"Unterhaltsreinigung Schule München\"",
"type": "string"
},
"place": {
"description": "Place: city, postcode or its first digits, Kreis or Bundesland (name or code), e.g. \"Rosenheim\", \"90402\", \"904\", \"Bayern\", \"BY\". Also as people write it: with a radius (\"München 25 km\", \"50 km um München\"), with words around it (\"Raum Stuttgart\", \"Nürnberg und Umgebung\"), postcode and city (\"80331 München\"), the Stadt or Landkreis of a name (\"Fürth Stadt\", \"München Land\"), part of a city (\"Berlin-Mitte\" = Berlin), a list (\"Köln/Bonn\" = Köln). \"Deutschland\" and \"bundesweit\" mean no place. A name several places share usually means the larger town (\"Halle\" = Halle (Saale)) or the Landkreis of that name (\"Harburg\"); another one with its Kreis, Land or qualifier: \"Halle (Landkreis Holzminden)\", \"Halle (Westf.)\", \"Halle NRW\", \"Auerbach (Oberpfalz)\". understood.place in the result says how it was read, understood.unknown_place that it was not",
"type": "string"
},
"radius_km": {
"description": "Radius around place in km, default 50. Goes before a radius written into place",
"enum": [
10,
25,
50,
100,
200
],
"type": "integer"
},
"status": {
"description": "offen: open (default), bald: deadline within 7 days, ergebnisse: awarded or ended, alle: all",
"enum": [
"offen",
"bald",
"ergebnisse",
"alle"
],
"type": "string"
},
"gewerk": {
"description": "Trade slug from list_categories, e.g. gebaeudereinigung",
"type": "string"
},
"land": {
"description": "Bundesland slug from list_categories, e.g. bayern",
"type": "string"
},
"buyer_group": {
"description": "Only tenders of a buyer group: bund (federal bodies incl. Bundeswehr and Autobahn GmbH), bundeswehr, autobahn-gmbh, deutsche-bahn, fraunhofer, aok, deutsche-rentenversicherung, krankenhaeuser (hospitals), hochschulen (universities), polizei, stadtwerke; by title: schulen (schools), kitas; eu-weit: only tenders with an EU-wide notice",
"enum": [
"bund",
"bundeswehr",
"autobahn-gmbh",
"deutsche-bahn",
"fraunhofer",
"aok",
"deutsche-rentenversicherung",
"krankenhaeuser",
"hochschulen",
"polizei",
"stadtwerke",
"schulen",
"kitas",
"eu-weit"
],
"type": "string"
},
"procedure": {
"description": "tw: with Teilnahmewettbewerb, einladung: by invitation only",
"enum": [
"alle",
"tw",
"einladung"
],
"type": "string"
},
"with_value": {
"description": "Only tenders with an estimated value or award sum",
"type": "boolean"
},
"sort": {
"description": "frist: next deadline first, neu: newest, wert: highest value, treffer: relevance",
"enum": [
"frist",
"neu",
"wert",
"treffer"
],
"type": "string"
},
"page": {
"description": "Result page, 20 per page",
"minimum": 1,
"maximum": 50,
"type": "integer"
}
}
}🟢get_tender(id)
One tender: description, all deadlines (Bieterfragen, Teilnahmeantrag, Angebotsfrist), procedure, lots, result with winners, sums and number of offers, link to the documents on the buyer's platform and to the original notice. result.framework_max is the ceiling of a framework agreement for all call-offs, not an award sum: never report it as the contract value or a firm's share. Do not add up awards[].amount, result.sum is the sum: amount_is_shared_ceiling marks an amount several winners share, never that winner's own sum, amount_covers_several_lots a bid over several lots.
입력 스키마
{
"type": "object",
"properties": {
"id": {
"description": "Tender id (8–12 characters at the end of the URL) or the full vergabeweiser.de URL",
"type": "string"
}
},
"required": [
"id"
]
}🟢find_organisations(name, type)
Find contracting authorities (Vergabestellen) and companies by name or its beginning, e.g. "Stadt Köln", "Fraunhofer", "WISAG". Returns name, city, slug and page URL for get_buyer and get_company_awards, the most active first. Only organisations with a page in the index; sole traders are never listed.
입력 스키마
{
"type": "object",
"properties": {
"name": {
"description": "Name or its beginning, at least three characters",
"type": "string"
},
"type": {
"description": "Only Vergabestellen (buyer) or only companies; both by default",
"enum": [
"buyer",
"company"
],
"type": "string"
}
},
"required": [
"name"
]
}🟢get_buyer(slug)
A contracting authority (Vergabestelle): contact data from one of its notices (no persons; may belong to a law firm or central purchasing body that runs procedures for it, for a procedure use the contact in its notice), platforms, open tenders, recent awards, offers per award, frequent winners, trades and contracts that end soon.
입력 스키마
{
"type": "object",
"properties": {
"slug": {
"description": "Slug from vergabeweiser.de/vergabestelle/{slug} or that URL",
"type": "string"
}
},
"required": [
"slug"
]
}🟢get_company_awards(slug, page)
Contracts won by a company (legal entities with a page on vergabeweiser.de/unternehmen only, never sole traders): totals, buyers, Länder, trades and the awards, 25 per page, with the company's published sum. firm_shared_max: an amount the notice gives alike for several winners of the procedure (usually a shared framework ceiling); not counted as the company's sum or share.
입력 스키마
{
"type": "object",
"properties": {
"slug": {
"description": "Slug from vergabeweiser.de/unternehmen/{slug} or that URL",
"type": "string"
},
"page": {
"description": "Page of awards, 25 per page",
"minimum": 1,
"type": "integer"
}
},
"required": [
"slug"
]
}🟢market_stats(gewerk, land, kreis)
Market of one trade in Germany, a Bundesland or a Kreis: tenders in the last 12 months, open now, median offers per award, share with a single offer, typical award sums (quartiles) and frequent winners.
입력 스키마
{
"type": "object",
"properties": {
"gewerk": {
"description": "Trade slug from list_categories, e.g. gebaeudereinigung",
"type": "string"
},
"land": {
"description": "Bundesland slug, e.g. bayern",
"type": "string"
},
"kreis": {
"description": "Kreis slug inside that Land, as in vergabeweiser.de/ausschreibungen/{gewerk}/{land}/{kreis}",
"type": "string"
}
},
"required": [
"gewerk"
]
}🟢expiring_contracts(gewerk, land, buyer, months)
Awarded service and supply contracts whose term ends within the next months according to the notice (end date or duration, without renewals), with winner, renewals and offers. A new tender is likely but not certain. Needs at least gewerk, land or buyer.
입력 스키마
{
"type": "object",
"properties": {
"gewerk": {
"description": "Trade slug from list_categories",
"type": "string"
},
"land": {
"description": "Bundesland slug",
"type": "string"
},
"buyer": {
"description": "Buyer slug or vergabeweiser.de/vergabestelle URL",
"type": "string"
},
"months": {
"description": "Months from today, default 12",
"minimum": 1,
"maximum": 36,
"type": "integer"
}
}
}🟢list_categories
Slugs of all trades (Gewerke) and Bundesländer for the other tools.
입력 스키마
{
"type": "object",
"properties": {}
}커뮤니티
증거