返回市场
人工智能组新闻-MCP

人工智能组新闻-MCP

作者:jackdark4252 星标更新:2025-11-15

项目介绍

技术文档摘要

aigroup-news-mcp

基于MCP(模型上下文协议)的新闻搜索服务——为AI助手提供实时新闻聚合和搜索功能。

License: MIT Node.js Version MCP

✨ 功能特性

  • 🔍 三个核心MCP工具 - 获取热门新闻列表、关键词搜索、新闻来源列表
  • 📰 支持多个新闻来源 - 支持知乎、微博、GitHub、百度、哔哩哔哩等热门新闻来源
  • 智能缓存 - 内置LRU缓存机制减少重复请求并提高响应速度
  • 🔌 标准MCP协议 - 完全兼容模型上下文协议,可用于Claude Desktop、Cline等客户端
  • 🚀 一键启动 - 通过NPX无需复杂配置即可一键运行
  • 📊 实时更新 - 支持热门榜单和实时新闻,可配置刷新间隔

📦 安装与使用

方法1:通过NPX运行(推荐)

无需安装,直接使用:

npx aigroup-news-mcp

方法2:全局安装

npm install -g aigroup-news-mcp
aigroup-news-mcp

方法3:本地开发

# 克隆项目
git clone https://github.com/jackdark425/aigroup-news-mcp.git
cd aigroup-news-mcp

# 安装依赖
npm install

# 开发模式运行
npm run dev

# 构建项目
npm run build

# 运行构建后的版本
npm start

🔧 MCP客户端配置

Claude Desktop配置

  1. 查找配置文件位置:

    • Windows: %APPDATA%\Claude\claude_desktop_config.json
    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Linux: ~/.config/Claude/claude_desktop_config.json
  2. 编辑配置文件并添加以下内容:

{
  "mcpServers": {
    "aigroup-news-mcp": {
      "command": "npx",
      "args": ["-y", "aigroup-news-mcp"]
    }
  }
}

如果使用本地开发版本:

{
  "mcpServers": {
    "aigroup-news-mcp": {
      "command": "node",
      "args": ["D:\\aigroup-news-mcp\\dist\\index.js"]
    }
  }
}
  1. 重启Claude Desktop 使配置生效

  2. 验证工具是否成功加载:

    • 打开Claude Desktop
    • 尝试在对话中使用工具,例如:请获取知乎热榜前 5 条新闻

Cline配置

在VS Code中的Cline扩展设置中添加MCP服务器配置:

文件位置: VS Code 设置 → Cline → MCP Servers

{
  "mcpServers": {
    "aigroup-news-mcp": {
      "command": "npx",
      "args": ["aigroup-news-mcp"],
      "env": {}
    }
  }
}

或使用本地版本:

{
  "mcpServers": {
    "aigroup-news-mcp": {
      "command": "node",
      "args": ["D:\\aigroup-news-mcp\\dist\\index.js"],
      "env": {}
    }
  }
}

其他MCP客户端

任何支持MCP协议的客户端都可以使用此服务。基本配置格式:

{
  "command": "npx",
  "args": ["-y", "aigroup-news-mcp"]
}

或指定直接运行Node.js:

{
  "command": "node",
  "args": ["D:\\aigroup-news-mcp\\dist\\index.js"]
}

🛠️ MCP工具描述

1. get_hotest_latest_news

从指定新闻来源获取最热门或最新的新闻列表。

