当前位置: 首页 > news >正文

从零开始开发 CNBlog MCP 工具(更新版)

# 从零开始开发 CNBlog MCP 工具## 开发背景在 Trae 中使用 CNBlog MCP 工具,可以通过自然语言指令 "帮我发表这篇博客" 来发布 Markdown 格式的文章到博客园。## 开发流程### 1. 初始尝试 - 使用 API Key最初尝试使用博客园的 API Key 进行认证,但发现博客园已经取消了 API Key 认证方式,改为使用访问令牌(access token)。### 2. 中间尝试 - 使用 MetaWeblog 协议然后尝试使用 MetaWeblog 协议进行发布,但遇到了认证问题。博客园已经取消了密码登录,改为使用访问令牌。### 3. 最终成功 - 使用访问令牌最终成功使用访问令牌进行认证,并发布了文章。## 发布成功经验### 1. 获取访问令牌1. 登录你的博客园账号 2. 访问博客园后台设置:https://i.cnblogs.com/settings#enableServiceAccess 3. 找到 "启用服务访问" 部分 4. 点击 "生成访问令牌" 按钮 5. 复制生成的访问令牌### 2. 配置 MCP 工具使用以下配置文件:```json {"mcpServers": {"cnblog-server": {"command": "python","args": ["d:\\w\\Code ai\\cn_blog_mcp\\cnblog_mcp.py"]}} } ```### 3. 发布文章使用以下命令发布文章:```python import json import sys import subprocessdef main():# 读取文章内容with open("cnblog_mcp_开发经验.md", "r", encoding="utf-8") as f:content = f.read()# 调用 MCP 工具proc = subprocess.Popen([sys.executable, "cnblog_mcp.py"],stdin=subprocess.PIPE,stdout=subprocess.PIPE,stderr=subprocess.PIPE,text=True)# 发送初始化请求init_request = json.dumps({"jsonrpc": "2.0","method": "initialize","params": {"clientInfo": {"name": "Trae", "version": "1.0.0"}},"id": 1})# 发送工具调用请求tool_request = json.dumps({"jsonrpc": "2.0","method": "tools/call","params": {"name": "publish_cnblog_article","arguments": {"username": "zhiliye","access_token": "C5E08CF7520B8602A9320D8C850B75F7E8F0B7139A19DDC198A35FD2BEBFC641","blog_id": "zhiliye","title": "从零开始开发 CNBlog MCP 工具","content": content}},"id": 2})# 发送请求input_data = f"{init_request}\n{tool_request}\n"stdout, stderr = proc.communicate(input=input_data, timeout=30)# 解析响应lines = stdout.strip().split("\n")for line in lines:if line:try:data = json.loads(line)if data.get("id") == 2:result = data.get("result", {}).get("content", [{}])[0].get("text", "")print("发布结果:", result)except:passif stderr:print("错误信息:", stderr)if __name__ == "__main__":main() ```### 4. 发布结果``` 发布成功! 标题: 从零开始开发 CNBlog MCP 工具 文章 ID: 19676028 文章 URL: https://www.cnblogs.com/zhiliye/p/19676028 ```## 总结通过这次开发,我们成功创建了一个可以在 Trae 中使用的 CNBlog MCP 工具!这个工具:- ✅ 使用 MetaWeblog 协议发布文章 - ✅ 支持访问令牌认证(博客园已取消密码登录) - ✅ 完全符合 Trae 的 MCP 协议要求 - ✅ 支持发布 Markdown 格式的文章 - ✅ 可以通过自然语言指令 "帮我发表这篇博客" 来使用现在你可以在 Trae 中随时使用这个工具来发布你的博客文章了!## 后续改进1. 支持更多的博客平台 2. 支持编辑和删除文章 3. 支持批量发布文章 4. 支持文章分类和标签 5. 支持文章预览和草稿保存## 参考资料- 博客园 MetaWeblog 协议文档:https://rpc.cnblogs.com/metaweblog/your_blog_id - Trae MCP 协议文档:https://docs.trae.ai/mcp---**发布时间**:2026-03-06 **作者**:知离叶 **博客 URL**:https://www.cnblogs.com/zhiliye/p/19676028
http://www.jsqmd.com/news/442486/

相关文章:

  • 吐血推荐!自考论文神器 —— 千笔·专业论文写作工具
  • 嘉年华旅行社电话查询:官方联系途径与通用建议 - 品牌推荐
  • python+flask的法院庭审辅助系统的研究与发现-vue
  • 探寻优质TWSNS电磁阀生产厂家,广州邢海机电有限公司给出卓越方案,ROSS流量阀,TWSNS电磁阀直销厂家哪家好 - 品牌推荐师
  • 温暖人心的大学创新创业成果突出吗 - 工业设备
  • 采购传动带别盲目!2026PU聚氨酯圆带、平皮带、工业、梯形齿、橡胶、聚氨酯同步带厂家哪家好?麦优迪同步带运行平稳不打滑 - 栗子测评
  • python+flask的流浪猫动物救助系统;领养 s85y8-vue
  • 揭秘2026年成都酒店酒窖酒柜定制排名,看哪家收费合理靠谱 - mypinpai
  • AcWing 892:台阶 ← Nim博弈
  • IP地址数据 赋能社交行业精细化运营与智能匹配
  • python+flask的读书分享评论vue书评
  • 讲讲温度记录仪选购要点,价格和性价比怎么平衡? - 工业品牌热点
  • Clawdbot与ESMAP数字孪生技能融合分析
  • python+flask的车辆违章管理系统-vue
  • Gartner:CMO面临将品牌锁定在代理机构人工智能平台的风险
  • Acunetix v26.02.24 发布,新增功能简介
  • 计算机毕业设计java基于Java的在线家庭语数外作业系统的设计与实现 基于SpringBoot的K12在线作业布置与批改管理平台 设计中小学语数外课程作业发布与学习进度跟踪系统的研发
  • OpenClaw新手必看!推荐10个神器技能包
  • AI生成图片R18提示词:新手入门指南与最佳实践
  • 数字迷雾:AI模糊了真实与虚拟的边界!
  • python+flask的基于WEB的评价指标量化评分系统的设计与实现-vue
  • Voila音频重生:多语言语音模型崛起[特殊字符]
  • 化妆品包装情感设计 Checklist + 2026年差异化组合方案 - 宏洛图品牌设计
  • python+flask的大学生兼职就业求职招聘管理系统hg241-vue
  • AI专著撰写不用愁!精选工具助力,快速生成专业学术大作
  • python+flask的教学成果投票系统vue
  • 牛客刷题-Day34
  • 【开题答辩全过程】以 基于大数据分析的手机产品推荐系统为例,包含答辩的问题和答案
  • python+flask的智慧农场农用工具商城管理系统vue农具
  • 支付网关服务架构设计