Overview
Dataloader retrieves market price history, adds technical indicators, and exports tables for other research servers. Fetching data and exporting a file are separate operations.Connection
MCP URL:https://quantx-api.limex.pro/mcps/dataloader
Select Dataloader in the QuantX marketplace. Use its gateway connection with Streamable HTTP and QuantX authorization; follow Client Setup.
Yahoo requests need no provider key. For Massive, send your own key as the X-Massive-Api-Key header; the server does not keep one. If source is omitted, a request that carries the key uses Massive, and a request without it uses Yahoo. Set source when the choice matters.
Cursor configuration (.cursor/mcp.json):
Tools
The same server also provides Shared MCP Tools.
Examples
Retrieve Daily Prices
Callfetch-ohlcvs:
timeframe, start_date, and end_date are required at runtime even though the schema defaults are null. Both dates are inclusive. Inspect row_count and ticker_details.
adjust_dividends (default true) back-adjusts cash dividends for Yahoo and Massive. Massive stock splits are always adjusted. With the default, Yahoo returns adjusted prices and no adj_close column. price_decimals (default 4) rounds OHLC only.
Massive stocks are loaded as one security across renames and reused tickers. identity_date (default end_date) is the day that symbol must mean the security you want. For daily bars, yahoo_backstop (default true) returns Yahoo’s whole series when Massive has no bars or Yahoo has more bars in the window; ticker_details.data_source is then "yahoo". Read warnings. Symbols with a market prefix (X:, C:, I:, O:) are loaded as given: no identity tracking, no local adjustment, and no Yahoo backstop.
In a multi-ticker request, series that loaded are still returned if another ticker fails. The failed item has error in ticker_details. The call fails only when no ticker loads.
Calculate an Indicator
Calllist-supported-indicators with {"request": {}} to inspect supported names. This small compute-indicators example uses supplied synthetic prices:
df to null and pass its result_id, or use variable: "$last". An inline table goes directly in df; do not put a reference object inside that field or pass the whole response envelope. Indicator warm-up rows may be missing; do not silently treat them as zeros.
Export a Table
ticker, dataset_name, start_date, and end_date are required and are not read from the table. To export a stored fetch or indicator result, set dataframe to null and pass result_id or variable ($last):
dataframe. Supported file_format values are csv (the default), parquet, and pickle; only use pickle in a trusted environment.
Fetch the file with artifact_signed_url or artifact_read_chunk. The signed URL is short-lived and read-only: use it exactly as returned and expect it to expire at expires_at. If that call returns STORAGE_NOT_SUPPORTED, read the bytes with artifact_read_chunk and keep the artifact_id.
Results and Limitations
- Use
result_getto inspect a stored payload. To continue a Dataloader workflow,compute-indicatorsandsave-dataframecan consume itsresult_idor variable directly. - Read
ticker_detailsfordata_source,warnings, and a per-tickererror. A Massive stock load also reportssecurity_id,segments, andwindowwhen Massive provides them. - When moving data to another MCP server, send the table contents: a
result_idonly works on the server that produced it. - Preserve timestamps and ticker separation when computing returns or building panels.
- A successful connection does not guarantee provider coverage, an active provider subscription, or an unrestricted data quota.
- Unsupported indicators, nonnumeric prices, and missing required columns are input errors; provider failures are separate.