mcpField
A
AI News

AI News

本地服务
github.com/duncan-wen搜索与检索02 天前更新

关于 AI News

AI News 将多个来源的 AI 内容收集到本地存储,供 MCP 客户端查询。适合查看更新、搜索历史条目和读取原网页文本的用户;服务器本身不会调用 LLM 生成摘要。

主要功能

  1. 01从 23 个新闻来源收集内容
  2. 02按类别查看新条目
  3. 03按文本、日期、类别或来源搜索
  4. 04获取并提取原网页文本
  5. 05查看来源状态和错误
  6. 06配置或停用来源

适用场景

  1. 01查看近期 AI 行业动态
  2. 02查找过去有关 MCP 的工程文章
  3. 03阅读条目全文
  4. 04检查哪些来源出现故障

MCP 相关

提供查询新条目、搜索、读取条目文本、列出来源和触发收集等工具。数据保存在本地,服务器不会调用 LLM。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"duncan-wen-ai-news": {
"command": "uvx",
"args": [
"ai-news-mcp"
]
}
}
}
启动命令uvx ai-news-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypiai-news-mcp0.2.0

工具

5

收录的工具列表 · 更新于 2 天前

此工具无需参数。

详细介绍

AI News MCP

繁體中文

一个 MCP 服务,可从 23 个来源(公司博客、科技新闻网站、工程博客、发布页面、Hacker News、Product Hunt、Hugging Face 和 OpenRouter)收集 AI 新闻并保存到本地存储,让 Claude 可以询问有哪些新内容、搜索新闻,并阅读条目的全文。

它在你的机器上运行,无需 API 密钥、调度程序或云服务,也绝不会调用大模型:你提出请求时,由 Claude 负责总结。它适用于任何 MCP 客户端(Claude Code、Claude Desktop、Cursor、VS Code 等),并使用该客户端所用的模型;文档中提到 Claude,是因为测试时使用的是 Claude。

适合你吗? 如果你想让 Claude 为你简报 AI 新闻,不必自己访问十几个网站,并且可以接受 Claude 阅读公开来源中条目的标题和摘要,那么就适合你。它不是带有独立界面的新闻阅读器,不会自行总结条目,也不会合并有关同一事件的条目,而且它只了解其来源所发布的内容。

功能

  • 最新内容:按类别展示自上次询问以来收集的所有内容,且仅包含最近 7 天发布的内容。
  • 搜索:可按文本、发布时间、类别和来源搜索目前收集的所有内容(会保留历史记录,因此可以搜索“上周”的内容)。
  • 全文:获取条目的原始页面,并在摘要不够时提取正文。
  • 按需收集:当数据超过 24 小时时,服务会在启动时或你询问最新内容时自动收集。首次收集会追溯到 30 天前。
  • 来源状态:列出每个来源及其最近一次错误,并在某个来源连续 3 次收集失败时发出警告。

示例

可以向 Claude 提出这样的问题:

  • “AI 领域有什么新内容?”
  • “模型方面有什么新内容?把关于同一个模型的条目归为一组。”
  • “查找上周关于 MCP 的工程类条目。”
  • “阅读第二条的全文并总结。”
  • “哪些新闻来源无法正常工作?”

Claude 会对前两个问题调用 whats_new,对第三个调用 search,对第四个调用 read_item,对最后一个调用 list_sources,然后根据返回的条目撰写答案。

安装

你需要 uv 和一个 MCP 客户端。使用 Claude Code 时:

claude mcp add --scope user ai-news -- uvx ai-news-mcp

就这么简单:uvx 会下载并运行此软件包,而 --scope user 会让它在每个项目中都可用。启动新的 Claude Code 会话,然后询问“AI 领域有什么新内容?”。首次收集期间,等待答案可能需要大约一分钟。

如果要从克隆的仓库运行:

git clone https://github.com/duncan-wen/ai-news-mcp.git
claude mcp add --scope user ai-news -- uv run --directory /path/to/ai-news-mcp ai-news-mcp
Claude Desktop

将它添加到 claude_desktop_config.json(Settings > Developer > Edit Config;macOS 上的路径为 ~/Library/Application Support/Claude/,Windows 上的路径为 %APPDATA%\Claude\),然后重启 Claude Desktop:

{
  "mcpServers": {
    "ai-news": {
      "command": "uvx",
      "args": ["ai-news-mcp"]
    }
  }
}
Cursor

将它添加到 ~/.cursor/mcp.json,使其适用于所有项目;或者添加到某个项目中的 .cursor/mcp.json:

{
  "mcpServers": {
    "ai-news": {
      "type": "stdio",
      "command": "uvx",
      "args": ["ai-news-mcp"]
    }
  }
}
VS Code

在命令面板中运行 MCP: Open User Configuration,并将它添加到 servers 下(也可以将其放入某个工作区的 .vscode/mcp.json)。随后即可在 Agent 模式下的 Chat 中使用其工具:

{
  "servers": {
    "ai-news": {
      "type": "stdio",
      "command": "uvx",
      "args": ["ai-news-mcp"]
    }
  }
}
其他 MCP 客户端

所有客户端都以相同方式启动它:命令为 uvx ai-news-mcp,通过 stdio 通信,不需要参数、环境变量或 API 密钥;如果从克隆的仓库运行,命令为 uv run --directory /path/to/ai-news-mcp ai-news-mcp。如果客户端找不到 uvx,请将其完整路径作为命令(运行 which uvx 的输出,或在 Windows 上运行 where uvx 的输出)。

工具

