HackerNews智能分析工具

一个从Hacker News中提取真实信号的工具,通过本地运行的过滤器识别争议话题、深度讨论、情感极端和旧话题复活,为AI提供高密度信号而非原始噪声。

  • by SJ2006-stack
  • Python
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 SJ2006-stack/hn-intelligence-mcp

使用说明

🧠 黑客新闻情报MCP

一个模型上下文协议(MCP)服务器,从黑客新闻中提取真实信号,而不是摘要、趋势或共鸣。实际异常。

  • 纯Python数据科学堆栈: 使用Python构建,可以轻松集成VADER NLP和强大的数据处理库等工具,这些工具在文本分析方面远远优于JS。

⚠️ 问题

每一个“HackerNews摘要”工具都做着完全相同的事情:将5000条原始评论转储到LLM中,并询问“趋势是什么?”结果是缓慢、昂贵且令人产生幻觉的通用技术趋势。

这是不同的。

信号提取发生在AI看到任何数据之前。LLM接收预先计算的异常的超密集有效载荷,而不是原始噪声。

⚙️ 运作原理

四个滤波器在本地运行,将噪声提取为纯信号:

过滤器 它检测到什么 如何检测
争议 高摩擦话题 comments >> upvotes 比率
深度论证 技术辩论 评论长度>1000个字符
情绪极值 情绪异常值 VADER NLP,复合值>0.7
复活 旧思想复活 年份标签+URL差异

你的人工智能只能看到这些过滤器的输出——通常是10-20个高度相关的项目,而不是5000条杂乱的评论。快。便宜的。其实很聪明。

🚀 快速入门(零安装或本地服务器)

您可以通过两种方式使用此服务器:将其连接到您的AI环境,或将其作为独立服务器在本地运行。

选项1:与AI工具连接

克劳德桌面

打开您的Claude Desktop配置文件:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • 窗户: %APPDATA%\Claude\claude_desktop_config.json

将以下内容添加到您的 mcpServers 对象:

{
  "mcpServers": {
    "hn-intelligence": {
      "command": "uvx",
      "args": [
        "from",
        "git+https://github.com/SJ2006-stack/hn-intelligence-mcp.git",
        "hn-intelligence-mcp"
      ]
    }
  }
}

重新启动克劳德桌面。

VS代码/光标(通过Cline、Roo或类似工具)

打开您分机的MCP设置(例如。, Cmd/Ctrl + Shift + P → Cline: Open MCP Settings).

粘贴以下配置:

{
  "mcpServers": {
    "hn-intelligence": {
      "command": "uvx",
      "args": [
        "from",
        "git+https://github.com/SJ2006-stack/hn-intelligence-mcp.git",
        "hn-intelligence-mcp"
      ]
    }
  }
}

注意:如果你的代码编辑器很难找到 uvx 在macOS上,更改 "command" 到绝对路径,例如: "/opt/homebrew/bin/uvx".

选项2:作为本地服务器运行

要在本地运行服务器,请执行以下步骤:

  1. 克隆存储库:
    git clone https://github.com/SJ2006-stack/hn-intelligence-mcp.git
    cd hn-intelligence-mcp
    
  2. 设置虚拟环境:
    python3 -m venv .venv
    source .venv/bin/activate
    pip install -r requirements.txt
    
  3. 启动服务器:
    python server.py
    

服务器将启动并监听 http://localhost:8000 (或指定的其他端口)。

故障排除

  • 服务器未启动:确保安装了所有依赖项(pip install -r requirements.txt).
  • 未找到命令:如果 uvx 如果未找到,请提供二进制文件的绝对路径。
  • 端口冲突:如果正在使用默认端口,请在启动服务器时指定其他端口。

🛠️ 用法示例

连接后,向您的AI询问有关Hacker News当前状态的任何信息:

  • “现在开发人员对Next.js的真正看法是什么?”
  • “人们在使用Supabase时遇到了什么技术摩擦?”
  • “关于数据库的哪些旧想法突然又变得相关了?”
  • “开发人员在人工智能编码工具上到底在哪里思考?”

🧰 可用工具

工具 说明
analyze_topic 完整分析——所有4个过滤器组合在一起
get_controversial_posts 仅限高摩擦柱
get_deep_arguments 只有详细的技术辩论
get_sentiment_extremes 只有情绪异常
get_resurrected_topics 只有旧思想重新出现
get_recent_posts 过去N小时内的最新报道(默认24小时)
get_top_posts 过去N小时内最高支持率的故事
search_by_author 特定HN作者提交的故事
search_by_domain 来自特定领域的故事(例如。 github.com)
get_post_comments 帖子URL或HN项目ID的线程评论
get_trending 来自HN热门/新/最佳故事的实时无关键字提要

🏗️ 架构及其不同之处

  • 无需API密钥-Algolia HN API是免费和公开的。
  • 没有全局限制——MCP在本地运行,每个用户从自己的IP访问Algolia。
  • 没有幻觉——你的人工智能会根据数学信号而不是原始数据进行推理。
  • 没有上下文窗口浪费——200个信号令牌与50000个噪声令牌。
  • 30分钟缓存——防止LLM推理循环,并在重复调用时立即返回。
Algolia HN API
      ↓
  fetcher.py        ← Raw data, cached per 30-min window
      ↓
  filters.py        ← 4 signal extractors, pure Python, no LLM
      ↓
  server.py         ← FastMCP tools, hyper-dense JSON payload
      ↓
   Your AI          ← Reasons over signal only

数据源

  • https://hn.algolia.com/api/v1 用于基于日期的搜索、作者/域过滤和分数排序。
  • https://hacker-news.firebaseio.com/v0 用于顶级/新/最佳提要和递归评论检索。

💻 本地开发

如果要修改筛选器或添加新工具,请克隆存储库并在本地运行:

git clone https://github.com/SJ2006-stack/hn-intelligence-mcp.git
cd hn-intelligence-mcp

配置您的MCP客户端以指向您的本地目录:

{
  "mcpServers": {
    "hn-intelligence": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/hn-intelligence-mcp",
        "run",
        "server.py"
      ]
    }
  }
}

🤝 贡献与支持

如果这使您的上下文窗口免于被HN噪声淹没,请考虑给它一个⭐️. 随时欢迎对新信号过滤器的拉取请求!