diff --git a/README.md b/README.md
index 0e28bcce709d0f43762f0534e05ec4366556cdb6..1e239949e845e2e2050329b5c209b8eceb4dd9af 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-[PACKAGE]: ../../raw/master/mkp/huawei_bgp_peer-1.0.0-20230613.mkp "huawei_bgp_peer-1.0.0-20230613.mkp"
+[PACKAGE]: ../../raw/master/mkp/huawei_bgp_peer-1.0.1-20250329.mkp "huawei_bgp_peer-1.0.1-20250329.mkp"
 # Huawei BGP Peer
 Monitors status of Huawei BGP peers (HUAWEI-BGP-VPN-MIB)
 
diff --git a/mkp/huawei_bgp_peer-1.0.1-20250329.mkp b/mkp/huawei_bgp_peer-1.0.1-20250329.mkp
new file mode 100644
index 0000000000000000000000000000000000000000..c5763b1b75ee5fdb4ba2b30d6ccc39088210dec8
Binary files /dev/null and b/mkp/huawei_bgp_peer-1.0.1-20250329.mkp differ
diff --git a/source/agent_based/huawei_bgp_peer.py b/source/cmk_addons_plugins/bgp_peer/agent_based/huawei_bgp_peer.py
similarity index 97%
rename from source/agent_based/huawei_bgp_peer.py
rename to source/cmk_addons_plugins/bgp_peer/agent_based/huawei_bgp_peer.py
index fe920c26e7d7742b6585e21fac83e8fa808bd91b..347093fbca435b427aacdcbadd62895723426a73 100644
--- a/source/agent_based/huawei_bgp_peer.py
+++ b/source/cmk_addons_plugins/bgp_peer/agent_based/huawei_bgp_peer.py
@@ -11,13 +11,15 @@
 #
 # Monitor status of Huawei BGP Peers (IPv4 and IPv6)
 #
+
 # 2020-07-20: added BGP prefix counter
 # 2022-04-30: code cleanup/streamlining
 # 2022-05-09: added item to BgpPeer class, this is used in the discovery function
 # 2022-05-11: changed bgp_get_peer_entry to get proper parameters instead of Nontransparent list
 #             added remote_as to BgpPeerItem
 # 2022-05-12: changed IPv6 address format to lower case as required by rfc5952 section-4.3 (this affects IPv6 peers)
-# 2023-06-13: moved metrics definition to to bgp_peer base plugin
+# 2023-06-13: moved metrics definition to bgp_peer base plugin
+# 2025-03-29: moved to check APIv2 to prepare for CMK2.4
 
 # snmpwalk sample
 # .1.3.6.1.4.1.2011.5.25.177.1.1.2.1.1.0.2.1.2.16.32.32.9.200.0.2.0.1.0.0.0.0.31.100.0.7 = Gauge32: 4
@@ -63,19 +65,17 @@
 
 from typing import List, Dict
 
-from cmk.base.plugins.agent_based.agent_based_api.v1 import (
-    register,
+from cmk.agent_based.v2 import (
+    SNMPSection,
     SNMPTree,
+    StringTable,
     OIDEnd,
     startswith,
 )
-from cmk.base.plugins.agent_based.agent_based_api.v1.type_defs import (
-    StringTable,
-)
 
-from cmk.base.plugins.agent_based.utils.bgp_peer import (
-    bgp_get_ip_address_from_oid,
+from cmk_addons.plugins.bgp_peer.lib.bgp_peer import (
     BgpPeer,
+    bgp_get_ip_address_from_oid,
     bgp_get_peer_entry,
 )
 
@@ -181,7 +181,7 @@ def parse_huawei_bgp_peer(string_table: List[StringTable]) -> Dict[str, BgpPeer]
     return peer_table
 
 
-register.snmp_section(
+snmp_section_huawei_bgp_peer = SNMPSection(
     name='huawei_bgp_peer',
     parse_function=parse_huawei_bgp_peer,
     parsed_section_name='bgp_peer',
diff --git a/source/packages/huawei_bgp_peer b/source/packages/huawei_bgp_peer
index 055e66f6b6aa2ace8f092896d2f789b8cdb89898..ac5fdaccb6b9fa781ebb4f4cff672e456620706b 100644
--- a/source/packages/huawei_bgp_peer
+++ b/source/packages/huawei_bgp_peer
@@ -13,10 +13,10 @@
                 '(https://thl-cmk.hopto.org/gitlab/checkmk/vendor-independent/bgp_peer)\n'
                 ' \n',
  'download_url': 'https://thl-cmk.hopto.org/gitlab/checkmk/huawei/huawei_bgp_peer',
- 'files': {'agent_based': ['huawei_bgp_peer.py']},
+ 'files': {'cmk_addons_plugins': ['bgp_peer/agent_based/huawei_bgp_peer.py']},
  'name': 'huawei_bgp_peer',
  'title': 'Huawei BGP Peer',
- 'version': '1.0.0-20230613',
- 'version.min_required': '2.1.0b1',
- 'version.packaged': '2.2.0p24',
- 'version.usable_until': None}
+ 'version': '1.0.1-20250329',
+ 'version.min_required': '2.3.0b1',
+ 'version.packaged': 'cmk-mkp-tool 0.2.0',
+ 'version.usable_until': '2.5.0b1'}