mcp
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"wechat-extractor-http": {
"type": "http",
"url": "http://localhost:5002/sse"
},
"wechat-extractor-stdio": {
"args": [
"/Users/guanshilong/app/code/lingma/mcp/mcp_server.py"
],
"command": "python3",
"env": {
"PYTHONPATH": "/Users/guanshilong/app/code/lingma/mcp"
}
}
}
}
服务介绍
微信公众号文章信息提取服务
这是一个基于Python的微信公众号文章信息提取服务支持两种模式
- MCP Server模式 (基于stdio通信)
- HTTP Server模式 (基于HTTP通信)
功能特性
- 提取微信公众号文章的标题
- 提取文章作者信息
- 提取文章正文内容以Markdown格式返回
安装依赖
pip install -r requirements.txt
本地测试
在正式使用服务之前可以先运行简单的测试脚本验证功能
python simple_test.py
或者使用交互式测试脚本
python test_extractor.py
MCP协议说明
MCPModel Context Protocol使用JSON-RPC 2.0标准进行通信所有请求和响应均为JSON格式
通信示例
工具列表请求
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list",
"params": {}
}
工具调用请求
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "extract_article_info",
"arguments": {
"url": "https://mp.weixin.qq.com/s/example"
}
}
}
响应格式
{
"jsonrpc": "2.0",
"id": 2,
"result": {
"title": "文章标题",
"author": "作者",
"content": "# Markdown格式内容..."
}
}
启动服务
MCP Server模式 (stdio通信)
python mcp_server.py
服务将通过stdio与客户端通信需要使用支持MCP协议的客户端来调用
HTTP Server模式 (HTTP通信)
python http_mcp_server.py
服务将在 http://localhost:5002 上运行
API接口
提取文章信息
POST /extract
请求体
{
"url": "微信公众号文章链接"
}
响应
{
"title": "文章标题",
"author": "作者",
"content": "文章内容(Markdown格式)"
}
健康检查
GET /health
使用示例
HTTP模式使用示例
curl -X POST http://localhost:5002/extract \
-H "Content-Type: application/json" \
-d '{"url": "your_wechat_article_url"}'
MCP模式使用示例
MCP Server需要通过支持MCP协议的客户端来调用例如
- Cherry Studio
- Cursor
- Cline
- Dify
- FastGPT
- N8N等
这些客户端会自动发现并调用本服务提供的工具
JSON配置方式
STDIO模式配置
{
"mcpServers": {
"wechat-extractor-stdio": {
"command": "python3",
"args": [
"/Users/guanshilong/app/code/lingma/mcp/mcp_server.py"
],
"env": {
"PYTHONPATH": "/Users/guanshilong/app/code/lingma/mcp"
}
}
}
}
HTTP模式配置
{
"mcpServers": {
"wechat-extractor-http": {
"type": "http",
"url": "http://localhost:5002/sse"
}
}
}
不同客户端的配置文件位置
- Claude Desktop:
~/.claude/claude_desktop_config.json - Cursor:
.cursor/mcp.json - VS Code:
.vscode/mcp.json
常见问题排查
端口冲突问题
如果遇到类似以下错误
ERROR: [Errno 48] error while attempting to bind on address ('0.0.0.0', 5001): address already in use
这表示指定端口已被占用请修改 http_mcp_server.py 文件中的端口号
服务启动检查
可以通过以下方式验证服务是否正常运行
# 检查端口是否被监听
netstat -an | grep 5002
# 或者使用lsof命令macOS/Linux
lsof -i :5002
微信文章提取失败
由于微信有反爬虫机制可能会出现提取失败的情况如果返回的结果中字段为空请稍后再试或者检查文章链接是否有效