新闻分析服务器

一个集成新闻数据与AI分析的MCP服务器,提供全面的新闻分析和见解。

  • by Danieljoh98
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 danieljoh98/news-mcp-server

使用说明

📰 新闻MCP服务器

MCP(模型上下文协议)将新闻数据与人工智能分析相结合的服务器,提供广泛的新闻分析和见解。

🌟 函数

Denne MCP服务商:

  • 📰 获取新闻使用人工智能生成的对话获取和分析新闻统计数据
  • ⚖️ generate-pros_cons根据新闻文章进行优势/不足分析
  • 📅 构建时间线-根据新闻报道建立事件时间表

🛠️ 安装

偏好设置

  • Python 3.13 eller nyere
  • UV包管理器(推荐)或pip
  • API-诺克勒 (见下面的配置)

1.Klone prosjeket

git clone https://github.com/ditt-brukernavn/news.git
cd news

2.安装依赖项

医用紫外线:

uv sync

医疗点:

pip install httpx "mcp[cli]" python-dotenv

3.配置API密钥(PLAYEVD)

⚠️ 小瓶这个项目需要API密钥,你需要自己获得。

3.1获取API密钥

您需要以下API密钥:

新闻API(免费):

  1. 转到 newsapi.org
  2. Klikk“获取API密钥”
  3. 注册医学电子邮箱
  4. 科皮尔-丁API-nøkkel

克劳德API(Betalt):

  1. 转到 console.anthropic.com
  2. 开立一个账户。
  3. Gåtil“API密钥”i仪表板
  4. 点击“创建密钥”
  5. 科皮尔-丁API-nøkkel

3.2正确的.env文件

设置一个。 .env-项目rat文件中的文件:

touch .env  # Linux/Mac
# eller opprett filen manuelt i Windows

在中添加API密钥。 .env文件 :

NEWS_API_KEY=din_faktiske_newsapi_nøkkel_her
CLAUDE_API_KEY=din_faktiske_claude_api_nøkkel_her

例子:

NEWS_API_KEY=a1b2c3d4e5f6789012345abcdef67890
CLAUDE_API_KEY=sk-ant-api03-AbCdEf1234567890...

🔒 安全: .env文件已在中。 .gitignore 并且不会加载到GitHub。

🚀 使用

测试一切是否正常。

在启动服务器之前,请测试API密钥是否正常工作:

python -c "
import os
from dotenv import load_dotenv
load_dotenv()
print('NewsAPI Key:', 'OK' if os.getenv('NEWS_API_KEY') else 'MANGLER')
print('Claude Key:', 'OK' if os.getenv('CLAUDE_API_KEY') else 'MANGLER')
"

作为MCP服务器(推荐)

  1. 启动服务器 :
python news.py
  1. 通过在您的桌面中添加以下内容连接到Claude Desktop claude_desktop_config.json:
{
  "mcpServers": {
    "news": {
      "command": "python",
      "args": ["C:/full/sti/til/news/news.py"],
      "env": {
        "NEWS_API_KEY": "din_faktiske_newsapi_nøkkel",
        "CLAUDE_API_KEY": "din_faktiske_claude_nøkkel"
      }
    }
  }
}

备选方案(推荐): 通过指向项目文件来使用.env文件:

{
  "mcpServers": {
    "news": {
      "command": "python",
      "args": ["news.py"],
      "cwd": "C:/full/sti/til/news/"
    }
  }
}

Claude中的可用工具

📰 get_news(主题)

获取特定主题的新闻统计数据,并生成人工智能集合。

例子:

Bruk get_news-verktøyet for å finne artikler om "klimaendringer"

⚖️ generate.pros_cs(主题)

分析新闻统计数据,并创建一个结构化的福利/不称职列表。

例子:

Bruk generate_pros_cons-verktøyet for "elbiler" for å se argumenter på begge sider

📅 build_timeline(主题)

基于新闻沙漠构建一个长期时间表。

例子:

Bruk build_timeline-verktøyet for "ukraina-krig" for å se hendelsesforløp

📁 项目结构

news/
├── .env                 # API-nøkler (MÅ OPPRETTES AV DEG)
├── .gitignore          # Git-ignorerte filer
├── .python-version     # Python versjonsspesifikasjon
├── pyproject.toml      # Prosjektkonfigurasjon og avhengigheter
├── uv.lock            # UV låsefil for reproduserbare builds
├── news.py            # Hovedserverfil
├── news copy.py       # Backup/alternativ implementasjon
├── news_news_detailed_comments.py  # Detaljert kommentert versjon
└── README.md          # Denne filen

🔧 技术观点

取决于

  • httpx:用于API-forespørsler的Asynkron HTTP-klient
  • mcp[cli]:模型上下文协议实现jon
  • python dotenv用于环境变量管理

API集成

  • 新闻API v2-从数千个来源获取新闻统计数据。
  • 克劳德3俳句人工智能分析及其内容

安全

  • API密钥存储在 .env文件(不受版本控制)
  • HTTPS-forespørsler til alle eksterne API-er HTTPS-forspørssler til all eksterne API
  • 所有网络请求的超时处理

💰 科斯纳德

  • 新闻API-Free ten每月发出1000个请求
  • API克劳德:每个代币的投注额-Haiku er rimeligste模型(约0.25美元/百万代币)

温和午餐的预估价格:每分钟5-15美元。

🐛 菲尔索金

常见问题

  1. “未找到任何文章。”

    • ✅ 过来看。 NEWS_API_KEY 科尔雷科特先生 .env
    • ✅ 验证API密钥是否有效。 newsapi.org
  2. “无法与克劳德一起分析”

    • ✅ 过来看。 CLAUDE_API_KEY 科尔雷科特先生 .env
    • ✅ 验证您的Anthropic帐户是否有信用。
    • ✅ 测试netverterkstilgang直到api.anthopic.com
  3. “服务器启动器ikke”

    • ✅ 检查是否安装了所有成瘾: uv sync
    • ✅ 请确保已安装Python 3.13+: python --version
    • ✅ 核实一下 .env该文件存在并且包含这两个密钥。
  4. “模块无基础错误”

    • ✅ Aktiver虚拟环境: .venv\Scripts\activate (Windows)eller source .venv/bin/activate (Linux/Mac)
    • ✅ 安装成瘾

测试av API-nøkler

测试新闻API:

curl -H "Authorization: Bearer DIN_NEWSAPI_NØKKEL" \
  "https://newsapi.org/v2/everything?q=test&pageSize=1"

API试验:

curl -X POST https://api.anthropic.com/v1/messages \
  -H "x-api-key: DIN_CLAUDE_NØKKEL" \
  -H "Content-Type: application/json" \
  -d '{"model":"claude-3-haiku-20240307","max_tokens":10,"messages":[{"role":"user","content":"test"}]}'

日志记录

详细调试:

python news.py --verbose

📝 利森斯

该项目是为个人/教育用途而开发的。有关商业限制,请参阅遵守API供应商的条款。

🤝 Bidrag

欢迎准备派对和拉取请求!-请:

  1. 推进项目。
  2. 设置功能分支
  3. 提交您的更改
  4. 推动行业
  5. 启动Pull请求

📞 支持


⚠️ 记住你需要得到你自己的API密钥使这个项目工作!