mcpField
T
ticker-scout

ticker-scout

远程服务
tickerscout.ai金融数据01 天前更新

关于 ticker-scout

ticker-scout 是面向 Agent 的 SEC 财务数据 MCP 服务,为公开公司整理财务报表,并提供 SEC 文件的文本内容与摘要。数据无需 API 密钥或注册即可访问。

主要功能

  1. 01提供三类已整理的财务报表
  2. 02查询标准或公司自有的项目名称
  3. 03按财政年度和季度检索数据
  4. 04阅读申报文件的章节与主题
  5. 05比较公司并查询事件记录
  6. 06数值附带 SEC 文件引用

适用场景

  1. 01查询公司的季度或年度财务表现
  2. 02比较多家公司的收入或其他指标
  3. 03检索申报文件中的风险和战略
  4. 04追溯财务数字对应的 SEC 文件

MCP 相关

通过远程 MCP 服务向客户端提供 SEC 财务报表、申报文件内容及重大事件历史,包含 20 种工具。无需 API 密钥或注册。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://mcp.tickerscout.ai/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

20
参数类型必填说明
querystring否可选筛选条件,与股票代码和公司名称进行不区分大小写的匹配。

详细介绍

Ticker Scout MCP 服务

基于模型上下文协议,为 Agent 提供原生数据层,涵盖 SEC 文件。上市公司的完整财务报表,以及已阅读并综合整理的文件。SEC 会以数据形式发布数字,但不会将其整理成报表。本服务已将这些数字整理完毕,并通过 20 个工具提供:任何财年的任何报表、任何季度的任何报表、按标准名称或公司自定义名称查询的任何行项目、所有已涵盖的财年和季度、所有引用的 accession number,以及按章节、主题或关键字检索的 10-K、10-Q 和 8-K 叙述内容。无需 API 密钥、无需注册、无需付费墙。

https://mcp.tickerscout.ai/mcp

