Skip to main content
Glama
reidar80

Norwegian Business Registry MCP Server

by reidar80

search_entities

Find Norwegian business entities using filters like name, organization number, employee count, industry codes, and registration statuses to access detailed corporate information.

Instructions

Search for Norwegian business entities (hovedenheter) with various filters

Input Schema

NameRequiredDescriptionDefault
fraAntallAnsatteNoMinimum number of employees
hjemmesideNoWebsite
kommunenummerNoMunicipality numbers
konkursNoWhether entity is bankrupt
naeringskodeNoIndustry codes
navnNoEntity name (1-180 characters)
navnMetodeForSoekNoSearch method for name parameter
organisasjonsformNoOrganizational forms
organisasjonsnummerNoList of organization numbers (9 digits)
overordnetEnhetNoParent entity organization number
pageNoPage number
registrertIForetaksregisteretNoRegistered in business registry
registrertIFrivillighetsregisteretNoRegistered in voluntary organization registry
registrertIMvaregisteretNoRegistered in VAT registry
registrertIStiftelsesregisteretNoRegistered in foundation registry
sizeNoPage size (default 20)
sortNoSort field and order (e.g., 'navn,ASC')
tilAntallAnsatteNoMaximum number of employees
underAvviklingNoUnder liquidation
underKonkursbehandlingNoUnder bankruptcy proceedings
underTvangsavviklingEllerTvangsopplosningNoUnder forced liquidation

Input Schema (JSON Schema)

{ "properties": { "fraAntallAnsatte": { "description": "Minimum number of employees", "type": "number" }, "hjemmeside": { "description": "Website", "type": "string" }, "kommunenummer": { "description": "Municipality numbers", "items": { "type": "string" }, "type": "array" }, "konkurs": { "description": "Whether entity is bankrupt", "type": "boolean" }, "naeringskode": { "description": "Industry codes", "items": { "type": "string" }, "type": "array" }, "navn": { "description": "Entity name (1-180 characters)", "type": "string" }, "navnMetodeForSoek": { "description": "Search method for name parameter", "enum": [ "FORTLOEPENDE" ], "type": "string" }, "organisasjonsform": { "description": "Organizational forms", "items": { "type": "string" }, "type": "array" }, "organisasjonsnummer": { "description": "List of organization numbers (9 digits)", "items": { "type": "string" }, "type": "array" }, "overordnetEnhet": { "description": "Parent entity organization number", "type": "string" }, "page": { "description": "Page number", "type": "number" }, "registrertIForetaksregisteret": { "description": "Registered in business registry", "type": "boolean" }, "registrertIFrivillighetsregisteret": { "description": "Registered in voluntary organization registry", "type": "boolean" }, "registrertIMvaregisteret": { "description": "Registered in VAT registry", "type": "boolean" }, "registrertIStiftelsesregisteret": { "description": "Registered in foundation registry", "type": "boolean" }, "size": { "description": "Page size (default 20)", "type": "number" }, "sort": { "description": "Sort field and order (e.g., 'navn,ASC')", "type": "string" }, "tilAntallAnsatte": { "description": "Maximum number of employees", "type": "number" }, "underAvvikling": { "description": "Under liquidation", "type": "boolean" }, "underKonkursbehandling": { "description": "Under bankruptcy proceedings", "type": "boolean" }, "underTvangsavviklingEllerTvangsopplosning": { "description": "Under forced liquidation", "type": "boolean" } }, "type": "object" }

Implementation Reference

  • The core handler function in BrregApiClient that executes the search_entities tool logic by constructing and sending an HTTP request to the BRREG API endpoint for entities.
    async searchEntities(params: EntitySearchParams = {}) { return this.makeRequest('/enhetsregisteret/api/enheter', params); }
  • TypeScript interface defining the input parameters (EntitySearchParams) used by the search_entities handler.
    interface EntitySearchParams { navn?: string; navnMetodeForSoek?: string; organisasjonsnummer?: string[]; overordnetEnhet?: string; fraAntallAnsatte?: number; tilAntallAnsatte?: number; konkurs?: boolean; registrertIMvaregisteret?: boolean; registrertIForetaksregisteret?: boolean; registrertIStiftelsesregisteret?: boolean; registrertIFrivillighetsregisteret?: boolean; underTvangsavviklingEllerTvangsopplosning?: boolean; underAvvikling?: boolean; underKonkursbehandling?: boolean; organisasjonsform?: string[]; hjemmeside?: string; kommunenummer?: string[]; naeringskode?: string[]; size?: number; page?: number; sort?: string; }
  • Tool definition registered in the ListToolsRequestSchema handler, including name, description, and detailed inputSchema matching EntitySearchParams.
    { name: "search_entities", description: "Search for Norwegian business entities (hovedenheter) with various filters", inputSchema: { type: "object", properties: { navn: { type: "string", description: "Entity name (1-180 characters)" }, navnMetodeForSoek: { type: "string", enum: ["FORTLOEPENDE"], description: "Search method for name parameter" }, organisasjonsnummer: { type: "array", items: { type: "string" }, description: "List of organization numbers (9 digits)" }, overordnetEnhet: { type: "string", description: "Parent entity organization number" }, fraAntallAnsatte: { type: "number", description: "Minimum number of employees" }, tilAntallAnsatte: { type: "number", description: "Maximum number of employees" }, konkurs: { type: "boolean", description: "Whether entity is bankrupt" }, registrertIMvaregisteret: { type: "boolean", description: "Registered in VAT registry" }, registrertIForetaksregisteret: { type: "boolean", description: "Registered in business registry" }, registrertIStiftelsesregisteret: { type: "boolean", description: "Registered in foundation registry" }, registrertIFrivillighetsregisteret: { type: "boolean", description: "Registered in voluntary organization registry" }, underTvangsavviklingEllerTvangsopplosning: { type: "boolean", description: "Under forced liquidation" }, underAvvikling: { type: "boolean", description: "Under liquidation" }, underKonkursbehandling: { type: "boolean", description: "Under bankruptcy proceedings" }, organisasjonsform: { type: "array", items: { type: "string" }, description: "Organizational forms" }, hjemmeside: { type: "string", description: "Website" }, kommunenummer: { type: "array", items: { type: "string" }, description: "Municipality numbers" }, naeringskode: { type: "array", items: { type: "string" }, description: "Industry codes" }, size: { type: "number", description: "Page size (default 20)" }, page: { type: "number", description: "Page number" }, sort: { type: "string", description: "Sort field and order (e.g., 'navn,ASC')" } } } },
  • Dispatcher case in the CallToolRequestSchema handler that invokes the searchEntities method and formats the response as MCP content.
    case "search_entities": const entityResults = await apiClient.searchEntities(request.params.arguments as EntitySearchParams); return { content: [ { type: "text", text: JSON.stringify(entityResults, null, 2), }, ], };

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/reidar80/BRREG-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server