关于 signalfeed
signalfeed 是用于查询 DataSignals 申报事件流的 MCP 服务和命令行工具,覆盖 12 类美国申报及相关事件。它保留上游响应,并支持基于游标的结果获取。
主要功能
- 01搜索 12 类事件流
- 02按公司、代码、评分或类型筛选
- 03获取公司与事件详情
- 04查看数据流状态和事件类型
- 05使用游标翻页
适用场景
- 01跟踪内幕买入和计划减持
- 02查看激进投资者及机构持仓
- 03监测 FDA 行动和生物技术催化事件
- 04检查申报记录和数据流新鲜度
MCP 相关
它将 DataSignals Events API 查询作为 MCP 工具提供,包括事件搜索、公司和事件查询、数据流状态及用量。无需密钥即可使用事件类型详情和数据流状态工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
7收录的工具列表 · 更新于 1 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| cik | string | 否 | 申报方的 CIK 编号。 |
| limit | integer | 否 | 要返回的最大结果数(可选)。 |
| since | integer | 否 | 此调用的起始时间。 |
| ticker | string | 否 | 股票代码,例如 AAPL。 |
| min_score | number | 否 | 最低分数筛选条件(可选)。 |
| event_type | enum | 否 | 事件类型(可选)。insider_cluster | insider_sale_notice | activist_stake | institutional_holding | material_event | private_raise | fda_action | biotech_catalyst | nih_grant | gov_contract_award | congress_trade | hiring_signal |
详细介绍
signalfeed
十二类美国申报事件流,采用统一架构,使用单个密钥。 signalfeed 是一个小型客户端,用于调用 DataSignals Events API。该 API 会将官方申报文件解析为经过评分、可用于决策的事件记录:内部人士买入集群、 计划中的内部人士出售(Form 144)、激进投资者持股 (13D/G)、机构持仓(13F)、重大事件 (8-K)、私人融资(Form D)、FDA 行动、生物技术试验催化剂、 NIH 资助、联邦合同授予、国会交易和招聘信号。每条记录都 链接回其解析来源申报文件;若记录带有评分,也会包含用于计算该 评分的条款。
数据流基于游标:将一条响应中的游标作为 since 传回,
即可准确获取自该游标以来到达的数据——不会重复,也不会遗漏。响应内容
与 API 返回的完全一致:传递过程中不会删减、重命名或总结任何内容。
配置
DATASIGNALS_KEY— 你的 API 密钥。带密钥的工具必需;请求时会通过Authorization: Bearer <key>发送,绝不会作为查询参数发送,因此不会出现在服务器日志或浏览器历史记录中。无密钥工具不会发送该密钥。DATASIGNALS_BASE_URL(可选)— API 基础 URL。 默认为https://datasignalslab.com。
调用带密钥的工具但未提供密钥时,会在本地失败并显示
DATASIGNALS_KEY is not set,不会发出任何请求。两个工具——list_event_types 和 feed_health
——无需密钥即可使用,因此你可以先了解数据的结构和新鲜度,再决定是否使用。
工具
search_events— 搜索全部十二类数据流中的申报事件。所有筛选条件均为可选:event_type(十二种数据流 ID 之一)、ticker、cik、min_score,以及用于翻页的since(之前响应中的游标)和limit。只会发送你设置的筛选条件。company_events— 获取某家公司在所有数据流中的全部申报记录。company可以是股票代码或 CIK;since和limit用于翻页。get_event— 根据事件的event_id显示该事件的全部信息(例如insider_cluster:CAMP:2026-08-03)。list_event_types— 查看每种数据流包含的字段,以及能否重新计算其评分。 无需密钥。feed_health— 查看当前每种数据流的最新情况。无需密钥。usage— 查看已使用的月度事件额度,以及额度重置时间。check_setup— 检查 API 密钥是否已配置,以及数据流是否有响应。始终返回 JSON 对象{key_configured, feed_reachable, detail};不会显示密钥值,检查本身也不会发送密钥。
值得了解的行为:
- 数据流额度耗尽时,同步过程中不会抛出错误:它会返回一条游标保持不变的 200 空页面,并附带一条纯文本通知;signalfeed 会像处理其他页面一样原样传递。
- API 在空闲时会缩容至零。静默一段时间后的首次请求可能会收到
starting_up响应(带有Retry-After标头),此时服务正在唤醒,可能需要约十五秒;signalfeed 会将该响应正文作为正常结果返回,而不会报错,并且此次调用不会计入额度。 只需再次调用。 - 其他任何非 2xx 响应都会失败并显示
datasignals error: HTTP <status>;API 无法访问时则显示datasignals unreachable。
端点来源
供应商的 Events API 页面明确列出了端点、 筛选器名称、游标模型和 12 个流 ID;原 MCP 项目的 README 明确列出了 7 个工具、两个环境 变量、Bearer 标头身份验证规则以及两个无需密钥 的工具。MCP 层的参数名称遵循文档中记载的 API 名称(这是带注释的还原,因为 MCP 层本身未公开):
GET <base>/v1/events,仅将已设置的筛选器作为 查询参数(供search_events使用)。GET <base>/v1/companies/{ticker or cik}/events,在已设置时附带since/limit(供company_events使用)。GET <base>/v1/events/{event_id}(供get_event使用)。GET <base>/v1/event-types(供list_event_types使用, 无需密钥)。GET <base>/v1/health(供feed_health使用, 无需密钥;也供check_setup使用)。GET <base>/v1/usage(供usage使用)。
event_id 和 company 路径段会进行
URL 编码。
CLI
每个工具都是一个子命令,接收一个 JSON 参数 字符串:
npx @reneturcios/signalfeed search_events '{"event_type":"fda_action","min_score":70}'
npx @reneturcios/signalfeed company_events '{"company":"NVDA"}'
npx @reneturcios/signalfeed get_event '{"event_id":"insider_cluster:CAMP:2026-08-03"}'
npx @reneturcios/signalfeed list_event_types '{}'
npx @reneturcios/signalfeed feed_health '{}'
npx @reneturcios/signalfeed usage '{}'
npx @reneturcios/signalfeed check_setup '{}'
npx @reneturcios/signalfeed --version
输出为工具的结果文本(成功时为上游响应正文)。退出代码:成功时为 0,运行时错误时为 1,用法错误时为 2。
MCP 服务
npx -y @reneturcios/signalfeed mcp
MCP 客户端配置:
{
"mcpServers": {
"signalfeed": {
"command": "npx",
"args": ["-y", "@reneturcios/signalfeed", "mcp"],
"env": {
"DATASIGNALS_KEY": "<your key>"
}
}
}
}
Docker
docker run -i ghcr.io/cloudcorprecords/signalfeed
docker run --rm ghcr.io/cloudcorprecords/signalfeed feed_health '{}'
开发
npm install
npm run build # tsc -> dist/
npm test # tsx --test test/*.test.ts (fake fetch only, no network)
npm run dev # run the CLI from source
许可证
MIT — Copyright (c) 2026 Rene Turcios
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。