在社会科学研究中,原始数据是理解复杂社会现象的基石。QAnon 作为一种在互联网时代兴起的现象,拥有大量可供研究的公开文本数据。然而,这些数据往往分散、格式不统一,且数量庞大,手动分析几乎不可能。

qanon-mcp-server 正是为了解决这个问题而诞生的。它是一个基于模型上下文协议(MCP)的服务器,专门为社会学和人类学研究提供一个结构化的 QAnon 言论数据集访问接口。通过这个服务器,研究人员可以使用 AI 助手来搜索、过滤、分析和可视化这些数据,从而更高效地理解其传播模式、主题演化和语言特征。

项目基本信息

信息项详情
项目名称qanon-mcp-server
GitHub地址https://github.com/jkingsman/qanon-mcp-server
项目描述Model Context Protocol server for sociological research into QAnon
作者jkingsman
开源协议MIT License
开源状态公开状态
LanguagesPython, Dockerfile
支持平台Windows / macOS / Linux / Web
最后更新2025-10-18

一、项目介绍

qanon-mcp-server 是一个用 Python 编写的 MCP 服务器,它封装了一个包含 QAnon 言论信息的数据集,并提供了一套丰富的工具和资源来访问这些数据。该数据集来源于另一个名为 JSON-QAnon 的仓库,其中包含了按时间顺序排列的、经过清理的言论文本。

这个服务器的独特之处在于,它不仅仅是数据的“搬运工”,更是一个分析工具包。它提供了:

  • 资源访问:通过 qanon:// 协议的资源 URI 获取总帖子数、特定帖子内容、原始 JSON 数据、作者列表和统计信息。
  • 搜索工具:按关键词、日期范围、作者 ID 搜索帖子。
  • 分析工具:分析特定帖子的上下文、生成时间线摘要、基于 ID 范围或日期范围生成词云。

项目作者明确声明,该数据集仅用于研究目的,不认同其中的任何内容。同时,作者也幽默地提醒:“这个工具完全是 vibe coded 出来的,使用风险自负。”

二、核心优势

为学术研究量身定制
这个项目的每一个功能点都源自真实的研究需求。从“生成时间线”到“词云分析”,它提供了定性研究常用的分析维度。研究者可以快速发现主题变化和高频词汇。

无需处理原始数据
研究者不再需要自己下载 JSON 文件、编写解析脚本。通过 MCP 协议和自然语言,就可以直接向数据提问:“2018 年最常见的词是什么?”

丰富的过滤和检索能力
search_posts 支持关键词模糊搜索;get_posts_by_dateget_posts_by_author_id 支持精确的范围过滤。你可以很容易地聚焦到特定时期或特定发布者的内容。

内置可视化分析支持
词云功能(word_cloud_by_date_rangeword_cloud_by_post_ids)可以帮助研究者快速直观地把握某个时间段或某批帖子的话题焦点。

极简的安装与使用
该项目完全兼容 uvx,无需克隆和安装即可直接运行。通过 Smithery 也可以一键安装到 Claude Desktop,极大降低了使用门槛。

三、适用场景

社会学与传播学教学
在课堂上,教授可以实时演示:“展示 2017 年 10 月到 12 月的最常见关键词”,或者“生成一个从第 1000 号到第 1500 号帖子的词云”。学生可以直观地学习内容分析方法。

网络极端主义研究
研究人员可以分析该言论集中特定阴谋论主题的出现频率和时间演化,或者追踪某些核心叙事在不同作者之间的传播。

计算语言学分析
语言学家可以利用这个服务器获取语料,分析该言论体系的句法特征、特殊词汇或修辞风格,并与主流政治话语进行对比。

历史档案的算法分析
虽然这个数据集很新,但它展示了一种数字化历史档案的研究范式。类似的方法可以被应用到其他任何具有时间戳的文本语料中。

AI 伦理与偏见研究
这个服务器也是一个研究 AI 如何处理争议性内容的案例。通过观察 AI 如何摘要和分析这些数据,可以探讨内容审核、偏见过滤等伦理问题。

四、安装教程

安装 qanon-mcp-server 非常简单,因为它主要设计为通过 uvx 运行,无需克隆代码。以下以将其集成到 Claude Desktop 为例。

准备条件

确保你已经安装了以下工具:

  • Python 3.10 或更高版本
  • uv 包管理器。你可以通过 pip install uv 安装它。
  • Claude Desktop 应用。

方法一:通过 Smithery 一键安装(推荐)

关闭 Claude Desktop,在终端中运行:

npx -y @smithery/cli install @jkingsman/qanon-mcp-server --client claude

等待命令执行完毕,然后重新启动 Claude Desktop。右侧应该会看到工具图标。

方法二:手动配置 Claude Desktop

打开 Claude Desktop 的配置文件:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %AppData%\Claude\claude_desktop_config.json

添加以下内容:

{
  "mcpServers": {
    "qanon_mcp": {
      "command": "uvx",
      "args": ["qanon_mcp"]
    }
  }
}

