商业注册查询服务

Brreg MCP Server 是一个用于与挪威商业注册中心(Brreg)API交互的模型上下文协议服务器,提供公司搜索、详细信息查询、角色检索等功能。

  • by daveHylde
  • JavaScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 daveHylde/brreg-mcp-server

使用说明

Brreg MCP服务器

模型上下文协议(MCP)服务器,用于与Brønnøysundregistrene(Brreg)API-挪威商业注册中心交互。

特性

  • 公司搜索:搜索具有各种过滤器的公司
  • 公司详情:获取特定公司的详细信息
  • 公司角色:检索角色和董事会成员
  • 子单元搜索:搜索业务单位/子单位
  • 子单元详细信息:获取特定子单元的详细信息
  • 组织形式:获取组织形式及其描述
  • 市政当局:获取挪威市政当局及其详细信息
  • 角色信息:获取角色类型、角色组类型和代表
  • 更新跟踪:获取公司和子公司的更新
  • NACE规范:使用分层支持按NACE行业代码搜索和筛选
  • 错误处理:全面的错误处理和验证
  • 类型安全:完全支持TypeScript,具有正确的类型定义

安装

选项1:从npm安装(推荐)

# Install globally
npm install -g brreg-mcp-server

# Or install locally in your project
npm install brreg-mcp-server

选项2:从源克隆

# Clone repository
git clone https://github.com/david/brreg-mcp-server.git
cd brreg-mcp-server

# Install dependencies
npm install

# Build project
npm run build

# Start server
npm start

发展

# Run in development mode
npm run dev

MCP工具

1. search_companies

在挪威商业登记处搜索公司。

参数:

  • name (string):公司名称(自由文本,1-180个字符)
  • organizationNumber (数组):组织编号(每个9位数字)
  • parentCompany (string):母公司组织编号
  • fromEmployees (人数):最低员工人数
  • toEmployees (number):最大员工人数
  • bankrupt (boolean):按破产状态筛选
  • registeredInVAT (boolean):按增值税注册过滤
  • registeredInBusinessRegister (boolean):按企业注册状态筛选
  • organizationForm (数组):组织形式(如AS、ENK)
  • municipalityNumber (数组):市政编号(每个4位数字)
  • industryCode (数组):行业代码(例如41.109、01.1)
  • page (number):页码(默认值:1)
  • size (数字):页面大小(默认值:20)
  • sort (string):排序字段和顺序(例如,antallAnsate、ASC)

2. get_company

获取特定公司的详细信息。

参数:

  • organizationNumber (字符串,必填):组织编号(9位数字)

3. get_company_roles

获取特定公司的所有角色。

参数:

  • organizationNumber (字符串,必填):组织编号(9位数字)

4. search_subunits

搜索业务部门/子单位。

参数:

  • name (string):子单元名称
  • organizationNumber (数组):组织编号
  • parentCompany (string):母公司
  • fromEmployees (人数):最低员工人数
  • toEmployees (人数):最大员工人数
  • registeredInVAT (boolean):增值税注册状态
  • page (编号):页码
  • size (数字):页面大小

5. get_subunit

获取特定子单元的详细信息。

参数:

  • organizationNumber (字符串,必填):组织编号(9位数字)

6. get_organization_forms

获取所有组织表格。

参数:

  • page (number):页码(默认值:1)
  • size (数字):页面大小(默认值:20)
  • sort (string):排序字段和顺序(例如kode、ASC)

7. get_organization_forms_for_units

获取主要单位的组织形式。

参数:

  • page (number):页码(默认值:1)
  • size (数字):页面大小(默认值:20)
  • sort (string):排序字段和顺序(例如kode、ASC)

8. get_organization_forms_for_subunits

获取子单位的组织表格。

参数:

  • page (number):页码(默认值:1)
  • size (数字):页面大小(默认值:20)
  • sort (string):排序字段和顺序(例如kode、ASC)

9. get_organization_form

按代码获取特定的组织形式。

参数:

  • organizationCode (字符串,必填):组织形式代码(例如AS、ENK、ASA)

10. get_municipalities

获取挪威所有城市。

参数:

  • page (number):页码(默认值:1)
  • size (数字):页面大小(默认值:20)
  • sort (string):排序字段和顺序(例如,navn、ASC)

11. get_municipality

按市政编号获取特定市政当局。

参数:

  • municipalityNumber (字符串,必填):市政府编号(4位数字)

12. get_role_types

获取所有角色类型。

13. get_role_group_types