参数

  • id (字符串,必需):新闻来源ID(如zhihuweibogithub
  • count (数字,可选):返回的新闻数量,默认10,最大50

使用示例:

在AI对话中:

请获取知乎热榜前 10 条新闻

或:

给我看看 GitHub Trending 今日前 5 个项目

工具调用示例:

{
  "id": "zhihu",
  "count": 10
}

返回示例:

# 知乎热榜 (zhihu)

共 50 条新闻,显示前 10 条:

1. [如何看待某某事件?](https://www.zhihu.com/question/xxx)
2. [为什么会出现这种情况?](https://www.zhihu.com/question/yyy)
...

2. search_news

根据关键词在新闻来源中搜索相关新闻。

参数

  • keyword (字符串,必需):搜索关键词
  • source (字符串,可选):指定新闻来源ID,否则搜索所有可用来源
  • count (数字,可选):返回的新闻数量,默认10,最大50

使用示例:

在AI对话中:

搜索关于"人工智能"的最新新闻

或:

在微博热搜中搜索"科技"相关内容,给我前 5 条

工具调用示例1(搜索所有来源):

{
  "keyword": "人工智能",
  "count": 15
}

工具调用示例2(搜索指定来源):

{
  "keyword": "科技",
  "source": "weibo",
  "count": 5
}

返回示例:

# 搜索结果 "人工智能" (所有源)

找到 25 条匹配,显示前 15 条:

1. [知乎] [人工智能的未来发展趋势](https://www.zhihu.com/question/xxx)
2. [微博] [#人工智能大会#今日开幕](https://weibo.com/xxx)
3. [GitHub] [awesome-ai: 人工智能资源集合](https://github.com/xxx/awesome-ai)
...

3. list_news_sources

列出所有可用的新闻来源及其详细信息。

参数

使用示例:

在AI对话中:

列出所有可用的新闻源

或:

有哪些新闻源可以使用?

工具调用示例:

{}

返回示例:

# 可用的新闻源

1. **知乎** (zhihu)
   - ✅ 可用 🔥 热门
   - 知乎热榜
   - 刷新间隔: 600s

2. **微博** (weibo)
   - ✅ 可用 🔥 热门
   - 微博实时热搜
   - 刷新间隔: 120s

3. **GitHub** (github)
   - ✅ 可用 🔥 热门
   - Github Trending Today
   - 刷新间隔: 600s
...

📰 支持的新闻来源

当前已实现的新闻来源(更多来源正在开发中):

ID名称类型描述刷新间隔
zhihu知乎热榜知乎热榜话题10分钟
weibo微博热搜微博实时热搜列表2分钟
githubGitHub趋势GitHub Trending 当日趋势10分钟
baidu百度热搜百度热搜列表10分钟
bilibili哔哩哔哩热搜哔哩哔哩热搜话题10分钟

计划支持的新闻来源(基于sources.json配置):

  • IT之家、澎湃新闻、36氪、Nuggets V2EX
  • 豆瓣、抖音、今日头条、虎扑、百度贴吧
  • 财新、雪球、华尔街见闻、金十数据
  • Hacker News、Product Hunt、Solidot
  • 更多。(总计50+新闻来源)

使用list_news_sources 查看完整的可用工具列表。

💡 使用场景

场景1:快速了解热点话题

你:今天知乎和微博有什么热点?
AI:[调用 get_hotest_latest_news 获取知乎和微博热榜]

场景2:跟踪特定主题

你:最近关于"ChatGPT"的新闻有哪些?
AI:[调用 search_news 搜索关键词]

场景3:追踪技术趋势

你:GitHub 上今天有哪些热门项目?
AI:[调用 get_hotest_latest_news 获取 GitHub Trending]

场景4:多源信息聚合

你:搜索所有新闻源中关于"人工智能"的内容
AI:[调用 search_news 跨所有源搜索]

🔍 故障排除

问题1:工具未加载

症状: 在Claude Desktop中看不到aigroup news mcp工具

解决方法:

  1. 检查配置文件路径是否正确
  2. 确认JSON格式正确(注意逗号和引号)
  3. 重启Claude Desktop
  4. 检查终端能否运行 npx aigroup-news-mcp

问题2:npx命令失败

症状: 运行 npx aigroup-news-mcp 出现错误报告

解决方法:

  1. 确认Node.js版本>=18.0.0:node --version
  2. 更新npm:npm install -g npm@latest
  3. 清除NPX缓存:npx clear-npx-cache
  4. 尝试使用完整路径运行本地构建版本

问题3:新闻来源返回错误

症状: 获取新闻时出现错误报告

可能原因及解决方法:

  1. 网络问题: 检查网络连接,某些来源可能需要代理
  2. 来源配置禁用: 使用 list_news_sources 查看来源状态
  3. 缓存过期: 等待缓存刷新或服务重启
  4. API变更: 查看日志文件可能需要更新来源适配器

问题4:如何查看日志

日志位置:

  • 服务会在运行时在控制台输出日志
  • Claude Desktop的日志位于特定系统位置(参见Claude Desktop文档)

启用详细日志: 修改环境变量(在配置中添加):

{
  "mcpServers": {
    "aigroup-news-mcp": {
      "command": "npx",
      "args": ["-y", "aigroup-news-mcp"],
      "env": {
        "LOG_LEVEL": "debug"
      }
    }
  }
}

问题5:缓存相关问题

症状: 数据未更新或过时

解决方法:

  1. 重启MCP服务器(重启Claude Desktop)
  2. 缓存会根据来源的刷新间隔自动更新
  3. 查看 list_news_sources 了解每个来源的刷新间隔

📚 开发文档

添加新的新闻来源

查看 DEVELOPMENT.md 了解如何:

  • 添加新的新闻来源适配器
  • 配置新闻来源元数据
  • 测试新闻来源
  • 提交贡献

项目结构

D:\aigroup-news-mcp\
├── src\
│   ├── index.ts           # 服务入口
│   ├── server.ts          # MCP服务器配置
│   ├── types.ts           # TypeScript类型定义
│   ├── tools\             # MCP工具实现
│   │   ├── getNews.ts     # 获取新闻工具
│   │   ├── searchNews.ts  # 搜索新闻工具
│   │   └── listSources.ts # 列出新闻源工具
│   ├── sources\           # 新闻来源适配器
│   │   ├── index.ts       # 源管理
│   │   ├── config.ts      # 配置加载
│   │   ├── zhihu.ts       # 知乎适配器
│   │   ├── weibo.ts       # 微博适配器
│   │   └── ...            # 其他源适配器
│   ├── cache\             # 缓存管理
│   │   └── index.ts       # LRU缓存实现
│   ├── utils\             # 工具函数
│   │   ├── logger.ts      # 日志
│   │   ├── fetch.ts       # HTTP请求
│   │   └── ...            # 其他工具
│   └── data\
│       └── sources.json   # 新闻来源配置
├── examples\              # 配置示例
├── dist\                  # 编译输出
├── package.json
├── tsconfig.json
└── README.md

🤝 贡献

欢迎贡献代码、报告问题或提供建议!

  1. 分叉这个项目
  2. 创建功能分支(git checkout -b feature/amazing-feature
  3. 提交更改(git commit -m 'Add some amazing feature'
  4. 推送到分支(git push origin feature/amazing-feature
  5. 创建Pull Request

请参阅 DEVELOPMENT.md 了解详细的开发指南。

📖 相关资源

📄 许可证

MIT许可证 - 详情见 LICENSE 文件

⚠️ 免责声明

本项目仅用于学习和研究目的。请遵守各新闻来源的使用条款和robots.txt规则。本项目不对新闻内容的准确性、完整性和及时性负责。

🙏 致谢


需要帮助? 查看 快速入门指南配置指南

发现一个问题? 请在 GitHub Issues 提交问题报告


作者:程颖文 jackdark425 邮箱: jackdark425@gmail.com 团队: aigroup