博客管理协议服务器

一个用于通过编程方式管理Bear Blog的模型上下文协议(MCP)服务器,支持文章和页面管理、博客设置、主题样式定制等功能。

  • by rmunoz33
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 rmunoz33/bearblog-mcp

使用说明

熊博客MCP服务器

一种用于交互的模型上下文协议(MCP)服务器 熊博客 编程。这允许像克劳德这样的人工智能助手直接管理你的熊博客帖子。

特性

岗位管理

  • 列出帖子:使用元数据获取您的所有博客文章
  • 阅读文章:检索完整的帖子内容,包括标题、slug和markdown正文
  • 创建帖子:撰写新的博客文章(草稿或已发布)
  • 更新帖子:编辑现有帖子
  • 删除帖子:永久删除帖子
  • 发布/取消发布:切换发布后状态
  • 帖子属性:完全支持Bear博客帖子属性,包括 alias, canonical_url, meta_description, meta_image, lang, tags, is_page,以及 make_discoverable

页面管理

  • 列表页面:使用元数据获取所有静态页面
  • 阅读页面:检索整页内容
  • 创建页面:创建新页面(关于、联系等)
  • 更新页面:编辑现有页面
  • 删除页面:永久删除页面
  • 发布/取消发布页面:切换页面发布状态
  • 页面属性:与帖子相同的属性支持

博客设置

  • 获取设置:检索所有博客配置
  • 更新设置:修改博客子域、语言、分析和高级选项

主页内容

  • 获取主页:检索博客标题、favicon、元描述、元图像和登录页面内容
  • 更新主页:自定义博客标题、收藏夹图标、元描述、元图像和主页标记

导航管理

  • 获取导航:以markdown格式检索导航菜单链接
  • 更新导航:使用markdown格式的链接自定义导航菜单

主题与风格管理

  • 列出主题:获取所有可用的预构建主题(30+社区主题)
  • 获取样式:检索当前自定义CSS
  • 更新样式:修改自定义CSS以自定义外观
  • 应用主题:应用预构建的主题(警告:覆盖自定义CSS)

安装

快速入门(推荐)

pipx install bearblog-mcp-server

或与 uv:

uv pip install bearblog-mcp-server

为了发展

克隆存储库并以可编辑模式安装:

git clone https://github.com/rmunoz33/bearblog-mcp.git
cd bearblog-mcp
uv pip install -e .

配置

会话Cookie

MCP服务器使用浏览器中的会话Cookie进行身份验证。要获取它们:

  1. 登录 bearblog.dev 在浏览器中
  2. 打开DevTools→ 应用→ Cookie→ bearblog.dev
  3. 复制 sessionid 和 csrftoken 价值观

环境变量

  • BEAR_BLOG_SESSION_ID -你的 sessionid cookie值(必填)
  • BEAR_BLOG_CSRF_TOKEN -你的 csrftoken cookie值(必填)
  • BEAR_BLOG_SUBDOMAIN -您博客的子域(必填,例如myblog.bearblog.dev的“myblog”)
  • BEAR_BLOG_BASE_URL -基本URL(默认值:https://bearblog.dev)

备注:会话Cookie每90天过期一次。当cookie过期时,请在浏览器中再次登录Bear Blog并更新cookie值。

用法

使用克劳德代码

添加到您的Claude Code MCP设置中(.mcp.json 在您的项目或 ~/.claude.json 全球):

{
  "mcpServers": {
    "bearblog": {
      "type": "stdio",
      "command": "uvx",
      "args": ["--from", "bearblog-mcp-server", "bearblog-mcp"],
      "env": {
        "BEAR_BLOG_SESSION_ID": "your_session_id",
        "BEAR_BLOG_CSRF_TOKEN": "your_csrf_token",
        "BEAR_BLOG_SUBDOMAIN": "your_subdomain"
      }
    }
  }
}

编辑配置后,重新启动Claude Code并用 /mcp 命令。

独立

直接运行服务器:

BEAR_BLOG_SESSION_ID=xxx BEAR_BLOG_CSRF_TOKEN=yyy BEAR_BLOG_SUBDOMAIN=blog \
  bearblog-mcp

可用工具

发布工具

  • bear_list_posts -列出所有博客文章
  • bear_get_post -通过ID获取特定帖子
  • bear_create_post -创建新帖子
  • bear_update_post -更新现有帖子
  • bear_delete_post -永久删除帖子
  • bear_publish_post -切换发布状态

页面工具

  • bear_list_pages -列出所有页面
  • bear_get_page -按ID获取特定页面
  • bear_create_page -创建新页面
  • bear_update_page -更新现有页面
  • bear_delete_page -永久删除页面
  • bear_publish_page -切换页面发布状态

设置工具

  • bear_get_blog_settings -获取当前博客配置
  • bear_update_blog_settings -更新博客设置

主页工具

  • bear_get_home_page -获取博客标题、favicon、元描述、元图像和内容
  • bear_update_home_page -更新博客标题、favicon、元描述、元图像和内容

导航工具

  • bear_get_navigation -获取导航菜单链接
  • bear_update_navigation -使用标记链接更新导航菜单

主题和样式工具

  • bear_list_themes -列出所有可用的预构建主题
  • bear_get_styles -获取当前自定义CSS
  • bear_update_styles -更新自定义CSS
  • bear_apply_theme -应用预构建的主题(警告:覆盖自定义CSS)

资源

  • bear://posts -所有帖子的格式化列表
  • bear://post/{id} -个人帖子内容
  • bear://pages -所有页面的格式化列表
  • bear://page/{id} -单个页面内容

高级功能

该MCP服务器是使用 免费Bear博客账号。一些熊博客功能需要 Bear博客专业版订阅 (每月5美元或每年49美元),目前尚未实施:

  • 电子邮件列表管理:订阅者捕获和时事通讯功能
  • 媒体上传:通过MCP工具直接上传文件和图像
  • 自定义域名:域配置工具
  • 高级分析:详细的流量和参与度指标

如果您有Bear Blog Pro帐户并希望添加这些功能,请 在GitHub上打开一个问题 或者联系我们讨论实施情况。

测试

运行测试脚本以验证功能:

# Test post management
uv run python tests/test_tools.py

# Test page management
uv run python tests/test_pages.py

# Test post/page attributes (meta_description, tags, etc.)
uv run python tests/test_attributes.py

发展

看 research/ API探索脚本目录和 API_FINDINGS.md 用于端点文档。

许可证

麻省理工学院

学分

建于 FastMCP -构建MCP服务器的快速Python方法。