博客系统 MCP 服务器使用文档
概述
这是为博客系统的 Model Context Protocol (MCP) 服务器,允许 AI 助手(如 Claude Desktop、小龙虾等)直接管理您的博客系统。
本服务器使用标准 stdio 实现,无需额外依赖,兼容 Python 3.9+,包括 Python 3.15。
功能特性
文章管理
get_posts- 获取文章列表get_post- 获取单篇文章详情create_post- 创建新文章update_post- 更新文章delete_post- 删除文章search_posts- 搜索文章
分类和标签
get_categories- 获取所有分类get_tags- 获取所有标签
媒体管理
get_media_list- 获取媒体文件列表
其他功能
get_series- 获取系列列表get_scheduled_tasks- 获取定时任务get_custom_pages- 获取自定义页面get_comments- 获取评论列表
安装步骤
1. 确认依赖
MCP 服务器无需额外安装依赖,只需要博客系统的原有依赖即可。确保您的虚拟环境已激活:
cd /Users/nizhaohai/blog
source venv/bin/activate2. 配置 AI 客户端
Claude Desktop (macOS)
编辑配置文件:
# 打开配置文件目录
open ~/Library/Application\ Support/Claude/claude_desktop_config.json或者创建配置文件(如果不存在):
mkdir -p ~/Library/Application\ Support/Claude
nano ~/Library/Application\ Support/Claude/claude_desktop_config.json将以下内容添加到配置文件中(请根据您的实际路径修改):
{
"mcpServers": {
"blog-system": {
"command": "python",
"args": [
"/Users/nizhaohai/blog/mcp_server/stdio_server.py"
],
"cwd": "/Users/nizhaohai/blog",
"env": {
"FLASK_APP": "run.py",
"FLASK_ENV": "development"
}
}
}
}Windows
配置文件位置:
%APPDATA%\Claude\claude_desktop_config.jsonLinux
配置文件位置:
~/.config/Claude/claude_desktop_config.json小龙虾 (XiaoLongXia) 等其他工具
请参考对应工具的 MCP 配置文档,使用相同的配置参数。
3. 重启 AI 客户端
配置完成后,完全退出并重新启动 AI 客户端。
使用示例
获取文章列表
告诉 AI:
帮我获取最近发布的 10 篇文章AI 会调用 get_posts 工具获取文章列表。
创建新文章
告诉 AI:
帮我创建一篇新文章,标题是"Python入门教程",内容是关于Python基础语法介绍AI 会调用 create_post 工具创建新文章。
搜索文章
告诉 AI:
搜索包含"Flask"相关的文章AI 会调用 search_posts 工具搜索相关文章。
查看分类和标签
告诉 AI:
列出所有的分类和标签AI 会调用 get_categories 和 get_tags 工具获取信息。
工具说明
get_posts
获取文章列表。
参数:
status(可选): 文章状态,可选值: published, draft, scheduled, all (默认: published)limit(可选): 返回数量限制 (默认: 10)offset(可选): 偏移量 (默认: 0)
get_post
获取单篇文章详情。
参数:
post_id: 文章ID
create_post
创建新文章。
参数:
title: 文章标题content: 文章内容status(可选): 状态 (默认: draft)category_id(可选): 分类IDtags(可选): 标签,逗号分隔summary(可选): 摘要cover_image(可选): 封面图片is_top(可选): 是否置顶 (默认: false)allow_comment(可选): 是否允许评论 (默认: true)
update_post
更新文章。
参数:
post_id: 文章ID其他参数同 create_post(所有参数都是可选的,只提供要更新的字段)
delete_post
删除文章。
参数:
post_id: 文章ID
search_posts
搜索文章。
参数:
keyword: 搜索关键词limit(可选): 返回数量限制 (默认: 10)
get_categories
获取所有分类。
get_tags
获取所有标签。
get_media_list
获取媒体文件列表。
参数:
file_type(可选): 文件类型 (image, video, document, other, 空表示全部)limit(可选): 返回数量限制 (默认: 20)offset(可选): 偏移量 (默认: 0)
get_series
获取所有系列。
get_scheduled_tasks
获取定时任务列表。
get_custom_pages
获取自定义页面列表。
get_comments
获取评论列表。
参数:
post_id(可选): 文章ID(可选,不传则获取所有评论)limit(可选): 返回数量限制 (默认: 20)offset(可选): 偏移量 (默认: 0)
测试服务器
可以使用测试脚本验证 MCP 服务器的基本功能:
cd /Users/nizhaohai/blog
source venv/bin/activate
python test_mcp_server.py故障排查
1. 检查配置文件
确保配置文件路径和命令参数正确,注意使用 stdio_server.py 而不是 server.py。
2. 查看日志
在 AI 客户端中查看是否有错误信息。
3. 手动测试
在终端中直接运行服务器(不会实际启动,但可以检查语法错误):
cd /Users/nizhaohai/blog
source venv/bin/activate
python mcp_server/stdio_server.py按 Ctrl+C 退出。
4. 常见错误
数据库连接错误
确保在正确的目录下运行,并且数据库文件存在。
Python 版本问题
本服务器兼容 Python 3.9+,包括 Python 3.15,无需担心版本兼容性问题。
安全提示
MCP 服务器具有完全访问您的博客数据库,请仅在您信任的环境中使用
不要在公共或不安全的网络中使用
定期备份您的数据库
技术支持
如有问题,请检查:
Python 版本是否为 3.9+
虚拟环境是否已激活
配置文件路径是否正确
配置中是否使用的是
stdio_server.pyAI 客户端版本是否支持 MCP
评论 (1)
测试