CIP30 getUtxos() method

So I am currently using the Serialization library to generate transactions in the the front end.
Following CIP30 specifications to interact with wallet extensions and everything is working great.

Currently I am using the getUtxos() method to return utxos from the wallet in CBOR hex format as an array, see example below.

However currently I am working on a nodejs project that runs on a server monitors an address and then generates a TX.

The issue I’m running into is, I like to use Kupo or Blockfrost to get address UTXOs to generate my TX and they don’t come back in the same format but just simple JSON return.

I have been trying to construct a function in JS that takes the response from either Kupo or Blockfrost and creates a CBOR hex out of them, however no matter which cbor lib I use to encode the string in, does not work exactly the same as what is returned from a wallet extension.

I was wondering if anyone has attempt anything similar and could help me with creating such function that would take a UTXO info returned in json and convert it into a similar format as the example below.

Thank you.

utxos = [
    "828258204b82398febd68fab512a56fd1786f05cc13ae2af706ebb9dc90502b499dfff010082583901130768a0e391b8c77be560580729ec927393e688991929129e609a4bb093f044b77f2fb13ce1828c954b1858ac9f76935e74e391c4255e72821a004c4b40a2581cb812d5a466604bcc25d2313183c387cebf52302738b5a178daf146f0a6494d616e64616c6123311864494d616e64616c6123321864494d616e64616c6123331864494d616e64616c6123341864494d616e64616c6123351864494d616e64616c6123361864581cb88d9fe270b184cf02c99b19ffa5ab0181daeff00c52811c6511c12aa8494d65726b61626123301864494d65726b61626123311864494d65726b61626123321864494d65726b61626123331864494d65726b616261233418644a4d65726b616261232d3118644a4d65726b616261232d3218644a4d65726b616261232d331864",
    "82825820ad7828a65ced5b48058230c88f1b420973bafa2fd546d5161cf008ab807624760082583901130768a0e391b8c77be560580729ec927393e688991929129e609a4bb093f044b77f2fb13ce1828c954b1858ac9f76935e74e391c4255e721a002dc6c0",
    "82825820ad7828a65ced5b48058230c88f1b420973bafa2fd546d5161cf008ab807624760182583901130768a0e391b8c77be560580729ec927393e688991929129e609a4bb093f044b77f2fb13ce1828c954b1858ac9f76935e74e391c4255e721a000eedc2",
    "828258205d8e75f465e9d7fc413bb03caf7a0b0d280b62d01bb9b853afbef8a25523ae820082583901130768a0e391b8c77be560580729ec927393e688991929129e609a4bb093f044b77f2fb13ce1828c954b1858ac9f76935e74e391c4255e721a002b1d8b"
]