关于 Apiverket
Apiverket MCP Server 将 Apiverket API 中的瑞典公共数据提供给 AI 助手,适用于需要查询公共数据的 MCP 客户端。它通过端点发现、结构化查询和错误恢复指引,覆盖公司、统计、天气、交通等数据。
主要功能
- 01搜索并浏览支持的 API 端点
- 02调用发现的端点并返回结构化数据
- 03查看密钥模式、额度和使用情况
- 04提供结构化错误恢复指引
- 05大型响应附带分页提示
适用场景
- 01查询瑞典公司的注册与详情信息
- 02查找天气、交通或地理数据接口
- 03在检索数据前确认 API 额度
- 04遇到请求错误时按指引恢复
MCP 相关
本地通过 stdio 运行 MCP 服务,向客户端提供端点发现、Apiverket 数据查询和账户额度查询工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y apiverket-mcp-serverGOVDATA_API_URLApiverket API base URLGOVDATA_API_KEY密钥Apiverket API key. Use sk_test_demo for sandbox data or create a key at https://apiverket.se/login.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
2收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| query | string | 否 | 用于查找相关端点的搜索关键词(例如“weather”“train”“population”“pension”)。留空可列出所有类别。 |
| category | string | 否 | 按类别名称筛选(例如“Weather & Climate”“Economy & Finance”)。不填写 query 时可用于浏览某个类别。 |
详细介绍
Apiverket MCP 服务
一个 MCP(Model Context Protocol)服务,通过 Apiverket API 为 AI 助手提供瑞典公共数据访问能力。它适用于 Claude Code、Claude Desktop、Cursor、VS Code、Gemini CLI 风格的 MCP 客户端,以及其他兼容 MCP 的工具。
功能
| 工具 | 用途 |
|---|---|
govdata_discover | 在选择路径前搜索和浏览 Apiverket 支持的端点 |
govdata_query | 调用已发现的端点,并返回结构化 JSON 或恢复指导 |
govdata_account | 查看已脱敏的密钥模式、套餐、每日用量、公司搜索/公司查询配额,以及与升级相关的限制 |
Agent 应先调用 govdata_discover,再调用 govdata_query,而不是猜测 /v1 路径。遇到 429 响应或用户询问限额时,Agent 应调用 govdata_account。
Agent 应如何使用 Apiverket
- 发现:使用用户的主题调用
govdata_discover,不要猜测路径。 - 检查上下文:对于配额、套餐和生产就绪情况相关的问题,调用
govdata_account。 - 查询:仅使用发现功能返回的受支持端点调用
govdata_query。 - 恢复:如果请求失败,请先根据结构化恢复指导处理,再重试。
发现功能包含交通、天气、地理、市镇、就业、政府、文化、教育、旅游、环境和公司数据的分类工作流。这些工作流会说明搜索/列表/详情模式、必需代码、坐标、日期格式、分页和常见恢复步骤。
快速开始
Claude Code / Claude Desktop
{
"mcpServers": {
"apiverket": {
"command": "npx",
"args": ["-y", "apiverket-mcp-server"],
"env": {
"GOVDATA_API_URL": "https://apiverket.se",
"GOVDATA_API_KEY": "sk_test_demo"
}
}
}
}
Cursor / VS Code
{
"servers": {
"apiverket": {
"command": "npx",
"args": ["-y", "apiverket-mcp-server"],
"env": {
"GOVDATA_API_URL": "https://apiverket.se",
"GOVDATA_API_KEY": "sk_test_demo"
}
}
}
}
Gemini CLI 风格的 MCP 配置
{
"mcpServers": {
"apiverket": {
"command": "npx",
"args": ["-y", "apiverket-mcp-server"],
"env": {
"GOVDATA_API_URL": "https://apiverket.se",
"GOVDATA_API_KEY": "sk_test_demo"
}
}
}
}
密钥和限额
| 变量 | 默认值 | 说明 |
|---|---|---|
GOVDATA_API_URL | https://apiverket.se | Apiverket API 基础 URL |
GOVDATA_API_KEY | sk_test_demo | 默认使用沙箱密钥。要访问真实生产数据,请使用 Apiverket 提供的 sk_live_* 密钥。 |
sk_test_demo 用于设置和安全的沙箱响应。它适合用于检查 MCP 客户端是否已正确连接,但生产工作流应使用正式密钥。免费正式密钥适合探索;如果每日 API 或公司搜索限额妨碍实际工作流,请升级。
使用 Agent 处理公司数据
公司搜索和公司查询的用途不同:
- 使用
govdata_discover(query: "company")查找受支持的公司端点。 - 如果用户只有公司名称或不确定的组织编号,请使用
/v1/companies/search。 - 缓存返回的
org_number。 - 对于重复的数据补充和自动化,请使用
/v1/companies/{orgNumber}。 - 如果公司搜索返回 429,请停止重试,直到
reset_at指定的时间;如果已知组织编号,则使用查询端点。
公司搜索和实时公司查询按套餐分别计算每日配额。govdata_account 会显示已配置的密钥套餐、剩余公司搜索配额、剩余公司查询配额、重置时间和可选的升级套餐。Apiverket 不会通过公司 API 提供公司董事会成员、高管、所有者或 UBO 子资源路径。
常见主题工作流
| 主题 | 推荐的首个查询 | Agent 工作流 |
|---|---|---|
| 交通 | govdata_discover(query: "train departures") | 对 /v1/transport/trains/{station} 使用车站代码;对 /v1/transit/departures 使用站点 ID;查询交通统计数据前先列出数据集。 |
| 天气 | govdata_discover(query: "weather forecast") | 简单天气查询使用城市端点;国家级警报使用预警接口;空气质量或观测数据查询使用站点/纬度/经度流程。 |
| 地理与市政 | govdata_discover(query: "municipality population") | 先查找官方市镇/县/地点代码;调用市镇 KPI 详情接口前先搜索 KPI;仅在需要时请求几何数据。 |
| 工作 | govdata_discover(query: "jobs taxonomy") | 常规搜索使用 /v1/jobs/search;受控筛选条件使用分类体系类型/概念/自动补全。 |
| 政府与安全 | govdata_discover(query: "parliament documents") | 根据问题选择日历、文档、成员、委员会、SFS、SOU、警务事件或警察局。 |
| 文化、教育与环境 | govdata_discover(query: "school search") | 先搜索,再将返回的 ID/代码用于详情端点;确保提供 q、市镇、类型或坐标。 |
工具示例
# Discover endpoints
govdata_discover(query: "electricity prices")
govdata_discover(category: "Weather & Climate")
govdata_discover(query: "train departures")
govdata_discover(query: "municipality KPI")
govdata_discover(query: "jobs taxonomy")
# Query data after discovery
govdata_query(endpoint: "/v1/weather/{city}", path_params: {city: "stockholm"})
govdata_query(endpoint: "/v1/transport/trains/{station}", path_params: {station: "Cst"})
govdata_query(endpoint: "/v1/jobs/search", query_params: {q: "developer", limit: 5})
govdata_query(endpoint: "/v1/taxonomy/types")
govdata_query(endpoint: "/v1/companies/search", query_params: {q: "volvo", limit: 10})
govdata_query(endpoint: "/v1/companies/{orgNumber}", path_params: {orgNumber: "5560125790"})
# Inspect tier and quota state
govdata_account()
从源代码构建
git clone https://github.com/vinvuk/apiverket-mcp.git
cd apiverket-mcp
npm install
npm run build
工作原理
- MCP 服务通过 stdio 在本地运行。
govdata_discover无需调用 API,即可搜索内置端点目录。govdata_query使用配置的 API 密钥调用 Apiverket。- 结构化 API 错误会转换为提供给 Agent 的恢复指导。
- 大型响应会被截断,并附上分页指导。
要求
- Node.js >= 18
- Apiverket API 密钥,或用于沙盒配置的
sk_test_demo
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。