关于 Blawgy
Blawgy 是面向团队和 Agent 的托管 MCP 服务,用于管理 SEO 博客。它支持关键词研究、内容规划、文章撰写与更新,并可向已连接的网站发布内容。
主要功能
- 01关键词研究与内容计划
- 02撰写和编辑文章
- 03发布及安排文章
- 04起草线上文章的更新
- 05管理图片、产品和设置
- 06控制网站访问与写入权限
适用场景
- 01查找关键词并添加到内容计划
- 02为已连接的 CMS 起草文章
- 03检查流量下滑文章并准备更新
- 04调整多个网站的发布安排
MCP 相关
Blawgy 提供托管的 Streamable HTTP MCP 端点,包含博客研究、规划、撰写和发布工具。支持带 PKCE 的 OAuth 2.1 或 Bearer API 密钥,网站访问范围和写入权限可配置。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://app.blawgy.com/mcpclaude mcp add --transport http com-blawgy-blawgy https://app.blawgy.com/mcp{"mcpServers":{"com-blawgy-blawgy":{"type":"http","url":"https://app.blawgy.com/mcp"}}}在 Cursor 中打开{"servers":{"com-blawgy-blawgy":{"type":"http","url":"https://app.blawgy.com/mcp"}}}在 VS Code 中打开{"mcpServers":{"com-blawgy-blawgy":{"type":"http","url":"https://app.blawgy.com/mcp"}}}{"mcpServers":{"com-blawgy-blawgy":{"serverUrl":"https://app.blawgy.com/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
https://app.blawgy.com/mcp需要授权工具
详细介绍
Blawgy MCP 服务
通过 Claude、ChatGPT、Cursor 或你自己的 Agent 运营博客。
Blawgy 会研究关键词、撰写 SEO 文章,并按计划将文章发布到你的网站(WordPress、Shopify、Webflow、Wix、Framer、Ghost、Duda 或你自己的 API)。此 MCP 服务为 AI Agent 提供控制面板中的全部功能。查看 Search Console 流量、开展关键词研究、制定并调整内容计划、撰写和编辑文章、起草并批准对已发布文章的更新、更改图片、产品、地点和设置,以及管理护栏、webhook 和团队。
此仓库包含公开目录所需的文件(README、server.json、logo)。服务本身运行在 Blawgy 内,并非开源。
端点 https://app.blawgy.com/mcp(Streamable HTTP)
身份验证 OAuth 2.1(使用 PKCE 和动态客户端注册),或使用 API 密钥作为 bearer token
套餐 所有付费 Blawgy 套餐均可使用,包括白标合作伙伴的客户
文档 blawgy.com/mcp 和帮助文章
连接
Claude(网页版、桌面版、移动版)
依次选择 Customize、Connectors、Add custom connector。将其命名为 Blawgy,粘贴服务 URL,点击 Connect,然后使用 Blawgy 账户登录。选择要连接的网站,以及是否允许连接执行写入操作。Team 和 Enterprise 套餐的用户需由所有者在 Organization settings 中添加。如需改用 API 密钥,请在 Request headers 下粘贴 Authorization 和 Bearer <key>。
Claude Code
claude mcp add --transport http blawgy https://app.blawgy.com/mcp
claude mcp login blawgy # or run /mcp inside a session
使用 API 密钥时无需登录
claude mcp add --transport http blawgy https://app.blawgy.com/mcp \
--header "Authorization: Bearer blk_live_..."
通过 .mcp.json 与仓库共享(--scope project)
{
"mcpServers": {
"blawgy": {
"type": "http",
"url": "https://app.blawgy.com/mcp",
"headers": { "Authorization": "Bearer ${BLAWGY_API_KEY}" }
}
}
}
ChatGPT
依次选择 Settings、Connectors、Advanced settings,开启 Developer mode,然后点击 Create。将其命名为 Blawgy,粘贴服务 URL,选择 OAuth 并登录。ChatGPT 仅支持 OAuth,因此无法使用密钥。Plus 和 Pro 套餐中的 Developer mode 为只读。写入、发布和设置更改需要使用 Business、Enterprise 或 Edu 工作区,并由管理员启用 Developer mode。
Cursor
在项目中使用 .cursor/mcp.json,或使用 ~/.cursor/mcp.json 为所有项目配置。省略 headers,Cursor 会提示你登录。
{
"mcpServers": {
"blawgy": { "url": "https://app.blawgy.com/mcp" }
}
}
使用 API 密钥
{
"mcpServers": {
"blawgy": {
"url": "https://app.blawgy.com/mcp",
"headers": { "Authorization": "Bearer ${env:BLAWGY_API_KEY}" }
}
}
}
VS Code 和 GitHub Copilot
使用 .vscode/mcp.json,或从命令面板运行 MCP: Add Server。
{
"inputs": [
{ "type": "promptString", "id": "blawgy-key", "description": "Blawgy API key", "password": true }
],
"servers": {
"blawgy": {
"type": "http",
"url": "https://app.blawgy.com/mcp",
"headers": { "Authorization": "Bearer ${input:blawgy-key}" }
}
}
}
删除 inputs 和 headers,即可改用 OAuth 登录。
Windsurf(Devin Desktop)
使用 ~/.config/devin/mcp_config.json(Windows 系统为 %APPDATA%\devin\mcp_config.json),或在 Cascade 菜单中选择 Open MCP config file。
{
"mcpServers": {
"blawgy": {
"serverUrl": "https://app.blawgy.com/mcp",
"headers": { "Authorization": "Bearer blk_live_..." }
}
}
}
Gemini CLI
gemini mcp add --transport http blawgy https://app.blawgy.com/mcp
/mcp auth blawgy
或者使用密钥:gemini mcp add --transport http --header "Authorization: Bearer blk_live_..." blawgy https://app.blawgy.com/mcp。
Codex CLI
codex mcp add blawgy --url https://app.blawgy.com/mcp --bearer-token-env-var BLAWGY_API_KEY
或者运行 codex mcp add blawgy --url https://app.blawgy.com/mcp,然后运行 codex mcp login blawgy 以使用 OAuth 登录。
Gemini CLI 扩展
此仓库也是一个 Gemini CLI 扩展(gemini-extension.json),只需运行一条命令即可安装并通过 OAuth 登录。
gemini extensions install https://github.com/adamgusky/blawgy-mcp
Cline
cline mcp install blawgy --transport http https://app.blawgy.com/mcp
仅支持 stdio 的客户端可以使用 npx -y mcp-remote https://app.blawgy.com/mcp 建立桥接。请参阅 llms-install.md。
一键链接
- Cursor
cursor://anysphere.cursor-deeplink/mcp/install?name=blawgy&config=eyJ1cmwiOiAiaHR0cHM6Ly9hcHAuYmxhd2d5LmNvbS9tY3AifQ== - VS Code
vscode:mcp/install?%7B%22name%22%3A%22blawgy%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fapp.blawgy.com%2Fmcp%22%7D
你自己的 Agent
在 Settings、AI agents 中创建密钥。选择密钥的访问范围(一个网站、你的所有网站,或作为合作伙伴时所有客户网站),以及是否允许密钥执行写入操作。密钥仅显示一次。
TypeScript SDK
import { Client, StreamableHTTPClientTransport } from '@modelcontextprotocol/client';
const client = new Client({ name: 'my-agent', version: '1.0.0' });
const transport = new StreamableHTTPClientTransport(new URL('https://app.blawgy.com/mcp'), {
requestInit: { headers: { Authorization: `Bearer ${process.env.BLAWGY_API_KEY}` } },
});
await client.connect(transport);
const { tools } = await client.listTools();
Claude API(MCP connector,测试版标头 anthropic-beta: mcp-client-2025-11-20)
"mcp_servers": [
{ "type": "url", "url": "https://app.blawgy.com/mcp", "name": "blawgy", "authorization_token": "blk_live_..." }
],
"tools": [{ "type": "mcp_toolset", "mcp_server_name": "blawgy" }]
OpenAI Agents SDK(Python)
MCPServerStreamableHttp(params={
"url": "https://app.blawgy.com/mcp",
"headers": {"Authorization": f"Bearer {os.environ['BLAWGY_API_KEY']}"},
})
你可以询问什么
- 过去 28 天,我的博客有哪些方面增长了,哪些方面下滑了?原因是什么?
- 查找有关大豆蜡烛保养的低难度关键词,并将最好的五个添加到计划中。
- 撰写一篇关于修复蜡烛隧道效应的文章,并将其作为草稿发送到 WordPress。
- 哪些已发布文章的点击量正在下降?为表现最差的一篇起草更新,并向我展示差异。
- 昨天发布的文章已被 Google 和 Bing 收录了吗?重新检查。
- 添加一条保护规则,确保我们绝不报价,并将其应用到我运营的每个网站。
- 将我所有的客户网站都改为每周发布三篇文章,并重新安排所有逾期内容。
工具
每个网站工具都接受一个 site 参数(域名)。服务端的说明会告知 Agent 凭证可访问哪些网站。耗时操作(研究、写作、扫描、同步)会立即返回一个作业 ID,状态工具则会报告进度。
共 123 个工具。“确认”表示 Agent 必须在调用运行前确认。“Pro+”工具在较低套餐中不可见。
内容计划
| 工具 | 功能 | 访问权限 |
|---|---|---|
get_plan | 获取内容计划 | 读取 |
generate_plan | 生成或补充计划 | 写入 |
add_to_plan | 添加到计划 | 写入 |
update_plan_entry | 编辑计划条目 | 写入 |
remove_plan_entry | 移除计划条目 | 确认 |
reschedule_overdue | 重新安排逾期条目 | 写入 |
pause_autopilot | 暂停计划 | 写入 |
resume_autopilot | 恢复计划 | 写入 |
update_plan_config | 更新计划设置 | 写入 |
dismiss_topic | 隐藏研究主题 | 写入 |
exclude_topic | 排除主题或关键词 | 写入 |
accept_plan_suggestion | 接受建议主题 | 写入 |
dismiss_plan_suggestion | 忽略建议主题 | 写入 |
文章
| 工具 | 功能 | 访问权限 |
|---|---|---|
list_articles | 列出文章 | 读取 |
get_article | 获取文章 | 读取 |
write_article_now | 立即撰写文章 | 写入 |
update_article | 编辑文章 | 写入 |
reschedule_article | 更改文章的发布日期 | 写入 |
publish_draft | 发布 CMS 草稿 | 确认 |
republish_article | 重新发布文章 | 确认 |
delete_article | 删除文章 | 确认 |
release_held_article | 发布暂缓的文章 | 确认 |
get_article_preview_url | 获取预览链接 | 读取 |
文章构建器
| 工具 | 功能 | 访问权限 |
|---|---|---|
generate_titles | 构建步骤 1:标题 | 写入 |
generate_outline | 构建步骤 2:大纲 | 写入 |
regenerate_outline | 构建:重新生成大纲 | 写入 |
write_from_outline | 构建步骤 3:撰写文章 | 写入 |
regenerate_section | 构建:重写一个章节 | 写入 |
remix_from_urls | 改编现有文章 | 写入 |
list_builder_drafts | 列出构建器草稿 | 读取 |
get_builder_draft | 获取构建器草稿 | 读取 |
save_builder_draft | 保存构建器草稿 | 写入 |
delete_builder_draft | 删除构建器草稿 | 确认 |
publish_article_from_builder | 保存并发布构建器文章 | 确认 |
智能更新
| 工具 | 功能 | 访问权限 |
|---|---|---|
list_update_opportunities | 列出页面更新机会 | 读取 |
check_for_updates | 查找新的更新机会 | 写入,Pro+ |
draft_update | 撰写更新草稿 | 写入,Pro+ |
edit_update_draft | 编辑更新草稿 | 写入,Pro+ |
approve_update | 批准并发布更新 | 确认,Pro+ |
dismiss_update | 忽略更新 | 写入,Pro+ |
revert_update | 撤销已发布的更新 | 确认,Pro+ |
set_updates_autopilot | 开启或关闭更新自动驾驶 | 写入,Pro+ |
图片和图库
| 工具 | 功能 | 访问权限 |
|---|---|---|
list_image_posts | 列出可更换图片的文章 | 读取 |
get_post_image | 获取文章的图片面板 | 读取 |
generate_post_image | 为文章生成新图片 | 写入,Pro |
upload_post_image | 为文章上传自己的图片 | 写入,Pro |
apply_post_image | 将候选图片设为文章图片 | 写入 |
revert_post_image | 还原文章图片 | 确认 |
get_image_preview_usage | 图片预览额度和示例标题 | 读取 |
preview_image_style | 以指定风格渲染示例图片 | 写入 |
extract_brand_colors | 从网站读取品牌颜色 | 写入 |
list_photos | 列出产品图库 | 读取 |
get_photo_candidates | 列出可添加到图库的产品 | 读取 |
add_photo_from_product | 将目录产品添加到图库 | 写入 |
add_photo | 将产品照片上传到图库 | 写入 |
update_photo | 编辑图库条目 | 写入 |
remove_photo_background | 移除照片背景 | 写入 |
restore_photo_original | 恢复照片的原始上传版本 | 写入 |
duplicate_photo | 为产品添加另一种外观 | 写入 |
delete_photo | 从图库中删除照片 | 确认 |
产品
| 工具 | 功能 | 访问权限 |
|---|---|---|
list_products | 列出产品 | 读取 |
get_product | 获取一个产品 | 读取 |
sync_products | 立即从 Shopify 同步产品 | 写入 |
get_product_sync_status | 产品同步设置和状态 | 读取 |
update_product_sync_settings | 更改自动产品同步设置 | 写入 |
add_product | 手动添加产品 | 写入 |
update_product | 编辑产品 | 写入 |
hide_product | 在文章中隐藏产品 | 写入 |
unhide_product | 在文章中显示产品 | 写入 |
delete_product | 删除(归档)产品 | 确认 |
get_dutchie_status | Dutchie POS 连接状态 | 读取 |
connect_dutchie | 连接 Dutchie 门店 | 写入 |
sync_dutchie | 立即拉取 Dutchie 菜单 | 写入 |
remove_dutchie_location | 断开 Dutchie 门店的连接 | 确认 |
地点页面
| 工具 | 功能 | 访问权限 |
|---|---|---|
list_business_locations | 列出商家地点 | 读取 |
detect_business_location | 从网站检测商家地点 | 写入 |
add_business_location | 添加商家地点 | 写入 |
update_business_location | 编辑商家地点 | 写入 |
delete_business_location | 删除商家地点 | 确认 |
set_primary_location | 将某个地点设为主要地点 | 写入 |
list_page_templates | 列出可用作模板的 WordPress 页面 | 读取 |
get_nearby_towns | 查找适合作为目标的附近城镇 | 读取 |
preview_location_pages | 预览一批页面的标题和别名 | 读取 |
preview_location_page_content | 预览单个页面改写后的完整内容 | 写入 |
generate_location_page_drafts | 生成地点页面并保存为 WordPress 草稿 | 写入 |
publish_location_pages | 生成并发布地点页面 | 确认 |
设置和集成
| 工具 | 功能 | 访问权限 |
|---|---|---|
get_settings | 获取所有网站设置 | 读取 |
update_settings | 更新网站设置 | 写入 |
find_competitors | 推荐竞争对手 | 写入 |
generate_description | 根据网站起草业务描述 | 写入 |
fetch_sitemap_links | 读取网站的站点地图 | 读取 |
get_site_guardrails | 获取应用于此网站的护栏 | 读取 |
update_site_guardrails | 设置应用于此网站的护栏 | 写入 |
list_guardrails | 列出护栏库 | 读取 |
create_guardrail | 创建护栏 | 写入 |
update_guardrail | 编辑护栏 | 写入 |
delete_guardrail | 删除护栏 | 确认 |
connect_platform | 连接或重新测试 CMS | 写入 |
get_platform_options | 查看已连接 CMS 提供的选项 | 读取 |
get_connect_link | 获取 Google Search Console 或 Bing 连接链接 | 写入 |
disconnect_gsc | 断开 Google Search Console | 确认 |
disconnect_bing | 断开 Bing Webmaster Tools | 确认 |
set_draft_mode | 开启或关闭草稿模式 | 写入 |
get_pixel_snippet | 获取互动像素状态和安装代码片段 | 读取,Pro+ |
set_pixel_enabled | 开启或关闭互动像素 | 写入,Pro+ |
list_webhooks | 列出 Webhook | 读取 |
create_webhook | 创建 Webhook | 写入 |
update_webhook | 编辑 Webhook | 写入 |
delete_webhook | 删除 Webhook | 确认 |
regenerate_webhook_token | 重新生成 Webhook 的身份验证令牌 | 确认 |
test_webhook | 向 Webhook 发送测试事件 | 写入 |
get_webhook_history | 查看 Webhook 发送历史 | 读取 |
retry_webhook_delivery | 重试发送失败的 Webhook | 写入 |
get_notification_prefs | 获取电子邮件通知偏好设置 | 读取 |
update_notification_prefs | 更改电子邮件通知偏好设置 | 写入 |
团队、账单和帮助
| 工具 | 功能 | 访问权限 |
|---|---|---|
list_team | 列出团队成员和邀请 | 读取 |
invite_teammate | 邀请团队成员 | 写入 |
resend_invite | 重新发送邀请 | 写入 |
revoke_invite | 撤销邀请 | 确认 |
get_billing | 查看当前方案和账单状态 | 读取 |
get_upgrade_link | 获取结账或账单门户链接 | 写入 |
search_help | 向帮助中心提问 | 读取 |
contact_support | 将问题升级给人工处理 | 写入 |
结账、输入银行卡信息、更改方案和删除账户都需在浏览器中完成。相关工具会返回供人工打开的链接。
安全
- 凭据范围受限。 密钥或 OAuth 连接可访问一个网站、你的所有网站,或(对于合作伙伴)每个已批准的客户网站。每个凭据均为只读或读写。只读凭据无法看到写入工具。
- 确认步骤。 删除、发布、还原、断开连接和取消操作都要求 Agent 通过一行描述确切说明将执行的操作并予以确认。
- 限制与控制面板相同。 每周帖子数量、额度和速率限制与手动点击操作时相同。每个凭据每分钟最多调用 120 次,每天最多调用 3000 次。Agent 永远不会获得管理员权限。
- 可随时撤销。“设置”中的“AI agents”会列出每个密钥和已连接应用及其最近使用时间。撤销会在下一次调用时生效。
- 以哈希形式存储。 密钥和令牌均以哈希形式存储。密钥只会在创建时显示一次。
- 记录日志。 每次调用都会记录工具、网站、结果和时间。不会存储参数值。
- OAuth 详情。 使用带 PKCE S256 的授权码、动态客户端注册(RFC 7591)、精确的重定向 URI 匹配、有效期为 1 小时的访问令牌、带重复使用检测的轮换刷新令牌,以及绑定到
/mcpURL 的资源指示符。元数据位于https://app.blawgy.com/.well-known/oauth-authorization-server和https://app.blawgy.com/.well-known/oauth-protected-resource。
合作伙伴和代理机构
合作伙伴所有者完成连接后,只需一次连接即可访问所有已批准的客户网站,因此,像“让每个客户每周发布三篇文章”这样的请求,只需在 Agent 的驱动下,对每个网站分别调用一次。客户也可以连接自己的 Agent,且权限仅限于各自的网站。目前,连接是在 app.blawgy.com 上完成的,而非白标域名。
链接
- 产品页面 blawgy.com/mcp
- 帮助文章 blawgy.com/help/connecting-ai-agents
- Model Context Protocol modelcontextprotocol.io
- 支持 [email protected]
许可证
本仓库的内容(README、server.json、徽标)采用 MIT 许可证。Blawgy 服务以及 app.blawgy.com/mcp 背后的 MCP 服务均为专有软件,并受 Blawgy 条款约束。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。