<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://frankwinkler.me/</loc>
<lastmod>2026-06-21T15:31:38.011Z</lastmod>
<changefreq>weekly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://frankwinkler.me/blog/</loc>
<lastmod>2026-06-21T15:31:38.011Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://frankwinkler.me/speaking/</loc>
<lastmod>2026-06-21T15:31:38.011Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://frankwinkler.me/projects/</loc>
<lastmod>2026-06-21T15:31:38.011Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://frankwinkler.me/blog/mcp-security-4-operational-checklist/</loc>
<lastmod>2026-06-21T00:00:00.000Z</lastmod>
</url>
<url>
<loc>https://frankwinkler.me/blog/mcp-security-3-short-lived-credentials/</loc>
<lastmod>2026-06-16T00:00:00.000Z</lastmod>
</url>
<url>
<loc>https://frankwinkler.me/blog/sample-post/</loc>
<lastmod>2026-06-12T00:00:00.000Z</lastmod>
</url>
<url>
<loc>https://frankwinkler.me/blog/mcp-security-2-govern-at-the-gateway/</loc>
<lastmod>2026-06-09T00:00:00.000Z</lastmod>
</url>
<url>
<loc>https://frankwinkler.me/blog/mcp-security-1-non-human-identity-crisis/</loc>
<lastmod>2026-06-02T00:00:00.000Z</lastmod>
</url>
<url>
<loc>https://frankwinkler.me/blog/building-production-ml-pipelines-on-aws/</loc>
<lastmod>2026-05-12T00:00:00.000Z</lastmod>
</url>
<url>
<loc>https://frankwinkler.me/blog/why-asean-is-an-ai-inflection-point/</loc>
<lastmod>2026-03-04T00:00:00.000Z</lastmod>
</url>
</urlset>
