<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hugo on 随手记</title><link>https://www.bufio.cn/tags/hugo/</link><description>Recent content in Hugo on 随手记</description><generator>Hugo</generator><language>zh-cn</language><copyright>© 2026 &lt;a href="https://beian.miit.gov.cn/" target="_blank" rel="noopener"&gt;苏ICP备2023022553号-1&lt;/a&gt;</copyright><lastBuildDate>Tue, 28 Apr 2026 16:45:00 +0800</lastBuildDate><atom:link href="https://www.bufio.cn/tags/hugo/index.xml" rel="self" type="application/rss+xml"/><item><title>用 MCP 管理 Hugo 博客：这个项目是怎么搭起来的</title><link>https://www.bufio.cn/posts/how-to-create-ai-blog-by-mcp/</link><pubDate>Tue, 28 Apr 2026 16:45:00 +0800</pubDate><guid>https://www.bufio.cn/posts/how-to-create-ai-blog-by-mcp/</guid><description>&lt;p&gt;这个仓库表面上是一个很轻量的 Hugo 博客，实际目标更明确：把博客内容、构建部署、以及 AI 写作入口放在同一个工程里。最终形成的工作流是：文章仍然以 Markdown 存在仓库中，Hugo 负责生成静态站点，仓库流水线负责构建部署，而 &lt;code&gt;mcp/&lt;/code&gt; 目录里的 MCP 服务负责给 AI 提供一组可控的读写工具。&lt;/p&gt;
&lt;h2 id="项目目标"&gt;项目目标&lt;/h2&gt;
&lt;p&gt;这个项目解决的是一个很具体的问题：写博客时不想每次都手动打开仓库、创建 frontmatter、提交文章、再等待部署。更理想的方式是直接和 AI 对话，让 AI 能够读取已有文章、理解站点配置、创建新文章、修改元数据，必要时还能上传图片。&lt;/p&gt;
&lt;p&gt;为了不把 AI 直接暴露给整个文件系统，项目没有设计成“随便执行命令”的形式，而是把能力收敛成 MCP 工具。每个工具只做一件事，例如列文章、读文章、创建文章、更新文章、上传图片。这样既方便使用，也比较容易控制边界。&lt;/p&gt;
&lt;h2 id="顶层结构"&gt;顶层结构&lt;/h2&gt;
&lt;p&gt;当前仓库大致分成几块：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;.
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── hugo.toml # Hugo 站点配置
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── content/ # 博客内容
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;│ ├── about.md
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;│ └── posts/ # Markdown 文章目录
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── layouts/partials/ # 本站覆盖的局部模板
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── themes/terminal/ # Hugo terminal 主题
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── .github/workflows/ # 构建与部署流水线
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;└── mcp/ # 自定义 blog MCP 服务
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;hugo.toml&lt;/code&gt; 定义站点基础信息，例如语言、标题、主题、分页和菜单。文章目录使用 Hugo 默认的 &lt;code&gt;content/posts&lt;/code&gt;。内容层仍然保持 Hugo 最朴素的方式：每篇文章是一个 Markdown 文件，文件头部用 TOML frontmatter 描述标题、日期、标签、摘要等信息。这样即使以后不使用 MCP，也不会被锁死在某个特殊系统里。&lt;/p&gt;</description></item></channel></rss>