新闻MCP服务器
一个模型上下文协议(MCP)服务器,提供来自各种RSS提要的新闻信息,旨在与Claude等人工智能助手集成。
特性
- 获取各类(技术、商业、科学等)的最新消息
- 搜索与特定术语匹配的新闻文章
- 查看特定订阅源中的文章
- 获取单个文章的详细信息
- 缓存以提高性能并减少RSS源的负载
- 可通过环境变量进行配置
安装
先决条件
- Python 3.10或更高版本
- MCP SDK 1.2.0或更高版本
设置
- 克隆此存储库:
git clone https://github.com/ltejedor/newsfeed-mcp.git
cd news-mcp- 创建虚拟环境并安装依赖项:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt- 运行服务器:
python news_mcp.pyDocker安装
使用Docker运行服务器:
docker-compose up -d配置
可以使用环境变量配置服务器:
NEWS_MCP_CUSTOM_FEEDS:格式为的其他RSS源name1:url1;name2:url2LOG_LEVEL:设置日志记录级别(信息、调试、警告、错误)
使用Claude for Desktop
- 确保您已安装并更新了Claude for Desktop。
- 打开Claude进行桌面应用程序配置:
- 在 macOS 上: ~/Library/Application Support/Claude/claude_desktop_config.json - 在Windows上: %APPDATA%\Claude\claude_desktop_config.json
- 将您的新闻服务器添加到配置中:
{
"mcpServers": {
"news": {
"command": "python",
"args": [
"/ABSOLUTE/PATH/TO/news_mcp.py"
]
}
}
}- 重新启动桌面版的Claude。
- 寻找锤子图标(🔨) 在Claude for Desktop中访问您的工具。
可用工具
服务器提供以下工具:
health_check()
检查服务器是否正常运行并获取基本统计数据。
list_available_feeds()
获取所有可用提要和类别的列表。
Claude中的示例用法:
What news feeds do you have available?get_latest_news(category, limit)
获取最近的新闻文章,可选择按类别筛选。
参数:
category:可选-按类别筛选(科技、一般、商业、科学、旅游、政治)limit:可选-要返回的最大文章数(默认值:5,最大值:20)
Claude中的示例用法:
Show me the latest tech newssearch_news(query, limit)
搜索与特定术语匹配的新闻文章。
参数:
query:在新闻文章中查找的搜索词limit:可选-要返回的最大文章数(默认值:5,最大值:20)
Claude中的示例用法:
Search for news about climate changeget_feed_content(feed_name, limit)
从特定提要获取文章。
参数:
feed_name:要获取的提要的名称limit:可选-要返回的最大文章数(默认值:5,最大值:20)
Claude中的示例用法:
Get articles from the NASA feedget_article_details(url)
通过URL获取文章的详细信息。
参数:
url:用于检索详细信息的文章的URL
Claude中的示例用法:
Tell me more about this article: https://www.example.com/article贡献
欢迎投稿!请随时提交拉取请求。
许可证
此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。
