Clustering list of list of integers I have ~100 sets of samples with integer IDs. For example, 3 of them could be:

a = [0, 1, 3, 4, 6...]
b = [1, 5, 9, 102...]
c = [1, 7, 10, 42...]


I am looking to cluster/group together these sets such that within each cluster, all the elements have at least X% common IDs with each other, where X is an input parameter. 

I was thinking about using Agglomerative Clustering with 1 - %X as the distance metric, but was unsure how to modify it to account for each clusters 'information' being the common set of IDs between sets within it. 
Any advice would be appreciated (including a different technique/algorithm clustering was just what came to mind)
Welcome to the community!

I would use the Mutual Information between two sets as the criterion of similarity. In your special case, set the mutual information of those sets whose intersection is less than X% to $0$. Run your clustering and see what comes out. With the same similarity matrix, you can also construct a weighted graph and cluster nodes (which is called Community Detection). This link gives you a proper overview starting from slide 37 and in slide 48 you find your own idea! If you have more questions about Community Detection, e.g. implementation, please drop a comment here.