获取所有角色组类型。

14. get_role_representatives

召集所有角色代表。

15. get_company_updates

获取具有可选筛选器的公司的更新。

参数:

  • date (string):显示包括此时间戳(ISO-8601)在内的更新
  • updatedBefore (string):显示此时间戳的更新(ISO-8601)
  • updateId (number):仅显示来自并包括更新ID(>=1)的更新
  • organizationNumber (数组):以逗号分隔的组织编号列表
  • includeChanges (boolean):包括导致更新发布的更改
  • page (number):页码(默认值:1)
  • size (数字):页面大小(默认值:20,最大值:10000)
  • sort (string):排序字段和顺序(例如id、ASC)。仅支持id

16. get_subunit_updates

使用可选筛选器获取子单元的更新。

参数:

  • date (string):显示包括此时间戳(ISO-8601)在内的更新
  • updatedBefore (string):显示此时间戳的更新(ISO-8601)
  • updateId (number):仅显示来自并包括更新ID(>=1)的更新
  • organizationNumber (数组):以逗号分隔的组织编号列表
  • includeChanges (boolean):包括导致更新发布的更改
  • page (number):页码(默认值:1)
  • size (数字):页面大小(默认值:20,最大值:10000)
  • sort (string):排序字段和顺序(例如id、ASC)。仅支持id

17. search_nace_codes

使用完整的SN2025分类搜索具有分层过滤支持的NACE行业代码。

参数:

  • searchText (string):在NACE代码名、简称、代码或注释中搜索的文本
  • parentCode (string):获取特定NACE父代码的所有子代码(例如,“01.1”将返回所有子类别)
  • exactCode (string):通过精确代码获取特定的NACE代码
  • level (字符串):按NACE级别(1-5)过滤。1级=部分,2级=部门,3级=团体,4级=类别,5级=国家子类别
  • includeHierarchy (boolean):在结果中包含完整的层次路径(默认值:true)
  • includeNotes (boolean):在结果中包含详细注释(默认值:false)

18. get_services

从Brreg API获取所有可用服务。

使用示例

搜索奥斯陆的软件公司

{
  "name": "search_companies",
  "arguments": {
    "industryCode": ["62"],
    "municipalityNumber": ["0301"],
    "fromEmployees": 10,
    "size": 50
  }
}

获取公司详细信息

{
  "name": "get_company",
  "arguments": {
    "organizationNumber": "123456789"
  }
}

获取子单元详细信息

{
  "name": "get_subunit",
  "arguments": {
    "organizationNumber": "987654321"
  }
}

获取组织表格

{
  "name": "get_organization_forms",
  "arguments": {
    "page": 1,
    "size": 50
  }
}

获取具体组织形式

{
  "name": "get_organization_form",
  "arguments": {
    "organizationCode": "AS"
  }
}

获取市政当局

{
  "name": "get_municipalities",
  "arguments": {
    "page": 1,
    "size": 20,
    "sort": "navn,ASC"
  }
}

获取公司更新

{
  "name": "get_company_updates",
  "arguments": {
    "date": "2024-01-01T00:00:00.000Z",
    "size": 50,
    "includeChanges": true
  }
}

搜索NACE代码

{
  "name": "search_nace_codes",
  "arguments": {
    "searchText": "software",
    "level": "4",
    "includeHierarchy": true
  }
}

按家长获取NACE代码

{
  "name": "search_nace_codes",
  "arguments": {
    "parentCode": "62",
    "includeNotes": true
  }
}

配置

Claude桌面设置

将此添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "brreg": {
      "command": "npx",
      "args": ["brreg-mcp-server"]
    }
  }
}

或者,如果全局安装:

{
  "mcpServers": {
    "brreg": {
      "command": "brreg-mcp-server"
    }
  }
}

错误处理

服务器提供全面的错误处理:

  • 验证错误:输入参数无效
  • 未找到错误:未找到公司或资源
  • 速率限制错误:超过API费率限制
  • 服务器错误:临时服务器问题
  • 网络错误:连接问题

数据类型

服务器为以下对象提供了正确的TypeScript类型:

  • 公司信息
  • 子单元数据
  • 角色信息
  • API响应
  • 错误响应

许可证

MIT许可证

贡献

  1. 复刻仓库
  2. 创建要素分支
  3. 进行更改
  4. 添加测试
  5. 提交拉取请求

支持

有关Brreg API本身的问题,请访问 Brreg文件.

对于此MCP服务器的问题,请在存储库中创建问题。