Filinglens

io.github.CloudCorpRecords由 GitHub 账号 CloudCorpRecords 发布v0.1.0更新于 Nov 7, 2026

SEC-filed company financials with citations, plus market data and technical indicators.

已验证STDIO仅桌面金融数据与分析

概览

AI 生成的概览

连接托管 Finbolt 服务的本地桥接,让助手获取带引用来源的 SEC 申报财务数据,以及行情数据和技术指标。

可以做什么
  • 搜索股票代码与公司,获取报价、日/周/月 OHLCV 时间序列、汇率和新闻情绪
  • 获取来自 SEC 申报的利润表、资产负债表、现金流量表和盈利数据,最新期间在前
  • 查询单个已披露数字,并附上申报编号、表格类型、申报日期和 XBRL 标签
  • 生成单只股票的一站式简报,以及 2 至 6 只股票的并排对比
  • 计算 SMA、EMA、MACD、RSI 和布林带等技术指标
适用场景
适合需要助手回答可追溯到真实 SEC 申报文件的公司基本面问题,或把这些数字与报价、历史价格和技术指标结合用于个人研究的场景。
运行要求
以本地进程运行,可通过 npx(需 Node.js)或 Docker 启动,使用 stdio 传输,仅限桌面端。调用会经网络转发到托管的 Finbolt 端点;FINBOLT_MCP_URL 可覆盖该端点,FINBOLT_API_KEY 可选地添加 bearer 令牌。默认无需账号。
安装前请注意
工具调用会转发给第三方托管服务,因此发送的股票代码和查询内容会离开本机。可选的 FINBOLT_API_KEY 会以 bearer 头形式发送给该上游。数据标注为仅供个人研究使用;工具均为只读,不含交易或账户功能,服务器本身不保存数据。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Filinglens,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

filinglens

filinglens is a small local bridge to the hosted Finbolt MCP server. Its centre of gravity is company financials taken from SEC filings, with every figure traceable to the filing it came from: ask for one reported fact and you get the value together with its accession number, form, filing date and XBRL tag; ask for a statement and you get the income statement, balance sheet or cash-flow statement newest period first. Around that core sit market data — quotes, daily / weekly / monthly time series, exchange rates and news sentiment — and the usual technical indicators.

The bridge holds no data of its own. It serves the upstream server's captured tool list locally and forwards each tool call upstream, returning the result untouched.

Labelled subset — 21 of 23 tools

This rebuild is a labelled subset: it serves 21 of the 23 tools in the live capture. The two omitted tools are find_tool and run_tool, a meta-dispatch pair that searches and runs "all 113 data tools, including ones not in the default list". That is a dynamic surface onto roughly 92 unenumerated tools whose schemas are nowhere published, so it cannot be parity-pinned and is deliberately not registered here. Their absence is asserted in the test suite.

The 21 served tools are entirely read-only: SEC-filing financials with citations, market data, and technical indicators. There is no trading, order, or account tool among them. Upstream descriptions mark the data "Personal research only"; respect that in use.

Tools

Time series, search and quotes:

  • fetch_time_series_daily — daily OHLCV. Required: symbol.
  • fetch_time_series_weekly — weekly OHLCV. Required: symbol.
  • fetch_time_series_monthly — monthly OHLCV. Required: symbol.
  • search_endpoint — symbol / company search. Required: keywords.
  • fetch_quote — latest price and trading info. Required: symbol.
  • fetch_news_sentiment — news sentiment. Required: tickers.
  • fetch_company_overview — overview, ratios, market cap. Required: symbol.
  • fetch_exchange_rate — currency conversion. Required: from_currency, to_currency.

Statements and earnings:

  • fetch_income_statement — Required: symbol.
  • fetch_balance_sheet — Required: symbol.
  • fetch_cash_flow — Required: symbol.
  • fetch_earnings — EPS estimates vs actuals. Required: symbol.

Technical indicators:

  • fetch_sma — Required: symbol, interval, time_period.
  • fetch_ema — Required: symbol, interval, time_period.
  • fetch_macd — Required: symbol, interval.
  • fetch_rsi — Required: symbol, interval.
  • fetch_bbands — Required: symbol, interval.

SEC-filing tools:

  • analyze_stock — one-call brief: filed fundamentals (each filing cited by accession), market figures and derived ratios. Required: symbol.
  • compare_stocks — side-by-side table for 2–6 stocks. Required: symbols.
  • get_fact — one reported figure with its citation; a figure never reported comes back as missing, never estimated. Required: company, concept.
  • financials — a full statement from SEC filings, newest period first, every null carrying a reason. Required: company.

