关于 TweetFeed
TweetFeed 是面向安全团队和 AI Agent 的 MCP 服务,可查询 infosec 社区在 X/Twitter 分享的公开 IOC。它同时提供筛选工具、原始数据资源、活动背景和现成的研判提示词。
主要功能
- 01按时间、类型、用户或标签查询 IOC
- 02检查 URL、IP 和哈希
- 03结合活动背景丰富指标信息
- 04查看趋势、标签和数据源状态
- 05读取数据资源并使用研判提示词
适用场景
- 01确认某个指标是否出现在数据流中
- 02查看近期威胁或活动归属
- 03生成 IOC 研判或每日简报
MCP 相关
向 MCP 客户端提供 IOC 搜索、查询、丰富、活动、趋势和状态工具,以及数据资源和提示词。端点无需身份验证。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://mcp.tweetfeed.live/claude mcp add --transport http 0xdaniellopez-tweetfeed https://mcp.tweetfeed.live/{"mcpServers":{"0xdaniellopez-tweetfeed":{"type":"http","url":"https://mcp.tweetfeed.live/"}}}在 Cursor 中打开{"servers":{"0xdaniellopez-tweetfeed":{"type":"http","url":"https://mcp.tweetfeed.live/"}}}在 VS Code 中打开{"mcpServers":{"0xdaniellopez-tweetfeed":{"type":"http","url":"https://mcp.tweetfeed.live/"}}}{"mcpServers":{"0xdaniellopez-tweetfeed":{"serverUrl":"https://mcp.tweetfeed.live/"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
14| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| tag | string | 否 | 可选:按标签筛选,不区分大小写的子字符串匹配。示例:'phishing'、'cobaltstrike'、'ransomware'、'APT'、'Lockbit'。共有 94 个标签——请参阅 https://tweetfeed.live/ 查看实时分类体系。 |
| time | enum | 是 | 时间范围。'today' = 从 UTC 午夜开始,'week' = 过去 7 天,'month' = 过去 30 天。today | week | month |
| type | enum | 否 | 可选:按 IOC 类型筛选。url | domain | ip | sha256 | md5 |
| user | string | 否 | 可选:按 Twitter/X 账号筛选,不带 @ 前缀(例如 'malwrhunterteam'、'JCyberSec_')。 |
| limit | number | 否 | 可选:返回的最大行数(1-1000)。默认值为 100。 |
详细介绍
tweetfeed-mcp
面向 tweetfeed.live 的模型上下文协议(MCP)服务。
将公开的 IOC 信息源(信息安全社区在 Twitter/X 上分享的 URL、域名、IP、SHA256/MD5 哈希)作为 MCP 工具开放,以便 AI Agent 以编程方式查询威胁情报。
- 端点:
https://mcp.tweetfeed.live/(HTTP JSON-RPC 2.0,POST) - 协议版本:2025-11-25(协商确定;较旧的客户端会自动回退)
- 身份验证:无(所有 IOC 数据均采用 CC0 许可)
- 许可证(数据):CC0-1.0 · 许可证(代码):MIT
工具
| 名称 | 用途 |
|---|---|
query_iocs | 按时间范围(今天/本周/本月)查询 IOC,可选择按用户、标签和类型筛选。 |
check_url | 检查信息源中是否包含指定 URL。 |
check_ip | 检查信息源中是否包含指定 IPv4/IPv6 地址。 |
check_hash | 检查信息源中是否包含指定 MD5 或 SHA-256 哈希(自动检测类型)。 |
list_recent_iocs | 列出自指定日期以来添加的 IOC,可选择按类型/标签筛选。 |
get_tag_info | 获取标签的时间范围汇总数据以及近期 IOC(开头的 # 可选)。 |
get_trending | 获取指定时间范围(今天/本周/本月/本年)的热门标签和 IOC 类型分布。 |
enrich_ioc | 在过去 365 天内精确查找 IOC(自动检测类型:url/domain/ip/md5/sha256),并提供 AI/外部佐证/网络/域名注册(reg)上下文,包括首次报告时域名的年龄(天数)和 newly_registered 标记;如有数据,还会提供战役归属,以及超过 365 天的历史存档(可能与实时匹配结果同时返回);未命中时回退到 30 天子串扫描。 |
get_campaigns | 获取过去 30 天内由 AI 聚类的战役分组,可选择按品牌和最低置信度筛选。 |
get_campaign_iocs | 获取单个战役的完整 IOC 成员列表(表头 + 行),可选择按类型筛选并设置数量上限。 |
get_trends | 获取 31 天的 IOC 趋势分析:按类型划分的每日数量、逐周变化最大的标签、滥用最多的顶级域名、新增与重复 IOC 的比例,以及数据贡献方集中度。 |
get_feed_status | 查看实时流水线运行状况:每个数据产物的新鲜度评估(是否过期、年龄秒数)以及数据源覆盖情况(过去 24 小时内哪些话题标签/账号信息源提供了数据,哪些账号信息源已失效)。 |
search | ChatGPT 连接器接口:查找 IOC 值、标签、战役 ID 或自由文本对应的文档 ID(ioc:<value>、tag:<tag>、campaign:<tfc-id>)。 |
fetch | ChatGPT 连接器接口:获取 search 返回的 ID 对应的完整文档({id, title, text, url, metadata})。 |
资源
除了 14 个工具外,服务还通过 MCP 资源(resources/list、resources/templates/list、resources/read)公开 feed:7 个静态文档和 2 个 URI 模板,每个都返回匹配的 api.tweetfeed.live 文档的原始 JSON。工具是经过筛选且大小受限的路径;资源则适用于需要获取完整文档的客户端(如状态面板、整窗块列表同步)。
| URI | 内容 |
|---|---|
tweetfeed://status | 流水线运行状况和各来源覆盖情况(对应 /v1/status,约 13 KB,每 15 min 刷新)。 |
tweetfeed://counts | 按时间窗口/类型/标签统计的 IOC 总数(对应 /v1/counts,约 6 KB)。 |
tweetfeed://trends | 31 天趋势分析(对应 /v1/trends,约 4 KB,每日更新)。 |
tweetfeed://campaigns | 最近 30 天经 AI 聚类的活动(对应 /v1/campaigns,约 300 KB,每日更新)。 |
tweetfeed://iocs/today | 今天分享的所有 IOC 行(对应 /v1/today,UTC 当天结束时为 50-250 KB)。 |
tweetfeed://iocs/week | 最近 7 天(对应 /v1/week,1-1.5 MB)。 |
tweetfeed://iocs/month | 最近 30 天(对应 /v1/month,2-3 MB,API 最多返回 10,000 行)。 |
tweetfeed://iocs/{time}/{type} | 模板 - time:today|week|month,type:url|domain|ip|sha256|md5(对应 /v1/{time}/{type})。 |
tweetfeed://campaigns/{id} | 模板 - id = tfc- 加 12 个十六进制字符(对应 /v1/campaigns/{id})。 |
未知 URI 或已过期的活动 ID 会返回 JSON-RPC 错误 -32002 "Resource not found"。
提示词
除了上述 14 个工具和资源外,服务还支持 MCP 提示词(prompts/list、prompts/get,参数 name 和 arguments 为字符串):现成的配方,可将多次工具调用串联成一组指令,供模型运行并汇报结果。工具由模型选择,资源是原始文档,而提示词是用户直接调用的配方——它们会在 Claude Desktop 和 Claude Code 中显示为斜杠命令。
| 名称 | 参数 | 用途 |
|---|---|---|
triage_ioc | ioc(必填),context(可选) | 对一个 IOC(URL/域名/IP/MD5/SHA-256)进行逐步分诊:信息补充、活动归属、判定结果和建议操作。 |
daily_brief | window(可选,默认值为 today | week) | 简要报告:feed 运行状况、数量与构成、变化中的标签、活跃的高置信度活动、遭滥用的 TLD。 |
campaign_summary | campaign_id(必填,tfc- 加 12 个十六进制字符) | 单个活动的交接摘要:背景、目标、ATT&CK 技术、IOC 明细、基础设施、可直接用于拦截的列表、CSV/STIX 链接。 |
与 Claude Desktop / Claude.ai / 其他 MCP 客户端搭配使用
{
"mcpServers": {
"tweetfeed": {
"url": "https://mcp.tweetfeed.live/"
}
}
}
或者通过 Claude Code CLI 使用:
claude mcp add tweetfeed https://mcp.tweetfeed.live/
用作 ChatGPT 连接器
ChatGPT(Settings > Connectors > Create,或 Deep research 自定义连接器)
无需身份验证即可使用 https://mcp.tweetfeed.live/。该服务除了其他工具外,
还公开了必需的 search 和 fetch 工具,每个结果都附带 tweetfeed.live URL,方便 ChatGPT 引用。
快速测试
curl -sX POST https://mcp.tweetfeed.live/ \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","method":"tools/list","id":1}' | jq .
# Example tool call:
curl -sX POST https://mcp.tweetfeed.live/ \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","method":"tools/call","id":2,
"params":{"name":"query_iocs",
"arguments":{"time":"today","tag":"phishing","type":"url","limit":5}}}' | jq .
# Example resource read:
curl -sX POST https://mcp.tweetfeed.live/ \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","method":"resources/read","id":3,
"params":{"uri":"tweetfeed://status"}}' | jq .
# Example prompt call:
curl -sX POST https://mcp.tweetfeed.live/ \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","method":"prompts/get","id":4,
"params":{"name":"triage_ioc","arguments":{"ioc":"example.com"}}}' | jq .
开发
npm install
npm run dev # wrangler dev on http://localhost:8787
MCP_URL=http://localhost:8787 npm test
部署
npm run deploy # wrangler deploy (routes mcp.tweetfeed.live/*)
MCP_URL=https://mcp.tweetfeed.live npm test
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。