它提供 tickerscout.ai (https://tickerscout.ai) 发布的数据:财务报表、已阅读并综合整理的年度和季度报告,以及 S&P 500 公司和向 SEC 提交文件的主要外国发行人的重大事件历史,所有内容均源自这些公司自己的文件。

已为你完成的工作

本服务与 EDGAR API 的区别在于数据是否经过整理,而非数据是否可用。SEC 提供事实数据,本服务提供报表。

  • 三大报表以报表形式呈现。 损益表、资产负债表和现金流量表均按报告中的顺序列出行项目,而不是一堆需要你自行挑选概念并分组的标签化事实。
  • 跨文件整理,因为单个文件无法涵盖完整记录。 年度数据来自年度报告,季度和年初至今数据来自季度报告;如果季度报告仅按年初至今口径列示现金流,则离散季度数据取自作为当前报告附件提交的业绩公告。对于美国申报公司,这意味着 10-K、10-Q 和 8-K;对于外国发行人,则意味着 20-F 或 40-F,以及 6-K。
  • 遵循公司的财年日历。 包括 52 周和 53 周财年、长度为 13 周而非自然季度的季度,以及不在 12 月结束的财年。期间日期取自文件中印制的列标题。
  • 使用实际美元和实际股数。 绝不使用千或百万为单位的数据,也无需推断倍率。股数已按拆股调整。外国发行人的数据会按各期间记录的汇率换算为美元;如果公司设有 ADR 计划,每股数据则按 ADS 计。
  • 根据业务类型调整结构。 银行、保险公司、资产管理公司和零售商的报表各不相同,因此不会使用相同的章节结构。查询公司实际披露的内容,而不是假设所有公司都有固定结构。
  • 明确指出缺失项。 如果文件未披露某个数据,该数据会被省略并说明原因,绝不会静默地设为零。每个数据都会注明对应的 SEC accession number。
  • 数据链接至文件中列示该数据的具体位置。 只要文件为某个数据添加了标签,响应就会附带 sec.gov 链接,打开后可直接定位到该数字。

连接

Claude Code

claude mcp add --transport http ticker-scout https://mcp.tickerscout.ai/mcp

Claude 网页版或桌面版

依次选择 Settings、Connectors、Add custom connector,然后粘贴 URL。

Cursor,以及任何支持 mcpServers 配置的客户端

{
  "mcpServers": {
    "ticker-scout": {
      "url": "https://mcp.tickerscout.ai/mcp"
    }
  }
}

仅支持 stdio 的客户端

{
  "mcpServers": {
    "ticker-scout": {
      "command": "npx",
      "args": ["mcp-remote", "https://mcp.tickerscout.ai/mcp"]
    }
  }
}

从这里开始

前六个主要工具一次调用即可回答大多数问题;另外十四个工具各自回答一类问题,通过参数实现,而不是扩展出一堆近似工具。

问题调用
是否涵盖某家公司?其股票代码是什么?list_companies(query)
上个季度的表现如何?get_key_figures(ticker)
任意一项或同时查询多项get_figure(ticker, "revenue")、get_figure(ticker, ["revenue", "net income", "eps"])
某项数据的完整历史get_figure(ticker, "free cash flow", period: "all")
某一财年、季度、TTM 或 YTD 的报表get_statements(ticker, statement: "income_statement", period: "FY2025")
数据最早可追溯到什么时候?list_periods(ticker)
分部、产品、地理区域get_segments(ticker, breakdown?)
KPI、非 GAAP、银行或保险指标get_company_metrics(ticker, kind?)
利润率get_margins_and_ratios(ticker)
某家公司特有的指标list_company_figures(ticker, query: "data center"),然后调用 get_figure
比较公司compare_companies(["NVDA","AMD","AVGO"], "revenue")
风险、战略、管理层讨论get_narrative(ticker, section: "risk factors")(或 business、md&a、current quarter、legal、subsequent events)
公司宣布了什么?get_events(ticker),或指定 section: "earnings"、"m&a"、"management changes"、……
在申报文件的任意位置查找某个主题search_text(ticker, query)
某个数字来自哪份申报文件?get_figure(每个已标记的值都带有 sec_link)、get_filings(ticker, accession?)
货币、ADR 比率、拆股、财年日历get_reporting_conventions(ticker)
不确定?guide()

股票代码不区分大小写,BRK.B 和 BRK-B 都能解析。

数据的组织方式

记录与期间

记录是公司提交一份 10-Q 或 10-K 时生成的完整快照,并按财务期间标记:FY27Q2 是根据 NVIDIA 的 2027 财年第二季度 10-Q 建立的记录;FY26 则是根据一份 10-K 建立的记录。每条记录包含多个期间:最多三个财年、最近一个季度及其上年同期、年初至今和过去十二个月。较早的记录保存更早的季度,因此公司的历史数据是其所有记录的并集,每条记录都会通过永久的带日期 URL 持续发布。

接收 period 的工具会自动搜索所有记录。接收 record 的工具读取一条快照,默认读取最新快照。

period 参数
传入值返回结果
不传最新记录中的所有期间
FY2025、FY25、fiscal 2025、2025该财年(按公司自身的财年,而非日历年)
Q2 FY2027、Q2 2027、FY27Q2、2027Q2、2Q27、second quarter 2027该季度
Q2当前保存的最新第二季度
latest、latest quarter、latest annual对应类型中最近的期间
ttm、ytd、prior ytd过去十二个月、年初至今、上一年的年初至今
annual、quarterly、all每个财年、每个季度,或每条记录中的所有期间
2026-07-26截止日期为该日期的期间

早于现有数据范围的期间不会报错。答复会说明数据无法追溯到那么早,并准确列出已有数据。对于尚未报告的期间,答复会说明这一点,并给出预计提交下一份申报文件的时间。

记录中的名称

记录会根据各家企业的情况进行调整,因此同一项数据会有不同名称:Apple 的收入是 total_net_sales,JPMorgan 的是 total_net_revenue,Walmart 的净利润是 net_income_attributable_to_walmart。我们不会为了掩盖这种差异而重新命名。

  • 图表工具返回的每个值都会以 name_in_record(记录自身使用的名称)、field(该字段在期间内的路径)和 json_path(该字段在 financials.json 中的确切地址,例如 annual[0].income_statement.total_net_sales)开头。
  • 这些名称都可以按原样传给 get_figure,并准确返回对应字段。大小写、空格和下划线均不影响匹配:Data Center 和 revenue_by_market_platform.Data Center 都可以使用。
  • 使用通用词语(revenue、net income、free cash flow)请求标准数据项时,会按下文所述的标准方式解析;每个值仍使用记录自身的名称。如果记录中还有其他同名字段(例如 NVIDIA 的各个分部表中都有一个 revenue),这些字段会列在 other_fields_with_this_name 下,并可通过路径调用。
  • list_company_figures 会将每个标准数据项映射到该公司使用的名称,然后按各自名称列出其余所有数据项。传入 query 可搜索这些名称。
标准数据项

get_figure 和 compare_companies 知道各家公司对每项数据的命名方式,并会按确定的规则解析:首先使用公司自身标题所采用的字段名称,其次依次尝试已知名称列表,最后仅在恰好有一个字段匹配时使用名称模式。不会通过估算、推导或求和来填补缺失值。同一报表中的相似字段会显示在 related 下;如果公司没有使用这些名称中的任何一个,则会直接显示“未报告”,并列出该公司实际拥有的最接近字段。

项目可用以下名称查询例如可从以下项目读取
营收revenue, salesrevenue, revenues, total_revenues, total_revenue, +19 more
营收成本cost of revenue, cogscost_of_revenue, cost_of_sales, total_cost_of_revenue, cost_of_goods_sold, +10 more
毛利润、毛利率 %gross profit, gross margingross_profit, gross_margin, gross_margin_pct, +3 more
研发r&dresearch_and_development, research_and_development_expenses, +7 more
销售、一般及行政费用sgaselling_general_and_administrative, sales_general_and_administrative, +7 more
营业费用总额operating expenses, opextotal_operating_expenses, total_costs_and_expenses, total_noninterest_expense, +11 more
营业收入operating income, ebitoperating_income, income_from_operations, operating_profit, +4 more
利息支出interest expenseinterest_expense, total_interest_expense, interest_expense_net, interest_and_debt_expense
税前收入pretax incomeincome_before_income_taxes, earnings_before_income_taxes, +23 more
所得税、有效税率income tax, effective tax rateprovision_for_income_taxes, income_tax_expense, effective_tax_rate_pct, +17 more
净收入net income, earningsnet_income, net_earnings, net_income_attributable_to_<company>, +8 more
摊薄及基本每股收益eps, basic epsdiluted_eps, eps_diluted, basic_eps, +11 more
摊薄、基本及流通股数diluted shares, basic shares, shares outstandingdiluted_shares, basic_shares, shares_outstanding, +27 more
折旧与摊销d&adepreciation_and_amortization, depreciation_depletion_and_amortization, +7 more
股份薪酬sbcstock_based_compensation, share_based_compensation, +4 more
净利息收入、非利息收入(银行)net interest income, noninterest incomenet_interest_income, total_noninterest_income, +7 more
信用损失准备金(银行)provision for credit lossesprovision_for_credit_losses, provision_for_loan_losses, +4 more
现金及现金等价物cashcash_and_cash_equivalents, cash_and_equivalents, cash_and_due_from_banks, +5 more
资产总额total assetstotal_assets, assets.total_assets
负债总额total liabilitiestotal_liabilities, liabilities.total_liabilities
债务总额、长期债务及短期债务debt, long-term debt, short-term debttotal_debt, long_term_debt, short_term_debt, current_portion_of_long_term_debt, +32 more
股东权益equity, book valuetotal_stockholders_equity, total_shareholders_equity, total_<company>_shareholders_equity, total_equity, +7 more
流动资产及负债、营运资本current assets, current liabilities(营运资本:get_margins_and_ratios)total_current_assets, total_current_liabilities
商誉及无形资产goodwill, intangiblesgoodwill, intangible_assets_net, other_intangible_assets_net, +11 more
存货inventoryinventories, inventory, merchandise_inventories, +4 more
应收账款receivablesaccounts_receivable_net, receivables_net, trade_receivables_net, +7 more
应付账款payablesaccounts_payable, trade_accounts_payable, trade_payables, +3 more
不动产、厂房及设备pp&eproperty_plant_and_equipment_net, property_and_equipment_net, +7 more
留存收益retained earningsretained_earnings, accumulated_deficit, +3 more
经营现金流operating cash flow, cfooperating_cash_flow, net_cash_provided_by_operating_activities, +10 more
资本支出capexcapex, capital_expenditures, purchases_of_property_and_equipment, +10 more
自由现金流free cash flow, fcffree_cash_flow, free_cash_flow_for_the_quarter, +2 more
投资及融资现金流investing cash flow, financing cash flowinvesting_cash_flow, financing_cash_flow, net_cash_used_in_investing_activities, +21 more
已付股息、每股股息dividends, dividends per sharedividends_paid, cash_dividends_paid, dividends_per_share, dividends_declared_per_share, +14 more
股票回购buybacksshare_repurchases, repurchases_of_common_stock, purchases_of_treasury_stock, +11 more
收购(扣除收购所得现金)acquisitionsacquisitions_net_of_cash_acquired, +7 more
guide() 会返回完整目录,列出每个数字所对应的所有问题。
单位和来源

所有金额均以美元实际数值表示(非千或百万),每股数据以美元/股表示,股数为实际股数,并已按拆股调整。每个数字的响应都会附带该记录自己的单位说明,因此数值不会与其数量级分离。

每个数值都会附上其来源文件的 SEC accession number;如果文件为该数字添加了标签,还会附上可打开文件并定位到该数字所在行的 sec_link。没有链接的数值是在记录中计算得出的(利润率、自由现金流、过去 12 个月数据、通过相减得出的季度数据),或来自 SEC 不会添加标签的财报新闻稿。本服务计算的利润率和比率(get_margins_and_ratios)会标记为 calculated,并显示其公式和使用的确切字段。

全部 20 个工具

所有工具均为只读。股票代码不区分大小写。period 参数采用上述语法,并会搜索每条记录;record 参数则读取较早的快照。

主要六个工具
工具参数返回内容
list_companiesquery?返回所有覆盖的公司及其最新财务期间、持有的每条记录、预计下次提交文件的时间,以及覆盖范围摘要。可将公司名称解析为股票代码。
get_companyticker、record?身份信息和覆盖清单:名称、CIK、交易所、注册州、SIC 行业、构建该记录所依据的文件及其 accession number 和 EDGAR 链接、所有已发布记录、预计下次提交文件的时间,以及所有工具的映射。
get_key_figuresticker、record?最新期间的核心数字,每项均附同比变化、确切金额、记录字段和来源 accession number,以及文字摘要和问答。
get_financialsticker、sections?、record?完整财务记录,可按顶级章节筛选。仅在请求时提供 figure_sources(每个带标签数字对应的 sec.gov 链接)。
get_narrativeticker、section?、record?10-K 和 10-Q 综合内容。默认返回章节和子章节索引;也可按标题、主题(business、risk factors、md&a、current quarter、subsequent events、legal)或 all 获取任意章节或子章节。
get_eventsticker、section?、index?、record?大约涵盖过去五个季度的 8-K 摘要:可获取完整内容、单个章节或主题(earnings、management changes、capital returns、debt and financing、m&a、governance、restructuring、legal),或按日期排列的单行索引。
报表和期间
工具参数返回内容
list_periodsticker返回所有记录中涵盖的每个财年和季度,包括日期、时长、来源表格和 accession number、财年结束日期及 52/53 周识别结果,以及每条记录的永久 URL。
get_statementsticker、statement?、period?、include_sources?返回任意期间的损益表、资产负债表或现金流量表(也可返回所有持有的报表),包括 ttm 和 ytd,并搜索较早的记录;超出范围时会明确说明“没有那么早的数据”或“尚未报告”。
get_segmentsticker、breakdown?、period?按公司报告口径返回分部业绩、按产品、服务或终端市场划分的收入,以及按地理区域划分的收入。
get_company_metricsticker、kind?、period?按公司自身定义返回运营 KPI、非 GAAP 指标、银行指标(CET1、净息差、效率比率)和保险指标(保费、综合比率、浮存金)。
get_margins_and_ratiosticker、period?返回记录中存储的所有利润率和比率,以及毛利率、营业利润率、净利率和 FCF 利润率、营运资本和流动比率;计算所得指标均会标记并附上公式。
图表
工具参数返回内容
get_figureticker、figure(一个或最多十个)、period?按标准名称、记录名称、路径或词语查询任意图表;可查询每个期间、一个期间或完整历史记录(period: "all")。每个值均附有其记录名称、JSON 路径、日期、accession 和 sec.gov 链接。
list_company_figuresticker、query?、block?、period?列出每项标准图表在该公司的对应名称及其值,然后列出其余图表及其各自名称和值;也可通过 query 查询名称中包含指定词语的字段。
compare_companiestickers、figure、period?查询两到十家公司的同一项标准图表,每行都包含对应的期间、日期和记录名称。
搜索、申报文件与约定
工具参数返回内容
search_textticker、query、documents?、limit?、record?返回叙述内容、事件和记录说明中包含所有指定词语的完整段落与列表项,以及最常提及这些词语的章节。用引号括起短语可进行精确匹配。
get_filingsticker、accession?、record?返回财务报表、叙述内容和事件中引用的所有 accession,包括表格类型、申报日期、EDGAR 链接和每处引用;也可完整返回一份申报文件及所有引用它的段落。
get_reporting_conventionsticker、record?返回计量单位、报告货币、外国发行人各期间的汇率、ADR 比例、已调整的拆股、财年结束日期、会计基础,以及记录本身的定义。
get_data_notesticker、record?返回记录的来源说明、不确定性,以及最新期间缺少哪些标准图表。
list_upcoming_filingsdays?、form?按预计申报时间从近到远,列出预计将在 N 天内申报的所有已覆盖公司。
guide无介绍这些工具如何配合使用、期间语法、计量单位、引用、常见问题和标准图表目录。

示例

> What did NVIDIA earn last quarter?

  get_key_figures(ticker: "NVDA")
> Apple's revenue for fiscal 2025, and where the 10-K prints it

  get_figure(ticker: "AAPL", figure: "revenue", period: "FY2025")

  name_in_record  total_net_sales
  json_path       annual[0].income_statement.total_net_sales
  value           416161000000   ($416.16 billion)
  accession       0000320193-25-000079
  sec_link        https://www.sec.gov/Archives/edgar/data/320193/000032019325000079/aapl-20250927.htm#f-78
> NVIDIA revenue in fiscal 2019

  get_figure(ticker: "NVDA", figure: "revenue", period: "FY2019")

  available: false
  We don't have data going back that far: FY2019 is earlier than anything Ticker Scout
  holds for NVDA. The earliest fiscal year held is FY2024. ...
> Microsoft's revenue, net income and EPS in one call

  get_figure(ticker: "MSFT", figure: ["revenue", "net income", "eps"], period: "latest quarter")
> NVIDIA Data Center revenue, every quarter held

  get_figure(ticker: "NVDA", figure: "Data Center", period: "all")

数据政策

  • 所有内容均源自向 SEC 提交的公开报告,例如 Form 10-K 年报、Form 10-Q 季报和 Form 8-K 临时报告(外国发行人则包括 20-F、40-F 和 6-K)。所有数据均未经过估算,也未经过编造。如果申报文件未披露某项数据,则会将其省略并说明原因。
  • 不提供市场价格数据。不含报价、市值或价格快照。本数据源专注于基本面。
  • 每个季度都会更新数据,在公司提交文件后不久完成。list_companies 中列出了覆盖范围以及各公司的数据期间。
  • 这是对公开申报文件的事实性整理,不构成投资建议。

可免费阅读和引用。请注明来源:“Ticker Scout (tickerscout.ai)”。

工作原理

这是一个无状态的 Cloudflare Worker,使用来自 @modelcontextprotocol/server 的 createMcpHandler,通过 /mcp 提供可流式传输的 HTTP 服务。

该服务不存储任何自有财务数据。每次工具调用都会通过 Cloudflare 边缘缓存从 https://tickerscout.ai 获取相应文件并整理响应;查询较早期间时,则会读取该记录带有永久日期的 URL。服务没有数据库、快照或备用副本:如果无法获取上游文件,工具会返回错误,并注明 URL 和状态,而不会提供过时数据。

系统会记录每次工具调用:调用的工具、调用时间、输入内容以及是否成功。记录不包含 IP 地址。请参阅 src/record.ts 和隐私政策。

src/
  index.ts       Worker entrypoint (exports the handler only)
  server.ts      Builds the tool definitions once per isolate, a server per request
  upstream.ts    Fetching, edge caching, the error policy
  tickers.ts     Ticker normalization, coverage search, near matches
  records.ts     A company's published records, and choosing which to read
  periods.ts     Fiscal periods: naming, the period syntax, out-of-range answers
  figures.ts     Standard figures, name resolution, figure_sources links
  filings.ts     Accession numbers, EDGAR links, citations in prose
  topics.ts      Narrative and events topics, keyword search
  markdown.ts    Section parsing for the .md documents
  financials.ts  Headline condensing and unit-safe slicing
  respond.ts     Result shaping, source URL and attribution
  record.ts      The per-call record (tool, inputs, outcome; no IP address)
  tools/         Tool registration, one module per group

开发

npm install
npm test                      # unit tests for the pure modules
npm run type-check            # wrangler deploy does not typecheck
npm run dev                   # local server on http://localhost:8787/mcp
npm run smoke -- <url>        # live end-to-end check against a deployment
npm run sweep -- <site dir>   # every tool, every company, against a local copy of the site
npm run deploy

npm test 会测试纯逻辑。test/smoke.mjs 会针对一组特征差异明显的公司(常规公司、银行、保险集团、远超日历年度的零售商、外国发行方)以及负面案例,调用运行中的服务上的工具。test/sweep.mjs 会在进程内对每家覆盖的公司运行每个工具,并遍历每个主题、报表、细分项和指标类型,同时从本地目录提供网站文件;任何错误都会导致测试失败。单元测试会确保 tools/list 小于 40 KB。

许可证

MIT。请参阅 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。