返回市场
头条动态

头条动态

作者:fred-em6 星标更新:2025-10-21

项目介绍

Headline Vibes — EventRegistry MCP Server

Headline Vibes 是一个模型上下文协议(Model Context Protocol)服务器,用于分析从 EventRegistry(newsapi.ai)获取的美国新闻头条中的投资者情绪。它支持每日和每月分析模式,生成带有诊断信息的结构化输出,并可通过标准 I/O 或 HTTP 运行(适用于 Railway 部署)。

功能

  • 精选与投资者相关的美国新闻报道
  • 双重情绪评分(一般 + 投资者),标准化到 0-10 分数范围
  • 政治倾向细分、来源分布及采样诊断
  • 自然语言日期解析以处理每日请求(如 "昨天""上周五"等)
  • 兼容 MCP structuredContent 的结构化 JSON 输出
  • 内置令牌预算和速率限制遥测

前提条件

安装

  1. 安装依赖并构建:
    npm install
    npm run build
    
  2. 配置环境变量(标准 I/O 示例):
    {
      "mcpServers": {
        "headline-vibes": {
          "command": "node",
          "args": ["/绝对路径/headline-vibes/build/index.mjs"],
          "env": {
            "NEWS_API_KEY": "你的eventregistry密钥",
            "TRANSPORT": "stdio"
          }
        }
      }
    }
    
  3. 对于 HTTP(Railway)部署,设置 TRANSPORT=httpHOST=0.0.0.0PORT=<端口>,以及可选的 ALLOWED_HOSTS/ALLOWED_ORIGINS

可用工具

analyze_headlines

单日情绪快照分析。参数:{ "input": 字符串 }

  • 接受自然语言或 YYYY-MM-DD 格式。
  • 返回投资者/一般情绪评分、摘要、分布、样本头条及诊断信息。

analyze_monthly_headlines

两个月份之间的月度聚合分析。参数:{ "startMonth": "YYYY-MM", "endMonth": "YYYY-MM" }

  • 输出每月的政治情绪、头条数量及令牌/采样诊断信息。

驱动结构化结果的 JSON 模式位于 src/schemas/headlines.ts 中。

开发与测试

  • 监视模式:npm run watch
  • 标准 I/O 运行:NEWS_API_KEY=... npm run start:stdio
  • HTTP 运行:TRANSPORT=http HOST=0.0.0.0 PORT=8787 NEWS_API_KEY=... npm run start:http
  • 检查 EventRegistry 连接性:node ./build/scripts/smoke.mjs 2025-02-01
  • 单元测试(Vitest):npm test

Railway 部署

  1. 设置环境变量(TRANSPORTHOSTPORTNEWS_API_KEY,可选的 ALLOWED_HOSTSALLOWED_ORIGINSLOG_LEVEL)。
  2. 在本地构建一次(npm run build)或通过 Railway 的构建步骤进行。
  3. 使用 npm run start 启动。
  4. 健康检查:GET /healthz 返回 200 ok

详见 docs/railway.md 的完整指南。

许可证

MIT