关于 Signal8
Signal8 是为 AI Agent 提供公司研究与筛选所需金融及 SEC 文件情报的 MCP 服务。其基于文件的稀释分析为数据标注来源文件,并提供市场、持股、合规和 ETF 数据。
主要功能
- 01公司基本面与市场数据
- 02搜索和解析 SEC 文件
- 03附文件引用的稀释分析
- 04内部人士与机构情报
- 05公司筛选与 ETF 分析
适用场景
- 01依据 SEC 文件评估稀释风险
- 02研究公司财务与持股情况
- 03结合市场和文件数据筛选公司
- 04比较 ETF 持仓与表现
MCP 相关
Signal8 MCP 服务提供公司与市场数据、SEC 文件、稀释分析、情报、筛选及 ETF 分析工具。MCP 访问需使用 Signal8 API 密钥;受支持的客户端也可通过托管连接器登录账户。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://mcp.signal8.ai/mcpclaude mcp add --transport http ai-signal8 https://mcp.signal8.ai/mcp{"mcpServers":{"ai-signal8":{"type":"http","url":"https://mcp.signal8.ai/mcp"}}}在 Cursor 中打开{"servers":{"ai-signal8":{"type":"http","url":"https://mcp.signal8.ai/mcp"}}}在 VS Code 中打开{"mcpServers":{"ai-signal8":{"type":"http","url":"https://mcp.signal8.ai/mcp"}}}{"mcpServers":{"ai-signal8":{"serverUrl":"https://mcp.signal8.ai/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
https://mcp.signal8.ai/mcp需要授权工具
108| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| limit | number | 否 | 返回的最大结果数(默认值:10,最大值:50) |
| query | string | 是 | 搜索查询——公司名称或股票代码(例如,"Tesla"、"TSLA") |
详细介绍
@signal8ai/mcp
适用于 Signal8 的 MCP(Model Context Protocol)服务——由 AI 提取的 SEC 文件情报数据。
让 Claude、Cursor 等 AI Agent 以及其他兼容 MCP 的工具直接访问:
- 公司基本面(报价、财务数据、业绩、流通股、管理层、同行公司、新闻)
- 稀释分析(认股权证、可转换证券、优先股、储架注册、ATM、股权融资额度和 S-1 发行;每项数据均注明其来源 SEC 文件)
- 稀释压力评分(0–100,包含七个组成部分:储架发行额度、ATM/股权融资额度、价内认股权证、可转换证券临近程度、现金消耗、历史稀释、掠夺性融资)
- 小型发行人储架发行额度(S-3 General Instruction I.B.6 的流通股三分之一上限,根据实时流通股重新计算)
- 现金跑道(现金状况、月度现金消耗、自上次资产负债表以来的融资)
- 情报(交易对手、法律顾问、内部人士、机构、优先购买权触发因素、集群买入)
- 跨公司情报(管理资产规模最大的机构、跨公司的法律顾问与内部人士模式)
- 合规监控(检测 Nasdaq/NYSE 缺陷、上市分类)
- 公司筛选(考虑稀释因素的筛选条件,包含 30 多个字段)
- ETF 分析(持仓、行业、国家、表现、可比对象)
安装
npm install -g @signal8ai/mcp
# or use npx (no install needed)
npx @signal8ai/mcp
设置
1. 获取 API 密钥
API 和 MCP 访问权限包含在 Signal8 Pro 中(每月 59 美元,或每年 588 美元)。免费 Signal8 账户无法创建 API 密钥。请在 signal8.ai/pro 升级,然后在开发者门户 signal8.ai/developer/api-keys 中创建密钥。
使用 Claude.ai 或 Claude Desktop?可以完全跳过密钥设置:将托管服务添加为自定义连接器,并使用 Signal8 账户登录(参见托管端点)。
2. 配置 MCP 客户端
Claude Desktop
将以下内容添加到 Claude Desktop 配置文件:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"signal8": {
"command": "npx",
"args": ["-y", "@signal8ai/mcp"],
"env": {
"SIGNAL8_API_KEY": "sk_live_your_key_here"
}
}
}
}
Cursor
将以下内容添加到项目根目录的 .cursor/mcp.json:
{
"mcpServers": {
"signal8": {
"command": "npx",
"args": ["-y", "@signal8ai/mcp"],
"env": {
"SIGNAL8_API_KEY": "sk_live_your_key_here"
}
}
}
}
其他 MCP 客户端
设置 SIGNAL8_API_KEY 环境变量并运行:
SIGNAL8_API_KEY=sk_live_your_key_here npx @signal8ai/mcp
可用工具(107)
该服务在运行时会公开 104 个实时工具。以下参考表按领域分组,列出的是有代表性的目录,并非完整列表;“提取”部分介绍了当前已停用、未实时注册的工具。权威列表以 tools/list 返回的内容为准。
公司(3 个工具)
| 工具 | 描述 |
|---|---|
search_companies | 按公司名称或股票代码搜索公司 |
get_company_profile | 完整的公司简介(描述、市值、行业) |
get_company_bundle | 通过一次调用获取整合数据包 |
公司数据(13 个工具)
| 工具 | 描述 |
|---|---|
get_quote | 实时股票报价(价格、变动、成交量) |
get_market_metrics | 成交量均值、波动率、SMA、趋势方向 |
get_short_interest | 卖空数据及回补天数 |
get_float | 流通股构成、已发行股份、持股比例 |
get_financials | 损益表、资产负债表、现金流量表 |
get_earnings | 业绩历史及每股收益意外值 |
get_executives | 高管团队名单及薪酬 |
get_peers | 同行/可比公司 |
get_transcripts | 业绩电话会议文字稿 |
get_news | 公司最新新闻标题 |
get_analyst_consensus | 分析师评级及目标价 |
get_material_events | 重大公司事件(8-K 文件) |
get_clinical_trials | 临床试验管线(生物科技/制药) |
市场 — 跨股票代码(6 个工具)
| 工具 | 描述 |
|---|---|
get_quotes_batch | 批量获取最多 200 个股票代码的实时报价(POST) |
get_quotes_universe | 获取整个指数成分股集合的报价(sp500/ndx/dji) |
get_index_snapshot | 批量获取股票代码快照(价格、当日变动、变动百分比) |
get_sector_etf_snapshot | 获取 11 只 SPDR 行业 ETF 的快照,附带行业标签 |
get_top_movers | 按成交量列出涨幅最大、跌幅最大和交易最活跃的标的(可选 session 时段) |
get_market_breadth | 涨跌家数、收盘价高于 SMA50/200 的占比、52 周新高/新低数量 |
日历(5 个工具)
| 工具 | 描述 |
|---|---|
get_earnings_calendar | 获取两个日期之间即将发布或近期发布的财报 |
get_economic_calendar | 按日期和国家/地区列出宏观/经济事件(CPI、FOMC、就业、GDP) |
get_filing_calendar | 按成分股集合列出 10-K / 10-Q SEC 文件提交截止日期日历 |
get_lockup_expirations | 即将到期的 IPO/增发禁售期 |
get_recent_material_filings | 按指数成分股集合和项目代码列出近期重大 8-K 文件 |
SEC 文件与 EDGAR 档案(10 个工具)
由 Signal8 自有的 SEC EDGAR 文件档案提供支持 — 档案涵盖的
时间范围(参见每个响应中的 archiveFrom;目前始于 2021 年末,随着历史回填
完成,范围将扩展至 2016 年),支持全文索引,并每日持续更新。早于 archiveFrom 的文件可能缺失,因此空结果并不能证明某份文件从未提交。仅含记录的行(bodyStored: false)包含元数据,但不含正文。
| 工具 | 描述 |
|---|---|
search_sec_filings | 按 CIK、表格类型、日期、8-K 项目、排除的表格类型、全文 q(match 精确匹配/词干匹配、sort 按最新/相关性排序、facets 按表格类型/年份/8-K 项目统计数量、understand 开/关、section 搜索、exhibitTypes — 见下方查询语法)搜索文件,并支持公司筛选条件(市值、流通股数、价格、行业板块、行业、交易所、公司类型、外国发行人、近期 IPO) |
get_filing_documents | 列出文件中的每份文档(类型、大小、stored、secUrl),并提供用于读取各文档的 filingId / exhibitId |
get_filing_structured | 解析 Form 3/4/5 交易、13F 持仓(金额统一为美元)以及 XML SCHEDULE 13D/G |
get_filing_document | 按文件 ID 获取文件全文 |
get_filing_exhibits | 获取文件中可阅读的附件及其 ID |
get_exhibit_content | 获取单个附件的全文 |
search_filing_text | 在附件级别搜索全文并返回匹配段落(match 精确匹配/词干匹配、sort、section、exhibitTypes) |
lookup_accession_number | 申请编号 → 文件 ID 和元数据 |
screen_sec_filings | 按行业板块 / 行业 / 交易所 / 市值筛选跨公司的文件 |
screen_sec_filings_performance | 文件提交后 +1/+3/+7/+30 天的价格回报及汇总数据 |
全文查询语法(search_sec_filings.q、search_filing_text.pattern):
未加引号的词必须全部出现;"带引号的短语" 表示精确措辞;多个备选项之间使用 OR;
使用 -word 排除词语;使用 w1 NEAR/10 w2(或 NEAR(10),不带参数的
NEAR 表示 10)表示词语邻近;使用 word* 匹配 4 个或更多字母的前缀;$AAPL 或
大写股票代码将搜索范围限定为对应公司;表格代码(8-K)、item 5.02 /
8-K 1.05 和单独的年份分别将范围限定为对应表格 / 8-K 项目 / 年份。相关性排序的第 1 页
会显示每家公司的一些文件;meta.diversity 会列出结果较多的公司。档案对查询的解读方式会在
meta.understanding 中返回(传入 understand: false 可按字面搜索
这些词语)。facets: true 会添加整个结果集按表格类型 / 年份 / 8-K 项目统计的数量 — 未进行统计时不显示,绝不会显示为零。
章节搜索 + 展品类型(两种搜索工具):section 将匹配范围限制为
business、risk_factors、cybersecurity、legal_proceedings、
mdna、market_risk、controls、ex99(新闻稿)或 8-K 项目
(item_5_02);exhibitTypes 保留包含 EX-10(重大合同)或 EX-99.1 等展品的申报文件。只有在 meta.sections 明确指出时,才会应用章节筛选;否则,meta.unsupported 会说明已搜索整个申报文件。
行中可能包含 matchedSections(缺失表示未测量)。
search_sec_filings 的公司筛选条件遵循 signal8.ai/sec-filings 页面的相同规则:仅从存档中应用,针对申报者自身的 CIK,且只筛选由发行人提交的表单(Form 4、144 和 SCHEDULE 13D/G 会被剔除,并在 companyFilter.droppedForms 中报告)。筛选条件没有测量值的公司会被排除,并计入 companyFilter.unknown。未知值会返回 400 错误,并列出有效名称。如果存档无法提供答案,调用会失败并返回 COMPANY_FILTER_NOT_APPLIED 及原因,而不是返回未筛选的行。
13F 数值: SEC 将 13F <value> 的单位从千美元改为美元整额,适用于 2023-01-03 当日及之后的申报文件。
get_filing_structured 会返回以美元为单位归一化后的 valueUsd / totalMarketValueUsd(无法确定单位时为 null),并同时提供原始的
valueThousands;valueUnit 会说明原始数值的单位。
提取数据(4 个工具)
| 工具 | 描述 |
|---|---|
get_extractions | AI 提取的 SEC 申报文件数据(13 种类型) |
get_filing_extractions | 特定 SEC 申报文件的提取数据 |
get_extraction_dashboard | 跨公司的提取数据分析 |
get_extraction_by_type | 按类型筛选提取数据(认股权证、可转换证券等) |
稀释(7 个工具)
直接从 SEC 申报文件中读取的小盘股稀释分析。每个数值都附带 accession number、申报日期及其来源的引文句子。包含在 Signal8 Pro 中。请先调用 get_dilution_coverage:这是了解是否有数据可获取的最省成本方式。
| 工具 | 描述 |
|---|---|
get_dilution_coverage | 某个股票代码是否有稀释分析、数据的新鲜度,以及没有分析时的原因 |
get_dilution_risk | 稀释压力评分及其七项组成部分的明细和风险级别。部分评分以 scoreMaxMeasured 为上限(切勿重新换算为 /100);overheadSupply 是除 shelf 外的总潜在稀释(按当前价格计算的认股权证/可转换证券总额 + ATM/股权信用额度/S-1,见 details.overheadSupplyBasis);当 levelsAreLowerBound 为 true 时,levelsLowerBoundScope 中列出的级别为下限(“至少”);details.levelBounds 提供每个级别的下限、上限和最佳估算值(下限与上限一致的级别为精确值) |
get_dilution_snapshot | 潜在新增股份及其占流通股的比例、现金状况和资金可维持时间、流通股 |
get_dilution_instruments | 某类工具的行数据,并附带各字段的 SEC 引用(认股权证、可转换证券、优先股、货架注册、ATM、ELOC、S-1 发行、股权计划、可交换证券、近期发行) |
get_baby_shelf_capacity | S-3 I.B.6 baby shelf:发行人目前可通过其货架注册融资的金额 |
get_dilution_performance | 每次过往发行定价或完成后,股票的交易表现 |
get_dilution_history | 叠加发行信息的流通股数和现金序列 |
未测量不等于零。 null、被隐去或不可用的数值表示 Signal8 未测量该项。它绝不表示公司没有认股权证、没有 shelf 或没有稀释;工具描述会向模型说明这一点。
使用 explain_dilution 提示词,以通俗易懂的语言梳理某个股票代码的稀释情况。
智能分析 — 单家公司(12 个工具)
| 工具 | 描述 |
|---|---|
get_counterparties | 已解析实体的交易对手关系 |
get_counsel | 按角色分类的法律顾问聘用情况 |
get_insiders | 内部人交易发现与模式 |
get_ownership | 统一所有权数据(Form 4 + 13F + 13D/G) |
get_rofr_triggers | ROFR 行使触发条件检测 |
get_institutions | 来自 13F 申报文件的机构持有人 |
get_institution_detail | 特定机构的详细信息(按 CIK 查询) |
get_institution_holdings | 机构的完整投资组合持仓 |
get_banks | SEC 申报文件中的投资银行关系 |
get_legal_counsels | 含合伙人姓名的法律顾问关系 |
get_insider_transactions | 详细的 Form 4 交易历史 |
get_insider_cluster_buys | 集中买入模式检测(14 天内有 3 位或以上内部人) |
智能分析 — 跨公司(3 个工具)
| 工具 | 描述 |
|---|---|
get_institution_top_aum | 跨所有公司的顶级机构持有人(按 AUM 排序) |
get_counsel_cross_company | 多家公司聘用律师事务所的情况 |
get_insider_cross_company | 多家公司内部人交易模式 |
合规(4 个工具)
| 工具 | 描述 |
|---|---|
get_compliance | 完整的合规评估 |
get_deficiencies | 上市缺陷检测 |
get_compliance_alerts | 活跃的合规警报 |
get_listing_classification | 交易所上市分类 |
筛选器(2 个工具)
| 工具 | 描述 |
|---|---|
get_screener_fields | 查看可用的筛选条件 |
screen_companies | 考虑稀释影响的公司筛选器 |
事件与 ATM(2 个工具)
| 工具 | 描述 |
|---|---|
get_events | 统一的公司事件 |
get_atm_activity | ATM 计划监控 |
ETF(1 个工具)
| 工具 | 描述 |
|---|---|
get_etf_bundle | 汇总的 ETF 数据(简介、持仓、行业、表现) |
市场智能 — 工具参考
适用于整个市场范围,而非单家公司的跨代码市场与日历工具。此处为完整起见,列出了单代码的 get_quote 工具;其余工具是在市场智能推出时新增的。
get_quote
获取单个代码的实时报价(价格、涨跌、成交量、日内区间)。
输入:
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
| ticker | string | 是 | 代码符号(例如 AAPL) |
示例输出(正常交易时段,东部时间上午 9:30–下午 4:00):
{
"data": {
"ticker": "AAPL",
"currentPrice": 178.42,
"change": 2.15,
"changePercent": 1.22,
"high": 179.10,
"low": 176.80,
"open": 177.05,
"previousClose": 176.27,
"preMarketPrice": null,
"preMarketChangePercent": null,
"afterHoursPrice": null,
"afterHoursChangePercent": null,
"timestamp": 1714492800
}
}
示例输出(延长交易时段——盘前或盘后):
{
"data": {
"ticker": "AAPL",
"currentPrice": 178.42,
"change": 2.15,
"changePercent": 1.22,
"high": 179.10,
"low": 176.80,
"open": 177.05,
"previousClose": 176.27,
"preMarketPrice": 179.05,
"preMarketChangePercent": 0.35,
"afterHoursPrice": 178.90,
"afterHoursChangePercent": 0.27,
"timestamp": 1714492800
}
}
**延长交易时段(美国股票,东部时间):**盘前为上午 4:00–9:30,盘后为下午 4:00–8:00。在这些时段之外,
preMarketPrice、preMarketChangePercent、afterHoursPrice和afterHoursChangePercent的值均为null。实际使用中,根据当前时段,一次只会填充其中一组;第二个示例为演示目的展示了两组均已填充的情况。
使用场景:“AAPL 现在的交易价格是多少?”
get_quotes_batch
一次调用即可获取最多 200 个代码的实时报价。由 POST /api/v1/public/market/quotes 提供支持。上游数据源中不存在的代码会映射为 null。
输入:
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
| tickers | string[] | 是 | 1–200 个代码符号 |
示例输出:
{
"data": {
"count": 3,
"quotes": {
"AAPL": { "ticker": "AAPL", "currentPrice": 178.42, "changePercent": 1.22 },
"MSFT": { "ticker": "MSFT", "currentPrice": 412.10, "changePercent": 0.41 },
"NVDA": null
}
}
}
使用场景:“一次调用获取我整个 50 个代码的自选列表的实时报价。”
get_quotes_universe
获取已知指数范围内所有成分股的报价(S&P 500、Nasdaq 100 或 Dow 30)。
输入:
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
| universe | enum | 是 | 可选 sp500、ndx 或 dji |
示例输出:
{
"data": {
"universe": "dji",
"count": 30,
"quotes": {
"AAPL": { "currentPrice": 178.42, "changePercent": 1.22 },
"MSFT": { "currentPrice": 412.10, "changePercent": 0.41 }
}
}
}
使用场景:“给我一份 Dow 30 所有成分股的实时快照。”
get_index_snapshot
获取明确指定的股票代码列表(最多 50 个)或省略列表时获取全部已跟踪标的的每日批量快照(OHLC、成交量、涨跌幅)。
输入: 无需输入(通过 REST 调用时可选的 tickers 查询参数)
输出示例:
{
"data": {
"count": 2,
"snapshots": [
{ "ticker": "SPY", "close": 512.34, "changePercent": 0.42, "volume": 78321000 },
{ "ticker": "QQQ", "close": 438.21, "changePercent": 0.55, "volume": 41902000 }
]
}
}
使用场景:“给我一份指数 ETF 收盘情况的即时快照。”
get_sector_etf_snapshot
获取 11 只 SPDR 行业 ETF(XLK、XLF、XLV、XLY、XLP、XLE、XLI、XLB、XLRE、XLU、XLC)的快照,每行都带有 sector 标签。适用于行业轮动分析。
输入: 无
输出示例:
{
"data": {
"count": 11,
"sectors": [
{ "ticker": "XLK", "sector": "Technology", "close": 218.40, "changePercent": 0.85 },
{ "ticker": "XLF", "sector": "Financials", "close": 41.23, "changePercent": -0.12 }
]
}
}
使用场景:“今天哪些行业领涨,哪些行业落后?”
get_top_movers
按方向(涨幅最大、跌幅最大或成交量最高)列出市场中表现最突出的标的,根据 ticker_snapshots 计算。排除认股权证、单位、ETF 和基金。
输入:
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
| direction | 枚举 | 是 | gainers、losers 或 active |
| limit | 整数 | 否 | 1–100(省略时使用后端默认值) |
| session | 枚举 | 否 | premarket(美东时间凌晨 4:00–上午 9:30)、regular(默认;收盘到收盘)或 afterhours(美东时间下午 4:00–晚上 8:00)。在 RTH 以外发布时使用 premarket/afterhours,以反映当前时段的排名。 |
输出示例:
{
"data": {
"direction": "gainers",
"session": "regular",
"count": 2,
"movers": [
{ "rank": 1, "ticker": "XYZ", "name": "Acme Corp", "price": 12.34, "changePercent": 42.1, "volume": 12000000, "marketCap": 350000000, "isETF": false },
{ "rank": 2, "ticker": "ABC", "name": "ABC Inc", "price": 5.62, "changePercent": 31.8, "volume": 8400000, "marketCap": 120000000, "isETF": false }
]
}
}
使用场景:“今天涨幅最大的 10 只股票是什么?”
get_market_breadth
获取指定市场范围的市场广度汇总数据(上涨/下跌数量及比率、股价高于 50DMA / 200DMA 的成分股百分比,以及创 52 周新高/新低的数量)。仅提供当前时点数据,不提供历史市场广度数据。
输入:
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
| universe | 枚举 | 否 | sp500(默认)、ndx 或 all |
输出示例:
{
"data": {
"universe": "sp500",
"asOf": "2026-04-30T20:00:00.000Z",
"advancers": 312,
"decliners": 175,
"unchanged": 16,
"advanceDeclineRatio": 1.7828571428571428,
"pctAbove50DMA": 0.642,
"pctAbove200DMA": 0.561,
"new52wHighs": 18,
"new52wLows": 4
}
}
使用场景:“目前有多少只标普 500 成分股的股价高于 200DMA?”或“给今天的评论推文加上一行市场状态标题。”
get_earnings_calendar
获取两个日期之间即将发布及近期发布的财报。可按股票代码列表筛选。
输入:
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
| from | 字符串 (YYYY-MM-DD) | 是 | 时间范围起始日期 |
| to | 字符串 (YYYY-MM-DD) | 是 | 时间范围结束日期 |
| tickers | 字符串[] | 否 | 可选的股票代码筛选条件 |
输出示例:
{
"data": {
"events": [
{ "ticker": "AAPL", "date": "2026-05-02", "time": "AMC", "epsEstimate": 1.50, "revenueEstimate": 90100000000 }
],
"total": 1,
"limit": 50,
"offset": 0
}
}
使用场景:“哪些超大市值公司下周发布财报?”
get_economic_calendar
获取两个日期之间的宏观经济事件(CPI、FOMC、NFP、GDP 等),并按国家和影响级别筛选。
输入:
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
| from | 字符串 (YYYY-MM-DD) | 是 | 时间范围起始日期 |
| to | 字符串 (YYYY-MM-DD) | 是 | 时间范围结束日期 |
| country | 字符串 (ISO-2) | 否 | 默认为 US |
输出示例:
{
"data": {
"events": [
{ "date": "2026-05-07", "country": "US", "event": "FOMC Rate Decision", "impact": "High", "actual": null, "forecast": "5.25%", "previous": "5.25%" }
],
"total": 1
}
}
使用场景:“本周有哪些影响重大的美国事件?”
get_filing_calendar
按指数范围列出即将到来的 10-K / 10-Q SEC 文件提交截止日期。根据各公司的最近报告期末日期及申报人状态对应的期限偏移量计算截止日期。
输入:
| 名称 | 类型 | 必填 | 描述 |
|---|---|---|---|
| from | 字符串 (YYYY-MM-DD) | 否 | 默认今天 |
| to | 字符串 (YYYY-MM-DD) | 否 | 默认今天 + 45d |
| universe | 枚举 | 否 | sp500、ndx、dji 或 all(默认) |
| formTypes | 字符串[] | 否 | ["10-K", "10-Q"] 的子集 |
输出示例:
{
"data": {
"rows": [
{
"ticker": "AAPL", "companyName": "Apple Inc.",
"formType": "10-Q", "periodEnd": "2026-03-29",
"deadline": "2026-05-13", "daysUntilDeadline": 13,
"filerStatus": "large_accelerated"
}
],
"count": 1,
"window": { "from": "2026-04-30", "to": "2026-06-14" },
"universe": "sp500",
"formTypes": ["10-K", "10-Q"]
}
}
使用场景:“未来两周内,哪些标普 500 成分股有 10-Q 截止日期?”
get_lockup_expirations
指定日期范围内即将到来的 IPO/二次发行锁定期到期情况。数据源自承销条款提取结果(S-1 / F-1 / 424B*)——覆盖范围有限;请查看 meta.coveragePercent。
输入:
| 名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| from | string (YYYY-MM-DD) | 否 | 默认为今天 |
| to | string (YYYY-MM-DD) | 否 | 默认为今天 + 90d |
| universe | enum | 否 | sp500、ndx、dji 或 all(默认值) |
输出示例:
{
"data": {
"rows": [
{
"ticker": "NEWCO", "companyName": "NewCo Inc.",
"lockupEndDate": "2026-05-21", "daysUntilExpiry": 21,
"originalFilingType": "S-1", "sharesUnlocking": 24500000,
"sourceFilingUrl": "https://sec.gov/..."
}
],
"meta": {
"coveragePercent": 38.4,
"totalCandidates": 412,
"parsedCount": 158,
"windowStart": "2026-04-30",
"windowEnd": "2026-07-29",
"universe": "all"
}
}
}
使用场景:“未来 30 天内有即将到期的 IPO 锁定期吗?”
get_recent_material_filings
指定指数范围内近期被标记为具有重大意义的 8-K 文件,可按项目代码筛选(例如,1.01 重大协议、5.02 管理层变动)。回溯期固定为 7 天。
输入:
| 名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
| universe | enum | 是 | sp500、ndx 或 dji |
| items | string[] | 否 | 8-K 项目代码(例如,["1.01", "2.01"]) |
| limit | integer | 否 | 1–200(默认值为 50) |
输出示例:
{
"data": {
"universe": "sp500",
"items": ["1.01", "5.02"],
"count": 1,
"filings": [
{
"ticker": "AAPL", "companyName": "Apple Inc.",
"filingDate": "2026-04-29T20:15:00Z", "formType": "8-K",
"items": ["1.01"], "filingUrl": "https://sec.gov/...",
"summary": "Material definitive agreement entered into..."
}
]
}
}
使用场景:“本周有 S&P 500 公司提交管理层变动相关的 8-K 文件吗?”
资源
| 资源 | URI | 说明 |
|---|---|---|
| 公司档案 | signal8://companies/{ticker}/profile | 按股票代码查询的增强版公司档案 |
| 提取类型 | signal8://extraction-types | 全部 13 种 SEC 文件提取类型的列表 |
提示词(4 个)
| 提示词 | 参数 | 说明 |
|---|---|---|
company_due_diligence | ticker (string) | 10 步全面尽职调查研究 |
screening_workflow | sector?、marketCapMax? (string) | 5 步发现、筛选和分析工作流 |
institutional_analysis | ticker (string) | 6 步机构持股与聪明资金分析 |
explain_dilution | ticker (string) | 以通俗易懂的语言说明稀释覆盖情况、评分、快照和工具,并引用 Signal8 Academy |
托管端点
对于基于 Web 的 MCP 客户端,请使用托管的 Streamable HTTP 端点:
POST https://mcp.signal8.ai/mcp
Authorization: Bearer sk_live_your_key_here
Content-Type: application/json
支持自定义 bearer-token 标头的客户端(例如,Claude Code CLI 的
--transport http 连接器、Cursor 和 VS Code 的 MCP 支持)可以按上述方式发送你的
API 密钥。
支持 MCP OAuth 的客户端无需密钥。在 Claude.ai 或 Claude
Desktop 中,打开设置 → 连接器 → 添加自定义连接器,粘贴
https://mcp.signal8.ai/mcp,然后 Claude 会打开 Signal8 登录页面以授权
连接。服务会通过
https://mcp.signal8.ai/.well-known/oauth-protected-resource 公布其授权服务器
(OAuth 2.1,采用
PKCE 和动态客户端注册,由 https://api.signal8.ai 签发)。
OAuth 连接与 API 密钥一样,需满足 Signal8 Pro 要求并受速率
限制。
环境变量
| 变量 | 必填 | 说明 |
|---|---|---|
SIGNAL8_API_KEY | 是 | 你的 Signal8 API 密钥(以 sk_live_ 或 sk_test_ 开头) |
SIGNAL8_API_URL | 否 | API 基础 URL(默认值:https://api.signal8.ai/api/v1/public) |
定价
MCP 服务及其调用的 REST API 均包含在 Signal8 Pro (每月 $59,或每年 $588)订阅中,额度为每分钟 120 次请求和每天 10,000 次请求,最多可创建 3 个 API 密钥。没有按调用次数计费的额度或按请求收费:服务向 Signal8 API 发出的每个请求都会计入这些限额。Signal8 免费账户不包含 API 或 MCP 访问权限。详见 signal8.ai/developer。
编程用法
import { createMcpServer, Signal8ApiClient } from '@signal8ai/mcp';
const client = new Signal8ApiClient({
baseUrl: 'https://api.signal8.ai/api/v1/public',
apiKey: 'sk_live_xxx',
});
const server = createMcpServer(client);
// Connect to any MCP transport...
许可证
MIT ——详见 LICENSE 文件。版权所有 (c) 2025-2026 Signal8 AI, Inc.
托管的 Signal8 API 和数据的使用还受 Signal8 服务条款约束。
Signal8 Academy(免费,无需 API 密钥)
免费的 Signal8 Academy(涵盖稀释、SEC 文件、市场结构和 Signal8 使用方法的通俗指南,以及术语表)可供 MCP 客户端使用,无需 Signal8 Pro API 密钥:即使未设置 SIGNAL8_API_KEY,本地 stdio 服务也会响应这些请求。(托管端点仍要求每次工具调用都先登录,与其他工具相同。)
| 类型 | 名称 | 返回内容 |
|---|---|---|
| 工具 | search_learn_guides | 与关键词查询匹配的指南(可选指定一个主题):标题、描述、URL |
| 工具 | get_learn_guide | 一篇指南(track + slug),以 Markdown 格式呈现,并附相关指南和术语表词条 |
| 工具 | define_term | 按 slug、术语或别名查询术语表词条:简短和详细定义 |
| 资源 | signal8://learn | 所有主题、指南和术语表词条的索引 |
| 资源 | signal8://learn/guides/{track}/{slug} | 一篇 Markdown 格式的指南 |
| 资源 | signal8://learn/glossary/{slug} | 一篇 Markdown 格式的术语表词条 |
| 提示词 | explain_dilution | 读取一家公司的稀释数据(Pro 工具),并结合 Academy 指南解释各项数据 |
主题:dilution、filings、market-structure、signal8。内容通过
GET /api/v1/public/learn/* 获取,因此指南更新后无需发布新版本即可显示。Markdown 中的链接指向 signal8.ai。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。