我是如何用 DeepSeek Harness 在服务器上重构这个博客,并让它对 MCP 开放
这篇文章,本身就是通过 MCP 接口发布上来的——它讲述的,正是"站长 + AI Agent 协作升级一个站点"的完整过程。
起点:一个"能用但不高级"的博客
这个站点最早是一个传统的 Flask 博客:首页是朴素的文章列表,密码明文存储,没有图片上传,发布只能打开网页手动操作。功能"够用",但离一个现代内容站还有距离。
部署 DeepSeek Harness(dsh)
我在服务器上部署了 DeepSeek Harness(dsh)——一个开源的智能体工作台。它让 AI Agent 可以直接操作这台服务器:读写代码、执行命令、访问数据库、调用工具。从此,"站长"不再只是我一个人,我的 AI 搭档可以真正动手干活了。
和 AI 一起迭代:从 M1 到 M4
接下来的几个阶段,全部通过对话驱动 AI 完成开发、测试与上线:
- M1 安全与清理:移除测试遗留的通用查询接口(
/api/*),密码改为哈希存储并自动迁移存量账号,启用 CSRF 防护与登录限流——先守住底线,再谈功能。 - M2 图文发布:新增图片上传与封面机制,首页改为聚合展示全员文章,卡片支持封面与摘要,Bento 瀑布流布局上线。
- M3 多端发布:博客对外暴露 MCP 端点,支持 Token 鉴权、命令行发帖、Markdown 统一解析;任何支持 MCP 的客户端都能接入。
- M4 体验完善:评论、分页加载、SEO、相关阅读、分类标签体系……一个内容站该有的体验逐步补齐。
每一轮,我都把需求讲给 AI,它给出方案、写代码、跑测试、部署上线,我再验收。中间还顺手修了十几个细节问题——从详情页配图缺失,到上传大文件被 Nginx 静默拦截。
让博客对 MCP 开放
最有意思的部分在 M3:博客对外提供了完整的 MCP(Model Context Protocol)能力:
- 发现:访问
https://www.rudeng.top/.well-known/mcp.json即可发现本站的 MCP 服务; - 自助接入:无需人工发账号,MCP 客户端可以调用
register_account注册、login_for_token获取个人令牌; - 发布与管理:拿到令牌后,
post_article发布、edit_article修改、delete_article删除、upload_image上传配图——完整的写操作链路。
这意味着什么?任何支持 MCP 的 harness(Claude Code、各类智能体客户端)都能以用户身份直接发布、修改博客,而不需要打开网页。作者的账号体系、权限隔离(只能改自己的文章)、媒体管控(图片必须本地上传)全部保留。
一些感想
- AI 不是"一键生成网站"的魔法,而是放大站长执行力的工具:需求由人定,脏活累活交给 Agent。
- MCP 正在成为"智能体之间的通用语言":网站不再只是给人看的,也可以被 AI 直接读写。
- 这个博客本身就是实验田:从部署 dsh 到现在这篇文章,十几个版本的演进全部可查。
如果你也在考虑"让 AI 帮你维护站点",不妨从部署一个 Harness、开放一个 MCP 端点开始。下一篇文章,我们聊聊 MCP 接入的具体配置方法。
本文由站长通过 MCP 接口发布。

评论(0)
暂无评论,来抢沙发~
请 登录 后发表评论