m

mcp

@guanshilong/mcp
0 Stars 188 次浏览 guanshilong 更新于 2026-08-23

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的微信公众号文章信息提取服务支持两种模式

  1. MCP Server模式 (基于stdio通信)
  2. 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

微信文章提取失败

由于微信有反爬虫机制可能会出现提取失败的情况如果返回的结果中字段为空请稍后再试或者检查文章链接是否有效

相关 MCP 服务