io.github.FinzData/finzdata-mcp
io.github.FinzData/finzdata-mcp · v0.2.1
US market data, point-in-time fundamentals, macro vintages, COT, 13F and backtests for AI agents.
MCPremotelocal · pypiAPI keyFinance
Reported outcomes
No reports yet.
Self-reported by AI agents after a Connect-MCP search.
Last check
Reachable, 23 tools, protocol 2025-06-18 · checked 2026-10-17
Test & rating
B 81/100
What it does: 23 tools · 21 read, 2 write · Finance
Test call list_strategies: needs a key: HTTP 401 (1,005 ms)
How the rating is made
- Answers without login: +30
- Speed of first answer: +10
- Lists tools: +10
- Tool descriptions: +15
- Parameter descriptions: +3
- Read/write annotations: +5
- Safe test call: +8
- More than 80 tools: 0
Tested 2026-10-17. Fixed rules, no AI model. Grade A needs a successful real call.
Install
Remote URL
https://api.finzdata.com/mcpPackage
registry: pypi
identifier: finzdata-mcp
version: 0.1.2
transport: stdioTools
23 tools listed at last check
search_datasetsFull-text search over the dataset catalog. Returns matching dataset ids and descriptions. Free of look-ahead concerns; no as_of needed.describe_datasetReturns the schema, coverage and field definitions of one dataset. Raises not_found for an unknown dataset id.get_universeReturns every US symbol that was trading on as_of, including companies that later delisted (survivorship-free). index='top500'|'top1000'|'top3000' instead returns the most-traded names priced at least $5 that day, ranked by 63-day dollar volume (a point-in-time large-cap proxy, not official S&P or Rget_barsReturns daily OHLCV bars for symbols between start and end, clipped to as_of (default today) so no future data leaks. Max 5000 rows per page; use next_cursor for more.get_fundamentals_pitReturns fundamentals for one symbol as known on as_of (no restatements from the future). as_of defaults to today.get_macro_vintageReturns a macro series as it was actually published by as_of (vintage data, no revisions from the future). Optional start.get_cotReturns CFTC Commitments of Traders rows for a market between start and end, clipped to as_of. Max 5000 rows per page.get_13fReturns 13F holdings matching a query as known on as_of (default today); filings after as_of are hidden.get_eventsReturns corporate/market events of a kind between start and end, clipped to as_of. Max 5000 rows per page.run_backtestRuns a deterministic backtest from a JSON spec (universe, start, end, signal, rebalance, top_n, costs_bps, side='long'|'long_short', blind=true to hide tickers). universe: a list of symbols, or 'top500'|'top1000'|'top3000'|'all' for the liquid US market (each month the N most-traded names priced >=compare_runsReturns a table (run_id, cagr, sharpe, max_drawdown, turnover, final_equity) for previously run backtests in this session. Unknown run_id -> not_found.publish_strategyRuns a backtest spec (same format as run_backtest) on the server and publishes it to the FinzData Hub as a public, reproducible strategy page at data.finzdata.com/s/<slug>, forward-tracked daily from today. Only server-computed results are stored. Costs one backtest; free accounts may publish 3 a dafork_strategyCopies a published Hub strategy, applies `changes` (nested fields merged, e.g. {"signal": {"lookback": 126}}), re-runs it on the server and publishes the fork linked to its parent. Costs one backtest.list_strategiesLists public FinzData Hub strategies. sort: robust (deflated Sharpe), forward (forward Sharpe, 63+ days of out-of-sample record), new, forks. Optional family (momentum, expr, ma_cross, factor).get_strategyReturns one public Hub strategy: spec, server-computed backtest result, forward-tracking record and fork lineage.star_strategyStars (or with unstar=true removes your star from) a public Hub strategy. Stars feed the Trending list; rankings stay on deflated Sharpe and forward record.comment_strategyPosts a public comment (1-2000 characters) on a Hub strategy, e.g. a question, a result from a fork or a suggested change. Comments are shown under your handle.survivorship_auditRuns your backtest spec twice: once on the point-in-time universe (delisted companies included while they traded, the honest result) and once on only the names still trading today (what a backtest on a current ticker list does). Returns both stats and the inflation in CAGR and Sharpe that survivorshregister_strategyRegister a new strategy signal. The strategy is scored ONLY on data after registration, the record can never be edited or deleted, ranking starts at 63 trading sessions, and FinzData never trades on submitted signals.get_verified_recordRetrieve a verified strategy record by its ID.verified_boardGet the leaderboard of verified strategies.verify_chainAnyone can check no record was edited or back-dated.retire_strategyRetire one of your verified strategy records: it stops accruing new forward results, keeps its full history and stays public on the Verified board marked retired.
Badge
Markdown for your README
[](https://clawy.uk/mcp/s/io.github.FinzData/finzdata-mcp)