让AI成为您的博客管理助手
通过MCP Halo 将博客系统与AI助手如Claude、cursor、Qoder、Trae等无缝集成
快速开始 • 功能特性 • 使用示例 • 相关文档 • 开发 • 测试 • 变更日志 • 贡献 • 支持项目
</div> <div align="center">如果这个项目对您有帮助,请欢迎赞赏和支持 ☕
</div> <div align="center"> <img src="assets/sponsor.png" alt="赞赏码" width="300"/>感谢您的支持!
</div>Halo MCP Server 是一个基于Python的MCP服务器,提供完整的Halo博客管理能力给AI助手。通过自然语言对话,您可以轻松完成所有博客管理操作,如文章创建、编辑和发布,并利用强大的AI能力进行智能写作、内容优化和SEO改进。
📺 点击观看完整演示视频 -Bilibili
该视频展示了如何通过自然语言和AI对话管理Halo博客
</div>基本操作
高级功能
分类管理 (6)
标签管理 (7)
内容创作
可用性
Python 3.10 或更高版本
python --version # 确认版本 >= 3.10
运行中的Halo博客系统
http://localhost:8091 或 https://yourdomain.com)Claude Desktop或其他MCP兼容客户端
# 1. 克隆或下载项目
git clone https://github.com/Huangwh826/halo-mcp-server.git
cd halo-mcp-server
# 2. 创建虚拟环境(推荐)
python -m venv venv
# 3. 激活虚拟环境
# Windows:
venv\Scripts\activate
# macOS/Linux:
source venv/bin/activate
# 4. 安装项目(可编辑模式)
pip install -e .
pip install halo-mcp-server
找到并编辑Claude Desktop配置文件:
文件位置:
%APPDATA%\Claude\claude_desktop_config.json~/Library/Application Support/Claude/claude_desktop_config.json~/.config/Claude/claude_desktop_config.json配置内容:
{
"mcpServers": {
"halo-mcp-server": {
"command": "python",
"args": [
"-m",
"halo_mcp_server"
],
"env": {
"HALO_BASE_URL": "your_halo_base_url_here",
"HALO_TOKEN": "your_halo_token_here"
}
}
}
}
📝 配置说明:
| 配置项 | 描述 | 示例 |
|---|---|---|
command | Python解释器路径 | python 或 C:\\Python310\\python.exe |
HALO_BASE_URL | Halo服务器地址 | http://localhost:8091 或 https://blog.example.com |
HALO_TOKEN | API访问令牌 | 从Halo后台获取的令牌 |
💡 提示:
当使用虚拟环境时,将 command 更改为虚拟环境中的Python:
"command": "D:\\Project\\halo-mcp\\venv\\Scripts\\python.exe"
查找Python路径:
# Windows
where python
# macOS/Linux
which python
远程Halo服务确保使用完整的URL(包括 http:// 或 https://)
完全关闭并重新启动Claude Desktop以加载新的配置。
在Claude Desktop中输入以下测试命令:
请列出我的所有博客文章
预期结果
成功标志:
📖 完整示例文档:查看 examples/README.md 获取6个详细的示例和完整代码
🚀 快速开始:quick_start_example.md -5分钟了解基本使用方法
Halo MCP Server最大的优势是支持自然语言对话,无需记忆复杂的命令
👤 用户:帮我写一篇关于 Python 异步编程的技术文章并发布
🤖 Claude:
好的!我来帮你创作这篇文章。
[自动触发 halo_blog_writing_assistant Prompt]
→ 生成 2000 字专业文章
→ 推荐标签:Python、异步编程、asyncio
→ 推荐分类:技术教程
→ 调用 create_post 创建文章
→ 调用 publish_post 发布
✓ 文章《Python异步编程完全指南》已成功创建并发布!
# 查看文章
请显示我最近发布的5篇文章
# 搜索文章
搜索标题包含"Python"的文章
# 编辑文章
把"Python教程"这篇文章的标题改为"Python入门指南"
# 删除文章
删除名为"test-post"的文章
# 优化文章
请优化"Python教程"这篇文章,让它更通俗易懂
# 生成标题
为这篇文章生成5个吸引人的标题
# SEO优化
帮这篇文章做SEO优化,关键词是:Python、教程、入门
# 创建分类
创建一个名为"技术教程"的分类,描述是"各类技术教程文章"
# 创建标签
创建标签:Python、JavaScript、TypeScript,颜色设置为蓝色
# 批量操作
为"Python教程"文章添加标签:Python、编程、教程
# 上传图片
上传这张图片作为文章封面:https://example.com/image.jpg
# 查看附件
列出所有图片附件
# 创建分组
创建一个名为"文章配图"的附件分组
👤 用户:我想写一篇关于 Docker 容器化的技术文章
🤖 Claude:
好的!我来帮你完成整个创作和发布流程。
步骤1: 内容创作
[触发 halo_blog_writing_assistant]
→ 生成完整文章(包含简介、核心概念、实践示例、总结)
步骤2: 标题优化
[触发 halo_title_generator]
→ 提供5个标题选项供选择
步骤3: SEO优化
[触发 halo_seo_optimizer]
→ 优化关键词布局
→ 生成Meta描述
步骤4: 分类标签
[触发 halo_tag_suggester]
→ 推荐标签:Docker、容器化、DevOps、云原生
[触发 halo_category_suggester]
→ 推荐分类:云原生技术
步骤5: 创建并发布
[调用 create_post]
→ 创建文章
[调用 publish_post]
→ 发布文章
✓ 完成!文章《Docker容器化实践指南》已成功发布
- 字数:2000字
- 标签:Docker、容器化、DevOps、云原生
- 分类:云原生技术
- 文章链接:https://yourblog.com/posts/docker-guide
Halo MCP Server提供了两种不同的能力:
<table> <tr> <th width="15%">类型</th> <th width="35%">Tools(工具)</th> <th width="35%">Prompts(提示助手)</th> <th width="15%">对比</th> </tr> <tr> <td><strong>数量</strong></td> <td>30 个</td> <td>10 个</td> <td>互补配合</td> </tr> <tr> <td><strong>用途</strong></td> <td>执行具体操作(CRUD)</td> <td>生成内容指导</td> <td>工具执行<br>提示生成</td> </tr> <tr> <td><strong>显示</strong></td> <td>✅ 在工具列表中可见</td> <td>❌ 后台自动触发</td> <td>显式 vs 隐式</td> </tr> <tr> <td><strong>调用</strong></td> <td>Claude主动调用API</td> <td>根据意图自动匹配</td> <td>API vs 智能</td> </tr> <tr> <td><strong>示例</strong></td> <td> • create_post - 创建文章<br> • list_categories - 列出分类<br> • upload_attachment - 上传附件 </td> <td> • 博客写作助手 - 生成文章<br> • SEO优化器 - 优化内容<br> • 标签建议器 - 推荐标签 </td> <td>操作 vs 创作</td> </tr> <tr> <td><strong>触发方式</strong></td> <td> 明确的操作指令:<br> "创建文章"<br> "上传图片" </td> <td> 描述性需求:<br> "写一篇文章"<br> "优化内容" </td> <td>命令 vs 对话</td> </tr> </table>💡 实际工作流:
用户: "帮我写一篇Python教程并发布"
↓
Prompts: halo_blog_writing_assistant → 生成文章内容
↓
Tools: create_post → 创建文章到 Halo
↓
Tools: publish_post → 发布文章
↓
结果: ✓ 文章创建并发布成功
这是MCP的优秀设计:
与传统方法相比:
# ❌ 传统CLI方式
$ halo-cli create-post \
--title "Python教程" \
--content-file article.md \
--tags "Python,教程" \
--category "编程" \
--publish
# ✅ MCP方式(自然语言)
帮我写一篇Python教程并发布
| 文档 | 描述 |
|---|---|
| 快速开始 | 5分钟快速开始指南 |
| 设计文档 | 系统架构和设计理念 |
| MCP Prompts指南 | 10个写作助手的详细解释 |
| Prompts vs Tools | 两者之间的差异和使用方法 |
| 使用示例 | 完整的使用示例集合 |
| 文档 | 描述 |
|---|---|
| API组织 | Halo API整理 |
| 控制台API | Halo控制台API |
| 公共API | Halo公共API |
| [ |