关于 German public procurement data (OCDS) — semantic search, tender matching, company profiles
vergabe-mcp 是用于搜索德国公共采购数据并将招标与公司档案匹配的本地 MCP 服务。查询和档案文本在本地生成嵌入,仅向 Vergabe Dashboard API 发送向量和筛选值。
主要功能
- 01招标语义搜索
- 02筛选和浏览招标
- 03按公司档案匹配招标
- 04管理本地公司档案
- 05在本地计算嵌入
适用场景
- 01按含义或条件查找招标
- 02筛选适合公司档案的招标
- 03查看采购公告及其关联关系
MCP 相关
该 MCP 服务向客户端提供 11 种招标搜索、筛选、公告查询和公司档案管理工具。服务在本地运行并连接 Vergabe Dashboard API;查询和档案文本保留在本地,向量及选定数据会发送至 API。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
vergabe-mcp
用于德国公共采购搜索的本地 MCP 服务。可将 AI 助手(Claude、GPT 等)连接到 Vergabe Dashboard API,以进行语义搜索、招标匹配和公司资料管理。
您的查询和公司资料不会离开您的设备。 系统使用多语言 ONNX 模型在本地生成嵌入;只有生成的嵌入向量、OCID 和筛选值会发送到 API。设计上贯彻数据最小化原则。
托管替代方案: 如果您只想通过 AI 助手进行搜索,可以使用托管 MCP 连接器(OAuth 登录,无需安装)——请参阅设置指南。此本地服务适用于在您自己的环境中运行客户端:查询和资料会在本地生成嵌入,只有向量和筛选值会离开设备,并且可解锁 API 密钥功能。
初次接触德国公共采购?Vergabe Dashboard 知识库介绍了 eForms、欧盟门槛和招标生命周期;KI für Vergabe则介绍了此服务的托管 AI 功能。
快速开始
1. 获取 API 密钥
在 vergabe-dashboard.qune.de 注册并创建 API 密钥。API 密钥需要有效的 Pro 方案(€99/月;本地服务本身免费且开源——API 访问门槛通过密钥签发实现)。
2. 安装
通过 npx(最简单——自动下载正确的二进制文件):
npx @qune-tech/vergabe-mcp --api-key sk_live_YOUR_KEY_HERE
或从 GitHub Releases 下载预构建的二进制文件:
| 平台 | 下载 |
|---|---|
| Linux x86_64 | vergabe-mcp-linux-x86_64.tar.gz |
| macOS Apple Silicon | vergabe-mcp-macos-arm64.tar.gz |
| Windows x86_64 | vergabe-mcp-windows-x86_64.zip |
Linux / macOS:
# Example for Linux x86_64 — adjust the filename for your platform
tar xzf vergabe-mcp-linux-x86_64.tar.gz
sudo mv vergabe-mcp /usr/local/bin/vergabe-mcp
Windows: 解压 zip,并将 vergabe-mcp.exe 移至 PATH 中的某个位置。
或从源代码构建:
git clone https://github.com/qune-tech/vergabe-mcp.git
cd vergabe-mcp
cargo build --release
# Binary at target/release/vergabe-mcp
3. 配置 AI 客户端
Claude Desktop — 编辑 claude_desktop_config.json:
使用 npx:
{
"mcpServers": {
"vergabe": {
"command": "npx",
"args": ["-y", "@qune-tech/vergabe-mcp", "--api-key", "sk_live_YOUR_KEY_HERE"]
}
}
}
直接使用二进制文件:
{
"mcpServers": {
"vergabe": {
"command": "vergabe-mcp",
"args": ["--api-key", "sk_live_YOUR_KEY_HERE"]
}
}
}
Claude Code — 在项目根目录中添加 .mcp.json:
使用 npx:
{
"mcpServers": {
"vergabe": {
"command": "npx",
"args": ["-y", "@qune-tech/vergabe-mcp", "--api-key", "sk_live_YOUR_KEY_HERE"]
}
}
}
直接使用二进制文件:
{
"mcpServers": {
"vergabe": {
"command": "vergabe-mcp",
"args": ["--api-key", "sk_live_YOUR_KEY_HERE"]
}
}
}
Cursor — Settings → MCP Servers → Add:
使用 npx:
- 命令:
npx - 参数:
-y @qune-tech/vergabe-mcp --api-key sk_live_YOUR_KEY_HERE
直接使用二进制文件:
- 命令:
vergabe-mcp - 参数:
--api-key sk_live_YOUR_KEY_HERE
LM Studio — Settings → MCP → Add Server:
- 点击 + Add Server 并选择 STDIO
- 填写:
使用 npx:
- 名称:
vergabe - 命令:
npx - 参数:
-y @qune-tech/vergabe-mcp --api-key sk_live_YOUR_KEY_HERE
直接使用二进制文件:
- 名称:
vergabe - 命令:二进制文件的完整路径,例如
/usr/local/bin/vergabe-mcp - 参数:
--api-key sk_live_YOUR_KEY_HERE
- 点击 Save
- 在聊天中选择支持工具调用的模型,并启用
vergabe服务
LM Studio 需要支持工具调用的模型(例如 Qwen 2.5、Mistral、Llama 3.1+)。 较小的模型可能无法可靠地使用全部 11 个工具——建议使用 7B+ 模型。
将 sk_live_YOUR_KEY_HERE 替换为您的实际 API 密钥。您也可以通过 VERGABE_API_KEY 环境变量传入密钥。
可用工具(11 个)
| 工具 | 描述 |
|---|---|
search_text | 对所有招标进行语义搜索(查询在本地生成嵌入向量) |
list_releases | 按阶段、CPV 前缀、国家、金额范围、截止日期、采购方、采购方式筛选和浏览招标 |
get_release | 获取一个 OCID 对应的原始 eForms XML 封装(可选的 notice_id 用于选择同级公告) |
linked_notices | 获取某项采购的公告沿革(PIN→CN→CAN),返回 {ocid, notice_id} 引用 |
get_index_info | API 健康状态/版本、嵌入器状态和嵌入契约检查 |
create_company_profile | 为你的公司创建匹配档案(保存在本地) |
update_company_profile | 更新现有档案 |
get_company_profile | 查看档案详情 |
list_company_profiles | 列出你的所有档案 |
delete_company_profile | 删除档案 |
match_tenders | 按语义相似度将档案与所有招标进行匹配(向量在本地生成嵌入) |
CLI 选项
Usage: vergabe-mcp [OPTIONS]
Options:
--db <DB> Local profiles database [default: profiles.db]
--data-dir <DIR> Data directory [default: data]
--api-url <URL> Vergabe Dashboard API [default: https://vergabe-dashboard.qune.de]
--api-key <KEY> API key [env: VERGABE_API_KEY]
-h, --help Print help
工作原理
LLM ←stdio→ vergabe-mcp (local)
│ Local: company profiles (SQLite) + sentence embedder (ONNX)
│ HTTPS: vectors, OCIDs, filter values, API key
└──HTTPS──→ Vergabe Dashboard API (/api/v1)
MCP 服务在你的计算机本地运行:
- 公司档案(名称、描述、CPV 兴趣领域、所在地)保存在本地 SQLite 数据库中,不会离开你的网络。
- 文本嵌入向量通过多语言 ONNX 模型(multilingual-e5-small,384 维)在本地计算。搜索查询使用
query:前缀,并发送到POST /api/v1/search/vector;档案描述使用passage:前缀,并发送到POST /api/v1/match/vector。 - 发送到 API 的只有嵌入向量(384 个浮点数)、你获取的 OCID、筛选值和你的 API 密钥。你的查询和档案文本会保留在本地。
隐私与数据流
保留在你的计算机上的内容:档案文本、搜索查询文本、CPV 兴趣领域、所在地。
API 可见的内容:嵌入向量、你读取的 OCID、你使用的筛选值和你的 API 密钥。这些信息会透露商业兴趣(你关注的行业、采购方、金额区间和招标),但不会透露底层文本。嵌入向量是衍生出的假名化表示——这属于数据最小化,而非彻底消除。
**首次运行时下载模型:**首次使用时,服务会从 huggingface.co 下载嵌入模型:
- 内容:
model.onnx+tokenizer.json,总计约 118 MB。 - **时间:**嵌入器首次运行时下载;之后会缓存在
~/.cache/vergabe/models/multilingual-e5-small。 - 来源:
huggingface.co(由美国运营的第三方)。此次下载不会发送任何用户数据,只会下载普通模型文件。
对于气隙环境/企业安装,请将 model.onnx 和 tokenizer.json 放入上述缓存目录,即可跳过运行时下载。
要求
- Pro 套餐的 API 密钥,可从 vergabe-dashboard.qune.de 获取(€99/月)
- ONNX 模型需要约 120 MB 磁盘空间(首次运行时自动下载)
- 连接互联网以访问 API
许可证
MIT — 参见 LICENSE。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。