经济学人内容获取服务

一个通过Model Context Protocol(MCP)服务器从《经济学人》获取最新简报和完整文章的服务,支持绕过Cloudflare保护并集成AI助手使用。

  • by AMOORCHING
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 AMOORCHING/the-economist-poke-mcp

使用说明

经济学家MCP

从《经济学人》获取内容的MCP(模型上下文协议)服务器。

特性

  • 最新简报:从《经济学人》获取“世界简报”每日摘要
  • 完整文章:通过URL阅读《经济学人》的完整文章
  • Cloudflare旁路:使用Playwright处理Cloudflare保护
  • MCP集成:通过模型上下文协议公开工具,供人工智能助手使用

安装

  1. 克隆此存储库:
git clone <repository-url>
cd the-economist-mcp
  1. 使用安装依赖项 uv (推荐)或 pip:
# Using uv
uv sync

# Or using pip
pip install -e .
  1. 安装Playwright浏览器:
playwright install chromium

配置

创建一个 .env 使用Economist cookie在项目根目录中创建文件:

ECONOMIST_COOKIE=your_cookie_string_here

要获取您的cookie:

  1. 登录到 经济网站
  2. 打开浏览器开发工具(cmd/ctrl+shift+i)
  3. 转到应用程序/存储→ Cookie
  4. 复制相关cookie值(您可能需要多个用分号分隔的cookie)

备注:cookie用于绕过付费墙并访问订阅者内容。您仍然需要自己的订阅。确保其安全,不要将其提交给版本控制。

用法

运行MCP服务器

启动MCP服务器:

python economist_mcp.py

或者,如果使用入口点:

python -m economist_mcp

测试

测试简报获取功能:

python economist_mcp.py test

可用工具

MCP服务器公开了两个工具:

get_latest_briefing()

从《经济学人》获取最新的“世界简报”摘要。返回全文,包括介绍和小文章。

read_full_article(url: str)

获取《经济学人》特定文章的全文。需要文章URL作为输入。返回文章标题、副标题(如果有)和全文。

与Poke集成

此MCP旨在与 点击Interaction.co配置Poke以使用此MCP服务器接收《经济学人》关于重要新闻的短信更新。

需求

  • Python>=3.13
  • 剧作家(用于浏览器自动化)
  • BeautifulSoup4(用于HTML解析)
  • FastMCP(MCP框架)
  • python dotenv(用于环境变量管理)

运作原理

  1. 内容获取:使用Playwright和Chromium获取网页,绕过Cloudflare保护
  2. HTML解析:BeautifulSoup从《经济学人》的HTML中提取结构化内容
  3. MCP工具:FastMCP将功能作为MCP工具公开,可由AI助手调用
  4. Cookie身份验证:使用存储的Cookie访问仅限订阅者的内容

故障排除

Cloudflare阻止

如果您看到“请稍等”或“启用JavaScript”错误:

  • 更新您的 ECONOMIST_COOKIE 在 .env 文件
  • 确保Cookie格式正确(名称=值对,用分号分隔)

未找到内容

如果未提取文章或简报:

  • 《经济学人》的HTML结构可能已经改变
  • 检查您的cookie是否有效且未过期
  • 验证您是否有活动订阅

许可证

看 许可证 文件以获取详细信息。

贡献

欢迎投稿!请随时提交拉取请求。