mcpField
K
kartverket-mcp

kartverket-mcp

本地服务
github.com/3121n地图与出行020 周前更新

关于 kartverket-mcp

kartverket-mcp 是用于查询挪威 Kartverket 开放地理数据的 MCP 服务,面向需要地点、地址及地籍信息的用户。它还可按坐标查询海拔、市镇、建筑物和统计街区。

主要功能

  1. 01搜索挪威地名
  2. 02搜索地址和地籍地产
  3. 03查询附近建筑及其属性
  4. 04按坐标获取海拔和市镇
  5. 05查找统计街区

适用场景

  1. 01获取挪威地点或地址的坐标
  2. 02查看坐标附近的地产和建筑
  3. 03查询坐标处的地形海拔或市镇
  4. 04获取用于人口统计分析的街区编号

MCP 相关

它向 MCP 客户端提供 Kartverket 数据查询工具,封装通过 Geonorge 访问的开放 API。无需身份验证。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"3121n-kartverket": {
"command": "npx",
"args": [
"-y",
"@nor-data/kartverket-mcp"
]
}
}
}
启动命令npx -y @nor-data/kartverket-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@nor-data/kartverket-mcp0.4.2

工具

7

收录的工具列表 · 更新于 2 周前

参数类型必填说明
knrstring否Kommunenummer (4 sifre) for å begrense søket til én kommune
sokstring是Søkestreng (f.eks. 'Bjorvika' eller 'Galdhøpiggen')
treffPerSideinteger否Maks antall treff (default 10)

详细介绍

@nor-data/kartverket-mcp

用于包装 Kartverket 开放 API(通过 Geonorge)的 MCP 服务:地名、地址、高程数据、 kommune 信息、不动产、基础统计区和建筑点。无需身份验证。

工具

sok_grunnkrets (v0.3.0)

通过 Kartverket 的开放 WFS,根据点(纬度/经度)查询统计基础统计区。返回基础统计区编号(8 位)、名称和 kommune 编号。该编号可直接用作 SSB 基础统计区级别表格(04362 年龄/性别、04317 人口)中的 Region 筛选器,以获取真实的邻里人口统计数据。若点位于统计区边界,将返回多条结果并附带说明。

sok_bygning (v0.4.0)

从 Matrikkelen-Bygningspunkt 获取某点周围的建筑物(CC BY 4.0):建筑类型(NS-3457,已解码)、建筑状态(RA/IG = 已登记的建筑活动)、SEFRAK 标记(年代信号,主要为 1900 年以前)、文化遗产、距离。参数:lat、lon、radiusMeter(默认值为 50)、maksTreff(默认值为 20)。注意:开放数据集中没有建成年份(需要 Matrikkel 协议)。

sok_stedsnavn

搜索中央地名登记簿。

参数:

  • sok(必需):搜索字符串,例如 "Bjorvika"
  • knr(可选):用于限制搜索范围的 kommune 编号(4 位)
  • treffPerSide(可选,默认值为 10):最大结果数

**返回:**拼写形式、名称对象类型、kommune、郡、坐标(WGS84 纬度/经度)、地名编号。

sok_adresse

搜索 Matrikkelen 地址登记簿。

参数:

  • sok(必需):搜索字符串,例如 "Karl Johans gate 1 Oslo"
  • kommunenummer(可选):限制到指定的 kommune 编号(4 位)
  • treffPerSide(可选,默认值为 10):最大结果数

**返回:**地址文本、街道/门牌号、邮政编码/邮政地点、kommune、坐标(WGS84 纬度/经度)、地籍信息。

hent_hoyde

获取某个坐标的地面海拔(米)。有数据时使用 DTM 1m,否则使用较粗略的数据集。

参数:

  • lat(必需):纬度(WGS84)
  • lon(必需):经度(WGS84)

返回:hoydeMeter、datakilde(例如 dtm1)、terreng。

sok_kommune

查询地理点所在的 kommune 和郡。

参数:

  • lat(必需):纬度(WGS84)
  • lon(必需):经度(WGS84)

返回:kommune、kommunenummer、fylke、fylkesnummer。

sok_eiendom

通过地理点或地籍编号(knr/gnr/bnr)查询地籍不动产。

参数:

点位搜索:

  • lat、lon(点位搜索时均为必需)
  • radius(可选):搜索半径,单位为米(1–1000)
  • treffPerSide(可选,默认值为 10)

地籍查询:

  • knr(kommune 编号,4 位)、gnr(农场编号)、bnr(地块编号)——地籍模式下均为必需
  • fnr(租赁编号)、snr(分区编号)——可选

请提供 lat+lon 或 knr+gnr+bnr。

**返回:**地籍编号、kommune 编号、localid、对象类型、代表点(WGS84)。点位模式下还会为每条结果返回 meterFraPunkt。

安装

通过 npx(推荐)
npx -y @nor-data/kartverket-mcp
全局安装
npm install -g @nor-data/kartverket-mcp
drist-kartverket-mcp

在 Claude Code 中使用

在 ~/.claude.json 的 mcpServers 下添加:

{
  "mcpServers": {
    "kartverket": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@nor-data/kartverket-mcp"]
    }
  }
}

或通过 CLI:

claude mcp add kartverket -s user -- npx -y @nor-data/kartverket-mcp

示例

地名
sok_stedsnavn({ sok: "Galdhøpiggen" })

返回挪威最高的山峰(Lom kommune,坐标 61.6363°N 8.3125°E)。

sok_stedsnavn({ sok: "Bjorvika", knr: "0301" })

查找 Oslo 的 Bjorvika(kommune 编号 0301),而不是全国各地的其他 Bjorvika。

地址
sok_adresse({ sok: "Karl Johans gate 1 Oslo" })

返回宫殿地址,邮政编码为 0154,坐标为 59.9114°N 10.7494°E。

sok_adresse({ sok: "Storgata 1", kommunenummer: "5001" })

指定查询 Trondheim 的 Storgata 1。

高程
hent_hoyde({ lat: 61.6364, lon: 8.3127 })

返回 Galdhøpiggen 的海拔约 2465 米(DTM 1m)。

根据坐标查询 kommune
sok_kommune({ lat: 59.02682, lon: 10.52464 })

Færder 灯塔 → Færder kommune(3911),Vestfold。

不动产
sok_eiendom({ lat: 59.91, lon: 10.75 })

返回该点周围最近的地籍不动产,并按距离排序。

sok_eiendom({ knr: "0301", gnr: 207, bnr: 157 })

查询特定不动产并获取其代表点。

API-referanse

Data er åpne under NLOD 2.0.

Lokal utvikling

git clone <repo>
cd kartverket-mcp
npm install
npm run dev       # kjør direkte via tsx
npm run build     # kompiler til dist/

Lisens

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。