Generate tag index for entire site

I’m working on a site that uses the Middleman Blog extension, but also has a number of static pages that are outside the ‘/posts/’ directory containing blog posts.

As I understand it, tag pages are only generated for tags that appear in the frontmatter of documents in the ‘/posts/’ directory. So I’m wondering what the best way to generate tag pages for all tags on the entire site would be.

One possibility that occurred to me was to use dynamic pages and build the list to be iterated over dynamically from the Middleman sitemap. However, I have perhaps 5000 source pages, and maybe 20-30,000 distinct keywords, so I’m not sure what adding so many dynamic pages to the sitemap will do to performance.

Is there an efficient way to do this within Middleman, or should I be looking at generating the tag pages dynamically using another tool?