Token导航 LogoToken导航TokenDH.com
Wechat Read MCP In Rust logo
AI代理未说明官方级别未说明来源级核验

Wechat Read MCP In Rust

MCP Server

基于Rust实现的MCP服务器,用于读取微信公众号文章内容,并通过headless Chrome浏览器渲染页面,提取结构化数据。

工具数

1

提示词数

0

GitHub Stars

12

资源数

0
数据提取RustClaudeClaude DesktopClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Zlatanwic

提供方

Zlatanwic

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

Wechat Article Read MCP in Rust

![English](./assets/readme_en.md)

一个基于 Rust 实现的 MCP (Model Context Protocol) 服务器,用于读取微信公众号文章内容。

通过 headless Chrome 浏览器渲染微信文章页面,提取标题、作者、发布时间和正文内容,以结构化 JSON 格式返回给 AI 客户端(如 Claude Desktop)。

前言

目前多家业界最佳的大模型厂商如Gemini,Claude,Minimax虽然都有联网搜索功能,但是由于微信公众号的反爬机制,并不能提取到文章内容,本项目旨在赋予LLM实际读取微信公众号文章的能力。

受项目weixin-read-mcp的启发,本项目使用Rust实现,优势在于:

  1. 🚀 启动速度 — 编译为原生二进制,无需 Python 解释器和虚拟环境,MCP 服务冷启动从数秒降至毫秒级
  2. 📦 分发简便 — 单个可执行文件,无需用户安装 Python / pip / venv
  3. 💾 内存占用 — Rust 无 GC 开销,整体内存占用更低
  4. 🔒 类型安全 — 编译期保证类型正确,杜绝运行时类型错误
  5. ⚡ 解析性能 — HTML 解析和文本处理在 Rust 中显著更快

示例

二进制文件即插即用: 示例图片

✨ 特性

  • 单一二进制 — 无需 Python 环境,编译后即可分发
  • MCP 协议 — 通过 stdio JSON-RPC 与 AI 客户端集成
  • 浏览器渲染 — 使用 Chrome DevTools Protocol 获取 JavaScript 渲染后的完整页面
  • 结构化提取 — CSS 选择器精准提取文章元数据和正文

🏗️ 架构

AI Client (Claude Desktop)
    ↕ stdio JSON-RPC (MCP 协议)
main.rs → server.rs → scraper.rs → parser.rs
                          ↕ CDP
                    Chromium (headless)
                          ↓ HTTP
                   mp.weixin.qq.com
模块职责
main.rs程序入口,初始化日志和 MCP 服务
server.rsMCP 工具注册,URL 校验,响应构造
scraper.rsheadless Chrome 生命周期管理,页面导航
parser.rsHTML 解析,CSS 选择器提取结构化数据
error.rs统一错误类型定义

📋 前置条件

  1. Rust 工具链
   curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  1. Chrome 或 Chromium 浏览器
   # Ubuntu/Debian
   sudo apt install chromium-browser

   # macOS
   brew install --cask chromium

   # Windows
   # 安装 Chrome 浏览器即可

🔨 编译

# 开发构建
cargo build

# 发布构建(优化,推荐用于部署)
cargo build --release
注意: 首次编译 chromiumoxide 较慢(约 60K 行 CDP 代码),后续增量编译会快很多。

🚀 使用

配置 Claude Desktop/Antigravity/Cursor等

编辑相关的配置文件:

{
  "mcpServers": {
    "weixin-reader": {
      //in windows
      "command": "/path/to/weixin-mcp-rs.exe"
      //in linux
      //"command": "/path/to/weixin-mcp-rs"
    }
  }
}

/path/to/ 替换为实际的项目路径。

本地测试

# 直接运行(等待 stdin 的 JSON-RPC 输入)
cargo run

# 发送 MCP 初始化请求测试
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"0.1.0"}}}' | cargo run 2>/dev/null

MCP 工具说明

工具名参数说明
read_weixin_articleurl: string读取微信公众号文章,URL 必须以 https://mp.weixin.qq.com/s/ 开头

返回格式:

{
  "success": true,
  "title": "文章标题",
  "author": "作者名",
  "publish_time": "2024-01-01",
  "content": "文章正文...",
  "error": null
}

🔧 常见问题

问题原因解决方案
找不到 Chrome系统未安装 Chrome安装 Chrome,或设置 CHROME 环境变量指向可执行文件
MCP 启动后无响应stdout 被日志污染日志已配置输出到 stderr,检查是否有其他 print 语句
find_element 超时页面加载慢 / 非微信文章页确认 URL 是有效的微信文章链接
文章内容为空微信反爬虫降低请求频率

目录标签

目录标签

数据提取RustClaude微信公众号本地部署MCP协议headlessChrome

支持客户端

Claude DesktopClaudeCursor

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

1

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP