Norwegian Place-Name Search: Towns, Streets, Mountains, Counties (Kartverket SSR)
geonorgestedsnavn/search-names
Searches the Norwegian Mapping Authority's Central Register of Place Names (SSR) by name: towns, villages, streets, mountains, lakes, farms, counties and more. Each hit carries the permanent place number, the kind of place, its written forms with language and approval status, its point as latitude and longitude, and its county and municipality. Supports a wildcard (*), fuzzy matching for misspellings, a municipality filter and paging. Hits are ordered by kind of place and then by match quality. A name that matches nothing returns an empty list. All place names are obtained from SSR ©Kartverket (www.kartverket.no), CC BY 4.0, passed through unmodified and served by Eden Engine; not an official Kartverket product.
Price
$0.0026 per call
You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $5.
Data source
Place names from the Central Register of Place Names (SSR), ©Kartverket (Norwegian Mapping Authority), licensed CC BY 4.0: https://www.kartverket.no/en/api-and-data/terms-of-use. All place names are obtained from SSR ©Kartverket, www.kartverket.no. Served by Eden Engine; not an official Kartverket product.
Use it
Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.
Connect once and your AI can find and run this tool, and any other it needs.
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "geonorgestedsnavn/search-names" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "geonorgestedsnavn/search-names" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "geonorgestedsnavn/search-names", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "geonorgestedsnavn/search-names", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.0026 |
- Updated
- Oct 21, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"default": 1,
"maximum": 500,
"minimum": 1,
"description": "Page number, 1 to 500. Default 1. `metadata.totaltAntallTreff` gives the total match count."
},
"fuzzy": {
"type": "boolean",
"description": "Set to true to also find names that resemble the query (a misspelling such as Trondhejm). Leave out for exact and wildcard matching. A fuzzy search can match hundreds of places; hits are ordered by similarity."
},
"query": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "The place name to find, 1 to 100 characters, for example Oslo or Trondheim. A * matches any run of characters (Trondheim* or *fjord)."
},
"page_size": {
"type": "integer",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Hits per page, 1 to 100. Default 10."
},
"municipality_number": {
"type": "string",
"pattern": "^[0-9]{4}$",
"description": "Restrict hits to one municipality by its four-digit number with the leading zero, for example 0301 (Oslo) or 4601 (Bergen)."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"required": [
"metadata",
"navn"
],
"properties": {
"navn": {
"type": "array",
"items": {
"type": "object",
"description": "One place in the register. `stedsnummer` is the permanent place number, `navneobjekttype` the kind of place (By, Adressenavn, Fylke, ...), `representasjonspunkt` its point as `nord` (latitude) and `øst` (longitude) in EPSG:4258, `skrivemåte` or `stedsnavn[].skrivemåte` its written form(s), `fylker` and `kommuner` the county and municipality, `stedstatus` its status.",
"additionalProperties": true
}
},
"metadata": {
"type": "object",
"description": "`totaltAntallTreff` is the total match count, `treffPerSide` the page size, `side` the page number, `viserFra` and `viserTil` the first and last hit number on this page.",
"additionalProperties": true
}
},
"description": "The service's response. `metadata` describes the query and the paging; `navn` lists the matching places. An empty `navn` list with `totaltAntallTreff` 0 means nothing matched, which is not an error. ",
"additionalProperties": true
}