MCP Goodnews
MCP好消息
MCP Goodnews 是一款简单的模型上下文协议 (MCP) 应用,它包含一个用于获取正面、积极和振奋人心的新闻的服务器。该工具从NewsAPI获取新闻文章,并使用 Cohere LLM 根据正面情绪对新闻文章进行排名并返回排名靠前的新闻文章。
动机
在这个负面新闻频频占据头条的世界,Goodnews MCP 旨在让更多人看到积极向上、振奋人心的新闻故事。这个项目的灵感来源于早期的 GoodnewsFirst 项目,该项目每天向电子邮件订阅者推送正面新闻——这真是一个非常棒的项目!GoodnewsFirst 的出现早于大型语言模型 (LLM) 的最新突破,并且依赖于传统的情绪排序方法,而 Goodnews MCP 则利用现代 LLM 在零样本环境下进行情绪分析。
Related MCP server: mcp-rss-aggregator
使用示例:MCP Goodnews 与 Claude Desktop
要求
克隆mcp-goodnews
# Clone the repository
git clone https://github.com/VectorInstitute/mcp-goodnews.git在下一步中,我们需要提供此克隆存储库位置的绝对路径。
更新 Claude 桌面配置以找到 mcp-goodnews
对于 Mac/Linux
# Navigate to the configuration directory
cd ~/Library/Application\ Support/Claude/config
# Edit the claude_desktop_config.json file
nano claude_desktop_config.json对于 Windows
# Navigate to the configuration directory
cd %APPDATA%\Claude\config
# Edit the claude_desktop_config.json file
notepad claude_desktop_config.json并且您需要在mcpServers下为Goodnews添加一个条目:
{
"mcpServers": {
"Goodnews": {
"command": "<absolute-path-to-bin>/uv",
"args": [
"--directory",
"<absolute-path-to-cloned-repo>/mcp-goodnews/src/mcp_goodnews",
"run",
"server.py"
],
"env": {
"NEWS_API_KEY": "<newsapi-api-key>",
"COHERE_API_KEY": "<cohere-api-key>"
}
}
}
}启动或重新启动 Claude Desktop
Claude Desktop 将使用更新后的配置来构建并运行 mcp-goodnews 服务器。如果成功,您将在聊天对话框的右下角看到锤子工具。
点击锤子工具图标会弹出一个列表,列出可用的 MCP 工具。你应该会看到fetch_list_of_goodnews列在那里。
向克劳德询问好消息!
提示示例:
“告诉我一些今天的好消息。”
“本周世界上发生了哪些积极的事情?”
“给我讲一些关于科学的振奋人心的新闻故事。”
工作原理
当您请求好消息时,应用程序会查询 NewsAPI 中的最新文章
Cohere LLM 分析每篇文章的情绪
根据积极情绪得分对文章进行排名
排名靠前的好消息通过 Claude 返回给您
执照
对 Goodnews MCP 保持积极态度!
Available Tools
1 toolfetch_list_of_goodnewsC
Fetch a list of headlines and return only top-ranked news based on positivity.
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | all |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It mentions filtering by positivity but lacks details on permissions, rate limits, data freshness, or what 'top-ranked' entails (e.g., algorithm, recency). This leaves significant gaps for a tool that likely involves external data fetching.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that gets straight to the point without unnecessary words. It's appropriately sized for a simple tool, though it could be slightly more informative without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and low schema coverage, the description is incomplete. It doesn't explain return values, error handling, or behavioral traits like how 'positivity' is measured, making it inadequate for effective tool use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It doesn't mention the 'category' parameter at all, failing to add meaning beyond the schema. However, with only one parameter and an enum in the schema, the baseline is moderate, but the description offers no parameter context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('fetch a list of headlines') and the resource ('top-ranked news based on positivity'), making the purpose understandable. However, it doesn't differentiate from siblings since there are none, and 'top-ranked' could be more specific about ranking criteria.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, prerequisites, or contextual triggers. The description implies filtering by positivity but doesn't specify scenarios or limitations for usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v0.1.0- First observed
fetch_list_of_goodnews
TDQS
Scored across 1 tool
With only one tool, there is no possibility of confusion or overlap between tools. The tool has a clear, distinct purpose focused on fetching positive news headlines.
Since there is only one tool, naming consistency is inherently perfect. The tool name 'fetch_list_of_goodnews' follows a clear verb_noun pattern, making it predictable and readable.
A single tool is too few for a server named 'MCP Goodnews', which suggests a broader domain of positive news handling. This minimal set limits functionality and feels thin, lacking operations like filtering, searching, or managing news items.
The tool surface is severely incomplete for a news-related server. It only provides fetching of top-ranked positive news, with no ability to create, update, delete, or search news items, leaving significant gaps that could cause agent failures in broader workflows.
Maintenance
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Dive into the latest and greatest from the tech world with our Hacker News MCP server.
Real-time Claude & Anthropic news from your own Claude — free, no API key.
A Model Context Protocol server for Wix AI tools
Related MCP Servers
FlicenseBqualityCmaintenanceA Model Context Protocol server that enables large language models to access the latest trending news headlines and detailed content across various categories including recommended, domestic, technology, and sports news.2-- AlicenseAqualityAmaintenanceModel Context Protocol Server for aggregating RSS feeds in Claude Desktop327Mozilla Public 2.0
- AlicenseAqualityDmaintenanceA TypeScript-based Model Context Protocol server that fetches, searches, and formats news articles from NewsAPI.org into reader-friendly Markdown digests using LLMs (Gemini and Claude).121,348 npmMIT
- AlicenseNot gradedqualityCmaintenanceA Model Context Protocol (MCP) server that provides real-time news intelligence using NewsAPI.ai. This server enables LLMs to search articles, track events, and analyze news through natural conversation.45 npm2MIT