@pipeworx/finnhub

Connect: https://pipeworx.io/mcp — every tool in the catalog, including @pipeworx/finnhub’s. Install: one-click buttons

Connect to just the @pipeworx/finnhub pack

https://gateway.pipeworx.io/finnhub/mcp — only @pipeworx/finnhub’s own tools, nothing else in the catalog.

No MCP client? Skip the connection: POST https://gateway.pipeworx.io/v1/tools/search_packs {"query":"..."} to find a tool below, GET /v1/tools/<name> for its schema, POST the same URL with arguments for the data — see For AI agents.

Tools: 5

Finnhub’s REST API. Real-time stock quotes, fundamentals, earnings, news, alternative data (insider transactions, sentiment, ETF holdings), economic data, crypto, and forex. Comprehensive market data with a strong free tier.

Why this matters for AI agents

Where Alpha Vantage is solid for fundamentals + technical, Finnhub is stronger for real-time quotes (1-minute resolution on free), insider transactions, news/sentiment, and international markets. For finance agents that need price data alongside news flow and insider activity, Finnhub is fit-for-purpose.

Common flows:

  • Quote. Real-time (or 15-min delayed on free tier) stock quote.
  • Company news. Recent news for a ticker with sentiment scoring.
  • Insider transactions. Form 4 filings with timing and dollar amounts (also see insider-trading pack which is SEC-EDGAR-direct).
  • Earnings. Upcoming earnings calendar, surprise history, EPS estimates.
  • International symbols. European, Asian, emerging-market tickers (where Alpha Vantage gets thinner).

Auth

Free key from https://finnhub.io/dashboard. Free tier: 60 API calls/minute. Pass via _apiKey.

Higher tiers ($50-200/mo) unlock real-time data, longer historical, and rate limits suitable for production. The free tier is sufficient for most agent research.

When to use Finnhub vs. Alpha Vantage

NeedBetter source
QuotesEither; Finnhub real-time-er on free tier
Income statement / balance sheetAlpha Vantage (cleaner schema)
Insider transactionsFinnhub or insider-trading pack
Company news with sentimentFinnhub
Earnings calendarFinnhub
International coverageFinnhub
Technical indicatorsAlpha Vantage
ETF holdingsFinnhub

For richest coverage, Pipeworx agents often mount both.

Earnings surprises vs. the earnings calendar

Two different tools answer two different earnings questions, and picking the wrong one silently misses data:

  • “What were last quarter’s actual results vs. what analysts expected?” → get_earnings_surprises({ symbol }). Keyed by symbol, not by a date window, so it reaches back through the company’s reporting history regardless of how long ago the quarter was. Returns EPS actual, EPS estimate, surprise amount and surprise percent per quarter (most recent first). EPS only — Finnhub’s earnings-surprise history does not carry revenue, and the tool says so explicitly rather than returning a silent null.
  • “What’s scheduled to report, or what happened in the last few weeks?” → get_earnings_calendar({ symbol, from, to }). Takes a date window and includes revenue estimate/actual alongside EPS — but measured live (2026-10-21), the calendar’s historical reach on this plan is short: roughly the last several weeks from today, not the company’s full reporting history. A quarter older than that returns found: false even though the company genuinely reported — that reads as “no earnings” if you don’t know the window is truncated. Use get_earnings_surprises instead for anything older than a few weeks.

Common pitfalls

  • Symbol conventions. US tickers are simple (AAPL); international markets need exchange suffixes (NESN.SW for Nestlé on Swiss exchange). Finnhub has a symbol search.
  • Free tier real-time delay. “Real-time” on free is essentially current; on paid it’s actually live. For agent research, free is fine. For trading, paid.
  • News sentiment is heuristic. Finnhub computes sentiment with NLP — it’s directionally useful but noisy. Don’t treat as ground truth; useful as a signal.
  • Insider transaction lag. SEC requires Form 4 filing within 2 business days of the transaction. Finnhub picks them up shortly after. Real-time alerting requires either polling or a separate real-time SEC feed.
  • Estimates vs. actuals. Finnhub provides analyst consensus estimates; mixing them with actuals in plots requires labeling carefully.
  • Free-tier coverage holes. Some smaller caps and OTC stocks have limited Finnhub coverage on free. Verify the data exists for your target tickers before designing flows around it.

Tools

  • get_quote — Get a real-time stock quote including current price, change, and volume. Example: get_quote({ symbol: “AAPL”, _apiKey: “your-key” })
  • get_company_news — Get recent news articles about a company within a date range. Returns headline, summary, source, and URL. Example: get_company_news({ symbol: “AAPL”, from: “2024-01-01”, to: “2024-01-31”, _apiKey: “yo
  • get_earnings_calendar — Get upcoming and recent earnings reports. Pass symbol for one company’s earnings dates, or omit it for the whole market. Optionally filter by date range. Example: get_earnings_calendar({ symbol: “CR
  • get_earnings_surprises — EPS actual vs analyst (consensus) estimate, beat or miss, for a company’s recent quarters — the “earnings surprise” history. Returns per quarter: fiscal period, EPS actual, EPS estimate, surprise amou
  • search_symbol — Search for stock ticker symbols by company name or keyword. Returns matching symbols with descriptions. Example: search_symbol({ query: “apple”, _apiKey: “your-key” })

Tools

  • get_company_news — Get recent news articles about a company within a date range. Returns headline, summary, source, and URL. Example: get_company_news({ symbol: AAPL , from: 2024-01-01 , to: 2024-01-31 , _apiKey: your-k
  • get_earnings_calendar — Get upcoming and recent earnings reports. Pass `symbol` for one company's earnings dates, or omit it for the whole market. Optionally filter by date range. Example: get_earnings_calendar({ symbol: CRM
  • get_earnings_surprises — EPS actual vs analyst (consensus) estimate, beat or miss, for a company's recent quarters — the earnings surprise history. Returns per quarter: fiscal period, EPS actual, EPS estimate, surprise amount
  • get_quote — Get a real-time stock quote including current price, change, and volume. Example: get_quote({ symbol: AAPL , _apiKey: your-key })
  • search_symbol — Search for stock ticker symbols by company name or keyword. Returns matching symbols with descriptions. Example: search_symbol({ query: apple , _apiKey: your-key })

Regenerated from source · build October 30, 2026