使用说明
新闻mcp mcp服务器
mcp新闻服务器
重要
- 除非用户要求,否则不要开始编码。如果用户询问有关代码的问题,请回答问题——除非明确要求,否则请勿编写或修改代码。
组件
资源
服务器通过资源URI公开存储在数据库中的新闻文章:
news://{category}/{limit}:检索给定类别的最新文章列表。{category}:按类别过滤文章(例如。,tech,data_science,news).完整列表请参见工具说明。{limit}(可选,默认值为10):指定要返回的最大文章数。
- 每篇返回的文章都包括标题、链接、发表日期和来源。
提示
服务器当前不公开任何提示。(摘要逻辑存在于内部,但无法通过MCP提示获得)。
工具
服务器实现了一个工具:
summarize_news:从数据库中检索原始新闻文章,允许客户端(LLM)对其进行摘要。- 可选
category(字符串)和limit(整数,默认值为20)参数。 - 返回一个文章词典列表,每个词典包含
id,title,link,published,source,以及content. - 可用类别:
tech,data_science,llm_tools,cybersecurity,linux,audio_dsp,startups,news,science,research,policy.
- 可选
配置
服务器依赖于通过配置的PostgreSQL数据库 DATABASE_URL 环境变量(默认为 postgresql://localhost/mcp_news).
这 news_gatherer.py 脚本(旨在单独/按计划运行)从各种RSS提要填充数据库。
摘要逻辑(内部,不通过MCP公开)使用OpenAI API,通过 OPENAI_API_KEY 环境变量。
其他配置(通过环境变量或默认值):
LOOKBACK_HOURS:有多远以前news_gatherer.py查找新文章(默认值:6)。SUMMARY_WORD_TARGET:内部摘要的目标字数(默认值:500)。MAX_ARTICLES_PER_SUMMARY:一个摘要批次中包含的最大文章数(默认值:25)。KEYWORD_FILTER:内部摘要逻辑使用的关键字。
快速入门
安装
克劳德桌面版
在MacOS上: ~/Library/Application\ Support/Claude/claude_desktop_config.json
在Windows上: %APPDATA%/Claude/claude_desktop_config.json
Development/Unpublished Servers Configuration
``` "mcpServers": { "news-mcp": { "command": "uv", "args": [ "--directory", "~/dev/news-mcp", "run", "news-mcp" ] } } ```Published Servers Configuration
``` "mcpServers": { "news-mcp": { "command": "uvx", "args": [ "news-mcp" ] } } ```发展
建筑与出版
准备分发包裹:
- 同步依赖关系并更新锁文件:
uv sync
- 构建包分发:
uv build
这将在 dist/ 目录。
- 发布到PyPI:
uv publish
注意:您需要通过环境变量或命令标志设置PyPI凭据:
- 令牌:
--token或UV_PUBLISH_TOKEN - 或用户名/密码:
--username/UV_PUBLISH_USERNAME和--password/UV_PUBLISH_PASSWORD
调试
由于MCP服务器在stdio上运行,调试可能具有挑战性。为了达到最佳调试效果 经验,我们强烈建议使用 MCP检查员.
您可以通过以下方式启动MCP检查器 npm 使用此命令:
npx @modelcontextprotocol/inspector uv --directory ~/dev/news-mcp run news-mcp
启动后,检查器将显示一个URL,您可以在浏览器中访问该URL以开始调试。