article
README
🚀 MCP 新闻聚合服务器
MCP 新闻聚合服务器基于 Model Context Protocol (MCP) 构建,借助 Newsnow API,为用户一站式提供多平台的热点新闻与趋势话题,极大提升信息获取效率。
🚀 快速开始
你可以按照以下步骤快速开启 MCP 新闻聚合服务器的使用之旅。
✨ 主要特性
- 多平台热点聚合:一站式获取来自酷安、知乎、微博、B站、抖音、GitHub 等 14+ 平台的热点内容
- 中英文源名识别:支持中英文新闻源名称,并提供模糊匹配功能
- 自定义API端点:通过环境变量或命令行参数配置 Newsnow API 端点
📦 安装指南
方法一:从 PyPI 安装
# 使用 pip 安装
pip install mcp-newsnow
# 或使用 uv 安装
uv pip install mcp-newsnow
方法二:配置 Claude Desktop
在 Claude Desktop 配置文件中添加服务器配置:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
添加以下配置:
{
"mcpServers": {
"get_news": {
"command": "uvx",
"args": [
"mcp-newsnow"
]
}
}
}
💻 使用示例
使用 Claude Desktop
- 安装并配置 Claude Desktop
- 在配置文件中添加上述 MCP 服务器配置
- 重启 Claude Desktop
- 在对话中使用新闻相关工具
使用 MCP CLI 进行开发
# 通过环境变量设置API端点
NEWS_API_URL=https://newsnow.example.com
# 运行测试
mcp test server.py
可用工具
基础用法
以下是获取新闻的基础方法:
- 获取单一源新闻 (
get_newsnow)
async def get_newsnow(source: str) -> dict[str, Any] | None
从指定源获取最新新闻。 参数:
source:新闻源名称 (支持中英文,例如"知乎"、"zhihu"、"B站"等) 返回:包含新闻数据的字典
高级用法
以下是获取多源新闻的高级方法:
- 获取多源新闻 (
get_multi_news)
async def get_multi_news(sources: list[str] = None) -> dict[str, Any]
从多个源获取最新新闻 (最多5个)。 参数:
-
sources:新闻源名称列表 返回:包含多个新闻源数据的字典 -
获取所有源新闻 (
get_all_news)
async def get_all_news() -> dict[str, Any]
获取所有配置的新闻源数据。 返回:包含所有新闻源数据的字典
📚 详细文档
环境变量
| 属性 | 详情 |
|------|------|
| NEWS_API_URL | 设置 Newsnow API 的端点,默认值为默认 URL。 |
支持的新闻源
- 酷安 (coolapk)
- 知乎 (zhihu)
- 微博 (weibo)
- B站 (bilibili)
- 抖音 (douyin)
- GitHub (github)
贡献指南
欢迎提交问题和拉取请求!以下是一些可能的改进方向:
- 增加更多新闻源的支持
- 优化 API 性能
- 改善错误处理机制
- 添加日志记录功能
- 支持更多的 MCP 协议特性
📄 许可证
项目采用 MIT License。
扫码联系在线客服