技术文档

博客系统 MCP 服务器使用文档

海云 2026-04-15 30 次阅读
博客系统 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/activate

2. 配置 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.json

Linux

配置文件位置:

~/.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 (可选): 分类ID

  • tags (可选): 标签,逗号分隔

  • 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 服务器具有完全访问您的博客数据库,请仅在您信任的环境中使用

  • 不要在公共或不安全的网络中使用

  • 定期备份您的数据库

技术支持

如有问题,请检查:

  1. Python 版本是否为 3.9+

  2. 虚拟环境是否已激活

  3. 配置文件路径是否正确

  4. 配置中是否使用的是 stdio_server.py

  5. AI 客户端版本是否支持 MCP

分享文章:

评论 (1)

匿名用户 2026-04-16 06:31

测试