Configuration

  • FINBOLT_MCP_URL (optional) — override the upstream endpoint. Defaults to https://api.getfinbolt.com/mcp. (The override hook is this rebuild's own labelled reconstruction.)
  • FINBOLT_API_KEY (optional) — when set, every upstream request carries an Authorization: Bearer <key> header. When it is not set, no key header is sent. (The header name is pinned by the registry record; the Bearer scheme and the env forwarding are labelled reconstructions — the original surface was captured keyless.)

Forwarding mechanics

On the first tool call the client opens a streamable HTTP session with the upstream: a JSON-RPC initialize request (protocolVersion 2025-03-26, clientInfo name filinglens), then a notifications/initialized notification, then the tools/call request carrying the caller's arguments unchanged. When the upstream answers initialize with an Mcp-Session-Id header, that value rides on every later request of the session, which is reused for the life of the process. Replies may arrive as plain JSON or as server-sent events; both are read.

Successful upstream results pass through verbatim, including any isError flag the upstream sets. Failures — a JSON-RPC error, a non-2xx status, an unreadable response, or a request that cannot be completed — come back as an isError result whose text starts with filinglens error: (this rendering is this rebuild's own labelled reconstruction).

CLI

Each tool is also a subcommand taking one JSON argument string:

bash
npx @reneturcios/filinglens fetch_quote '{"symbol":"AAPL"}'npx @reneturcios/filinglens get_fact '{"company":"AAPL","concept":"revenue"}'npx @reneturcios/filinglens financials '{"company":"AAPL","statement":"income"}'npx @reneturcios/filinglens --version

Exit codes: 0 on success, 1 on an isError result, 2 on a usage error.

MCP server

bash
npx -y @reneturcios/filinglens mcp

MCP client config:

json
{  "mcpServers": {    "filinglens": {      "command": "npx",      "args": ["-y", "@reneturcios/filinglens", "mcp"]    }  }}

Docker

bash
docker run -i ghcr.io/cloudcorprecords/filinglensdocker run --rm ghcr.io/cloudcorprecords/filinglens --version

The container's default command is mcp, so the first form is a stdio MCP server; any other arguments reach the CLI normally.

Development

bash
npm installnpm run buildnpm testnpm run dev

The test suite runs entirely against a stubbed JSON-RPC upstream — no live network calls.

License

MIT — see LICENSE.

来源:README.md,提交 c97a51a

工具

21

fetch_time_series_daily

[Personal research only] Fetch daily stock data with OHLCV (Open, High, Low, Close, Volume) information for each trading day.

输入参数symbol必填datatypeend_dateoutputsizestart_datemax_data_points

fetch_time_series_weekly

[Personal research only] Fetch weekly stock data with OHLCV (Open, High, Low, Close, Volume) aggregated by week.

输入参数symbol必填datatypeend_datestart_datemax_data_points

fetch_time_series_monthly

[Personal research only] Fetch monthly stock data with OHLCV (Open, High, Low, Close, Volume) aggregated by month.

输入参数symbol必填datatypeend_datestart_datemax_data_points

search_endpoint

[Personal research only] Searches for stock symbols and company names based on keywords (e.g., 'Tesla', 'Microsoft Corp').

输入参数keywords必填

fetch_quote

[Personal research only] Fetches the latest price and trading information for a stock ticker symbol.

输入参数symbol必填

fetch_news_sentiment

[Personal research only] Fetch news sentiment analysis data with sentiment scores, relevance scores, and article metadata.

输入参数sortlimittopicstickers必填time_todatatypetime_from

fetch_company_overview

[Personal research only] Fetch comprehensive company overview including business description, financial ratios, market capitalization, dividend information, and key financial metrics.

输入参数symbol必填

fetch_income_statement

[Personal research only] Fetch annual and quarterly income statement data including revenue, expenses, net income, EPS, and other profit & loss metrics.

输入参数symbol必填

fetch_balance_sheet

[Personal research only] Fetch annual and quarterly balance sheet data including assets, liabilities, shareholders' equity, and other financial position metrics.

输入参数symbol必填

fetch_cash_flow

[Personal research only] Fetch annual and quarterly cash flow statement data including operating, investing, and financing cash flows.

输入参数symbol必填

fetch_earnings

[Personal research only] Fetch annual and quarterly earnings data including EPS (earnings per share) estimates vs actual results, surprise percentages, and earnings growth trends.

输入参数symbol必填

fetch_exchange_rate

[Personal research only] Fetch real-time currency exchange rates between two currencies with bid/ask prices and conversion rates.

输入参数to_currency必填from_currency必填

fetch_sma

[Personal research only] Fetch Simple Moving Average (SMA) technical indicator time series with customizable time periods.

输入参数symbol必填datatypeend_dateinterval必填start_dateseries_typetime_period必填max_data_points

fetch_ema

[Personal research only] Fetch Exponential Moving Average (EMA) technical indicator time series with greater weight on recent prices.

输入参数symbol必填datatypeend_dateinterval必填start_dateseries_typetime_period必填max_data_points

fetch_macd

[Personal research only] Fetch MACD (Moving Average Convergence Divergence) technical indicator time series with signal line and histogram.

输入参数symbol必填datatypeend_dateinterval必填fastperiodslowperiodstart_dateseries_typesignalperiodmax_data_points

fetch_rsi

[Personal research only] Fetch RSI (Relative Strength Index) momentum oscillator time series ranging from 0 to 100.

输入参数symbol必填datatypeend_dateinterval必填start_dateseries_typetime_periodmax_data_points

fetch_bbands

[Personal research only] Fetch Bollinger Bands technical indicator time series with upper band, lower band, and middle line (SMA).

输入参数symbol必填nbdevdnnbdevupdatatypeend_dateinterval必填start_dateseries_typetime_periodmax_data_points

analyze_stock

[Personal research only] One-call stock brief. `filed` holds fundamentals from SEC filings (TTM revenue and growth, gross and operating margin, net income, free cash flow, net debt; for banks net revenue, net interest income, efficiency ratio, PPNR, provisions, loans, deposits, ROE, ROTCE and tangible book; for broker-dealers efficiency ratio, pretax margin, compensation ratio and ROE; for insurers total revenues, premiums earned, net investment income, benefits and losses, a simple combined ratio for P&C insurers, ROE, and book value per share with and without AOCI), each filing cited by accession in sources.edgar (https://www.sec.gov/Archives/edgar/data/{cik}/{accession without dashes}/). A balance input the newest filing omits comes from the latest filing within 15 months, dated in inputs_as_of. `market` holds delayed price, 52-week range, 50/200-day averages and RSI(14); `derived` holds market cap, P/E (on filed diluted EPS LTM), P/B and P/TBV (insurers: P/B and P/B ex-AOCI), each with its inputs. A figure that couldn't be computed is in gaps with its reason; lines that don't apply to the company's layout are left out (layout_note). Up to 4 descriptive observations, including any quarter whose tax rate or non-operating income moves net income. News sentiment on Pro. Start here for "tell me about X". Personal research only: on every plan, this tool's output is for your own personal, non-commercial research. Do not use it in a commercial product, client deliverable or service.

输入参数symbol必填

compare_stocks

[Personal research only] Side-by-side comparison of 2-6 stocks as one table: TTM revenue and growth, pretax margin, net income growth and diluted EPS growth from SEC filings (each row's window ends on its ttm_to), net debt for standard layouts, delayed price, day change, distance from the 52-week high and trend, market cap, and P/E on filed diluted EPS LTM (FY + YTD - prior YTD). `order` lists each filed figure highest first, P/E lowest first. `comparability` says what revenue means per layout; cell_notes say what moves a figure. Filings are cited by accession in sources.edgar: open https://www.sec.gov/Archives/edgar/data/{cik}/{accession without dashes}/. Personal research only: on every plan, this tool's output is for your own personal, non-commercial research. Do not use it in a commercial product, client deliverable or service.

输入参数symbols必填

get_fact

One reported figure from SEC filings, with its citation: filing accession number, form, filing date, XBRL tag, period and a link to the filing. Restated values are listed. A figure the company never reported comes back as missing, never estimated. Values are in units as filed (USD, shares, USD/shares). A value and its as_originally_reported version come only from financial statements (10-K, 10-Q, their amendments and transition reports, 20-F, 40-F), never a proxy or an 8-K.

输入参数as_ofperiodcompany必填concept必填

financials

A financial statement from SEC filings, newest period first, every value traceable to its filing. Quarterly figures the company reported only year-to-date are derived (e.g. Q4 = FY - 9M) and marked; per-share values and share counts can't be derived that way and are null with reason not_derivable. A line the company tagged with its own element is null with reason custom_element. Common equity and the book values from it are null with reason pending when a preferred issue or redemption follows the last tagged liquidation preference. Every null carries a reason, in cell_notes or (when all of a row's nulls share it) on the row. Banks, insurers and broker-dealers get not_applicable, with a reason, for lines they don't present (capex, current assets, total debt for banks and brokers); banks get loans, allowance and deposits. Broker-dealers and asset managers get the bank layout under net_revenues, with compensation and the compensation ratio. Balance sheets include common equity, book value per share and net debt. A balance the period's own filing didn't present is null, with any later comparative value in a note. A derived or fallback line equal to another row in every column (total equity with no NCI) is named in same_as instead of shown, and a derived Q4 with the opposite sign to Q1-Q3 says so. Values are in units as filed. Values and earlier versions come only from financial statements (10-K, 10-Q, their amendments and transition reports, 20-F, 40-F).

输入参数as_oflimitcompany必填statementperiod_type

版本历史

1
  1. v0.1.0最新Nov 4, 2026

评分

已满足适用检查项的 90%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分
  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分