Yes, I agree with all of that, the dictionaries are quite opaque. But I use @DanThomas's Dictionary Editor to look inside them and remove entries etc.
And I have been using the Dictionaries when I need to store multiple bits of information with a key to call them up.
Yes, the KM Dictionaries need a "key" to call the info rather than being able to search by multiple criteria.
So, my approach to the present situation is to grab all the bits of info using some of the methods in your macro (name of macro, web address to download, link to page the macro is on, my own description etc). Then choose which of those bits of information should be the key (I chose the "name of the macro + its author" in a prompt field that I can edit). And save that info as a multi-line dictionary entry.
So, a KM Dictionary entry might look like (each item on new line):
Post Title as text
URL link to the post
The title I have saved this dictionary entry as (and used for Dictionary key) as text
URL link to download the Macro directly
My own description of the Macro as text
Date Added (today's date) as text
Author of the Macro as text
Then, in the Browser Macro I use a Prompt with List just as you have done.
The chosen item in the prompt (the macro name and "key") is used to open that multiline Dictionary entry and save it to a Local Variable, in my case called Local_Data
And now the individual lines of the Variable can easily be accessed using Keyboard Maestro custom delimiter of \n (as each entry is on a different line).
So I get something line this:
Post Title: %Variable%Local_Data[1]\n%
Post Link: %Variable%Local_Data[2]\n%
Save As: %Variable%Local_Data[3]\n%
Macro Link: %Variable%Local_Data[4]\n%
Macro Description: %Variable%Local_Data[5]\n%
Date Added: %Variable%Local_Data[6]\n%
Author: %Variable%Local_Data[7]\n%
I can view all the items and access whichever one I want by its line number. So, if I want the URL to download the Macro it would be %Variable%Local_Data[4]\n%
In order to save the Dictionary to Dropbox I use a write to text Action to write the Dictionary to a text file on Dropbox. This same file gets read at the start of the Macro.
To do that I use @DanThomas's method to read and write Dictionaries to text files
I can put the Macros here (or send to you by a private message). I didn't want to just load it up here as it is as it might muddy-up this thread. And the method of using Dictionaries that are read and written to files is something I have used and am comfortable with, but could be confusing.