如果你没有安装 uvx,也可以使用 uv tool run

{
  "mcpServers": {
    "qanon_mcp": {
      "command": "uv",
      "args": ["tool", "run", "qanon_mcp"]
    }
  }
}

保存文件并完全重启 Claude Desktop。

验证安装

重启后,在对话中问 Claude:“这个 QAnon 数据集中总共有多少条帖子?” 如果它能够回答一个数字,说明安装成功。

五、使用示例

假设服务器已连接,以下是一些可以在 Claude 中尝试的研究型对话。

示例1:探索数据集规模

用户输入这个数据集里一共有多少帖子?有哪些作者?

Claude 会利用 qanon://posts/count 资源和 qanon://authors 资源,返回总帖数和作者列表。

示例2:关键词搜索与趋势分析

用户输入搜索在帖文中提到 'storm' 这个关键词的所有帖子。然后,帮我生成这些帖子发布日期的简单分布。

Claude 会先调用 search_posts 工具,然后可能手动或调用其他工具来分析返回结果中的日期字段,从而告诉你这些帖子主要集中在哪些年份或月份。

示例3:时间线摘要生成

用户输入生成从 2018 年 1 月 1 日到 2018 年 6 月 30 日的时间线摘要。

Claude 会调用 get_timeline_summary 工具,并传入日期范围参数。它会返回一个按时间顺序排列的摘要,概括该时期内的主要主题或事件。

示例4:词云分析

用户输入我想分析第 500 号到第 1000 号帖子中最常见的 20 个词汇,生成一个词云分析。

Claude 会调用 word_cloud_by_post_ids 工具,参数为 start_id: 500, end_id: 1000。它会返回一个包含词频统计的数据,而不是真正的图片。然后 Claude 可以告诉你 “最常出现的词是 X,出现了 Y 次”。

示例5:单篇帖子深度分析

用户输入分析第 3725 号帖子,告诉我它的核心内容和提到的关键引用。

Claude 会调用 analyze_post 工具,参数为 post_id: 3725。它会返回对该帖子的深度分析,包括可能存在的引用、上下文和隐含意义。

六、常见问题

问题1:为什么项目作者说“这个工具完全是 vibe coded,使用风险自负”?

解决方案:作者用幽默的方式表达,这个项目可能没有经过严格的工程测试,代码质量可能参差不齐,且作者不为其正确性提供担保。这意味着使用者应该对其输出保持批判性,建议在研究中使用时进行交叉验证。

问题2:那我不应该在生产环境使用它?

解决方案:是的。这个项目显然是为个人学术研究设计的,而不是企业级应用。如果你需要高可靠性的服务,应该基于其源代码自行构建和测试。

问题3:为什么我搜索某些关键词没有结果,尽管我知道它们应该存在?

解决方案:搜索功能是基于简单的关键词匹配,而不是语义搜索。请确保你的关键词拼写正确,并且是帖子中实际出现的词。另外,数据集可能不完整,或者某些帖子经过了标准化处理(如统一大小写)。

问题4:词云工具返回的是数据而不是图片,这是正常的吗?

解决方案:是的,完全正常。MCP 协议目前不直接支持传输图片。word_cloud 工具返回的是词频数据的 JSON 结构。你可以让 AI 根据这些数据向你描述高频词,或者你可以编写一个额外的脚本来生成真正的图片。

问题5:我想离线使用这个服务器,可能吗?

解决方案:数据集似乎已经包含在依赖包或会被自动下载。理论上,你可以在无网络环境下启动服务器并访问本地数据。但首次安装时可能需要网络以下载依赖和数据文件。

七、总结

qanon-mcp-server 是一个非常专业且聚焦的学术工具。它以一种负责任的方式(明确声明不认同内容、仅用于研究)提供了一个争议性话题的结构化研究数据集。

从技术角度看,它展示了 MCP 协议在数字人文学科和计算社会科学领域的巨大潜力。通过将数据集封装成带有搜索、过滤、摘要和词云分析能力的服务器,研究者可以与数据进行深度对话,而无需编写任何代码。

该项目的主要受众是社会学家、心理学家、传播学者和计算语言学家。对于这些领域的研究者来说,qanon-mcp-server 是一个能够显著提升研究效率的利器。同时,对于 MCP 开发者,它也是一个学习如何构建“数据 + 分析工具”型服务器的好范例。

最后,请记住作者的警告:这是一个研究工具,务必带着批判性思维来使用它,并始终将其置于正确的学术伦理框架之内。

标签: 搜索与检索

已有 37 条评论

    1. zackh zackh

      The "vibe coded" comment worried me but the code looks clean actually.

    2. amyt amyt

      Does the dataset include replies or just original posts? Just original.

    3. bobl bobl

      This server made me realize how MCP can democratize access to niche datasets.

    4. cathyx cathyx

      The get_post_by_id_tool is fast. Returns results in under a second.

    5. davidm davidm

      I combined this with a sentiment analysis library. Powerful combo.