工具功能
whats_new返回自上次询问的各类别检查点以来收集、且在过去 7 天内发布的条目(如果未指定类别,则返回所有类别),最多约 100 条。将这些检查点更新至当前时间。
search按文本、since / until、类别和来源 ID 搜索条目;按时间从新到旧排列。summary_length(默认值为 500)用于缩短显示的摘要(0:不显示摘要)。永不更新检查点。
read_item返回条目原始页面的正文,最多截取 max_length 个字符(默认值为 10,000);truncated 和 full_length 会说明正文是否被截断以及全文长度,客户端可据此使用更大的 max_length 再次请求。
list_sources列出每个来源及其 URL、默认类别和收集状态。
collect_now立即从所有来源收集内容,并报告每个来源新增的内容或失败原因。

类别

每个条目都有一个或多个类别。来源会提供默认类别,而标题和摘要中的关键词规则还会添加其他类别(例如,提及新模型的新闻来源条目也会归入 Models)。

类别定义
NewsAI 行业动态,例如产品发布、融资、政策和人事变动。
Applications可立即使用的新 AI 产品或工具。
Engineering关于如何构建 AI 系统的内容,例如技术文章、框架、实践经验和版本发布。
Models新发布或新收录的 AI 模型,以及其能力和价格的变化。不包括学术论文和理论。

每个类别都有自己的检查点,因此只询问 Models 不会将当天的 News 标记为已查看。

What's New 会对每个条目只显示一次:再次询问时结果为空,直到下一次收集带来新条目。要再次查看近期条目,请按时间查询(例如“本周发布了什么?”):Claude 随后会调用 search,此操作永不更新检查点。只有在询问自上次查看以来有哪些新内容时,Claude 才会调用 whats_new;带有时间范围(“今天”“最近”)或主题的问题会调用 search,因此不会意外将条目标记为已查看。该服务的所有客户端(Claude Code、Claude Desktop、MCP Inspector)共用一个存储区和一组检查点,因此在测试时从 Inspector 调用 whats_new,也会将这些条目标记为 Claude 已查看。

本文使用的术语定义见 GLOSSARY.md。

来源

来源 ID名称默认类别
openai-newsOpenAI 新闻News
google-deepmindGoogle DeepMind 博客News
google-aiGoogle AI(The Keyword)News
anthropic-newsAnthropic 新闻News
mistral-newsMistral 新闻News
microsoft-aiMicrosoft Source: AINews
techcrunch-aiTechCrunch AINews
the-verge-aiThe Verge AINews
mit-technology-review-aiMIT Technology Review AINews
simon-willisonSimon WillisonEngineering
latent-spaceLatent SpaceEngineering
langchain-blogLangChain 博客Engineering
vercel-blogVercel 博客Engineering
cloudflare-blogCloudflare 博客Engineering
hugging-face-blogHugging Face 博客Engineering
nvidia-blogNVIDIA 博客Engineering
aws-machine-learningAWS 机器学习博客Engineering
vllm-releasesvLLM 版本发布Engineering
transformers-releasesTransformers 版本发布Engineering
hacker-news-aiHacker News:AI(标题与 AI 相关且得分超过 100 的故事)Applications
product-hunt-aiProduct Hunt:AIApplications
hugging-face-modelsHugging Face:热门模型Models
openrouter-modelsOpenRouter:新模型Models

Source 配置文件

若要添加自己的 Source、禁用内置 Source 或更改其字段,请在配置目录中创建 sources.toml。没有该文件,服务也能正常运行。

平台位置
Linux、WSL~/.config/ai-news-mcp/sources.toml(或 $XDG_CONFIG_HOME/ai-news-mcp/)
macOS~/Library/Application Support/ai-news-mcp/sources.toml
Windows%LOCALAPPDATA%\ai-news-mcp\sources.toml
disabled = ["techcrunch-ai"]          # built-in Source ids not to collect

[sources.my-blog]                     # a new Source: name, url and default_categories
name = "My Blog"
url = "https://example.com/feed.xml"  # RSS or Atom
default_categories = ["Engineering"]  # any of News, Applications, Engineering, Models

[sources.openai-news]                 # a built-in Source id: only the fields given change
url = "https://openai.com/news/rss.xml"
  • 新增 Source 需要 name、url 和 default_categories。其 kind 默认为 rss(RSS 或 Atom);其他类型与内置 Source 相同(anthropic-sitemap、hn-algolia、hf-models、openrouter-models)。
  • 以某个内置 Source 命名的表只会更改其中指定的字段(name、url、default_categories、kind)。
  • 如果文件格式错误(包含未知键或 Category,或 disabled 中的 id 不是内置 Source),服务将无法启动,并会在错误信息中说明需要修正的内容。编辑后请重启服务(启动新的 Claude Code 会话)。

收集的 Item 存储在数据目录中的 SQLite 文件里(Linux 上为 ~/.local/share/ai-news-mcp/store.sqlite3)。删除该文件即可重新开始,建立全新的 30 天收集记录。

设计决策

每项决策都有一份架构决策记录,见 docs/adr/:

使用条款

本项目不运行任何服务:你机器上的服务会直接获取各个 Source 的内容,使用关联到此代码库的 User-Agent 标识自身,并在向各主机发送请求时留出间隔。你有责任遵守各个 Source 的使用条款。数据存储保留在你的机器上;Claude 只能看到其工具返回的 Item。

开发

uv sync
scripts/check   # lint, format, types, workflows, tests and the package build, as CI runs them
scripts/fix     # apply the formatter and lint autofixes
uv build        # build the sdist and wheel into dist/

如何报告问题和提议更改,请参阅 CONTRIBUTING.md;各版本的更改记录请参阅 CHANGELOG.md。Source URL、速率限制和注意事项见 docs/research/ai-news-sources.md。编码规范见 CODING_STANDARDS.md。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。