# io.github.rezmeplxrf/insightsentry_mcp (npm · @insightsentry/mcp)

MCP server for InsightSentry financial data API - market data, options, screeners, and more

- Trust score: 68/100 (medium)
- Change this week: +44
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- npm · `@insightsentry/mcp`: 68/100 (this document), [markdown](https://verifymcp.io/servers/rezmeplxrf-insightsentry-mcp/insightsentry-mcp.md), [page](https://verifymcp.io/servers/rezmeplxrf-insightsentry-mcp/insightsentry-mcp)

## Channel facts

- Registry: `npm`
- Package: `@insightsentry/mcp`
- Version: `1.4.35`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Supply Chain Security**: 88/100
  - No malware found by supply-chain analysis.
  - Only part of the dependency tree could be resolved (133 of 137), so this covers what we could see, not the whole tree.
  - No install/post-install scripts declared.
  - Only part of the dependency tree could be resolved (133 of 137), so this covers what we could see, not the whole tree.
- **Provenance & Transparency**: 45/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 0 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 72/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 17430 tokens (~396/item across 44 items; 33 tools + 11 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 23/100
  - Stability observed for 7 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 97/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 92% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add rezmeplxrf-insightsentry-mcp -- npx -y @insightsentry/mcp
```

### Codex

```bash
codex mcp add rezmeplxrf-insightsentry-mcp -- npx -y @insightsentry/mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "rezmeplxrf-insightsentry-mcp": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@insightsentry/mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add rezmeplxrf-insightsentry-mcp --command npx --arg -y --arg @insightsentry/mcp
```

### Hermes

```yaml
mcp_servers:
  rezmeplxrf-insightsentry-mcp:
    command: "npx"
    args: ["-y", "@insightsentry/mcp"]
```

### Other

```json
{
  "mcpServers": {
    "rezmeplxrf-insightsentry-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@insightsentry/mcp"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-03 (score 68, +4)

- [functional improvement] Stability: unverified → 0.23
- [functional] Package version: 1.4.33 → 1.4.35

### 2026-08-02 (score 64, +41)

- [security regression] Provenance: unverified → fail
- [security improvement] Known CVEs: unverified → partial
- [security improvement] Install scripts: unverified → pass
- [security improvement] Malware scan: unverified → pass
- [security] Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window).
- [functional regression] Security disclosure: fail → unverified
- [functional regression] Tool coverage: 100 → unverified
- [functional regression] Schema quality: 100 → unverified
- [functional improvement] MCP protocol: unverified → pass
- [functional improvement] Dependency health: unverified → partial
- [functional improvement] License: unverified → pass
- [functional improvement] Schema quality: unverified → excellent
- [functional improvement] Maintenance: unverified → pass
- [functional] Licence: MIT

### 2026-07-31 (score 23, −8)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-30 (score 31, −18)

- [security regression] Malware scan: pass → unverified

### 2026-07-28 (score 49, +25)

- [functional improvement] Schema quality: unverified → 100
- [functional improvement] Tool coverage: unverified → 100
- [functional] First check of Tool coverage: 91
- [functional] First check of Schema quality: fail
- [functional] First check of Schema quality: fail
- [functional] First check of Schema quality: unverified

### 2026-07-27 (score 24)

First indexed and scored.

## MCP tools (33)

### `whoami` (~40 tokens)

Print the logged-in InsightSentry user's email, falling back to uuid, by parsing the configured API key JWT locally. This does not call the external API.

### `version_status` (~34 tokens)

Check the installed InsightSentry CLI/MCP package version against the latest npm version and show the upgrade command when one is available.

### `get_symbol_series` (~784 tokens)

Recent Time Series (up to 30k bars) with real-time data option. Retrieve recent historical OHLCV data with a latest data option for a symbol with configurable time intervals and adjustments → Returns {code: string, bar_type: string, bar_end?: number, last_update: number, series: [{time: number, open?: number, high?: number, low?: number, close: number, volume?: number, type?: string}]}. With abbr=true: {code: string, bar_type: string, bar_end?: number, last_update: number, series_keys: string[], series: number[][]} — compact arrays for reduced LLM token usage. Not all bar types include the same fields (e.g., tick data may only have [time, type, close]) — always check series_keys. For intra-day historical data (if you need more than recent 30k bars) use get_symbol_history instead. For real-time streaming, read the insightsentry://docs/websocket resource.

Input parameters:

- `abbr` (boolean): (Optional) Set to 'true' for compact output optimized for LLM consumption. Returns series as arrays instead of objects with a series_keys header array. Does not affect response speed — only changes t…
- `badj` (boolean): (Optional) Back-adjustment for continous futures contracts (has no effect on non-continous futures data). Default to true.
- `bar_interval` (integer): (Optional) Bar intervals. The combination of bar_type and bar_interval must not exceed one year. Default is 1.
- `bar_type` (string): (Optional) Bar type. Default is 'day'
- `currency` (string): (Optional) Convert the OHLCV data to a different currency. The currency code must be a valid ISO 4217 currency code (e.g., USD, EUR, GBP). Do not include this field if you want to use the default cur…
- `dadj` (boolean): (Optional) Dividend adjustment for equities and etfs (has no effect on assets without dividends). Ignored when split=false. Default to false.
- `dp` (integer): (Optional) Maximum number of data points to return. Higher values may increase latency. Default is 3000. Supported values: 1 - 30000
- `extended` (boolean): (Optional) Extended hours (Not all assets support extended hours). Default to true.
- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `long_poll` (boolean): (Optional) If true, the server will wait up to 3 additional seconds for a real-time data before responding. Default is false.
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `settlement` (boolean): (Optional) Set Settlement as daily close. Default is false
- `split` (boolean): (Optional) Split adjustment for equities and ETFs. Default to true. When false, returns unadjusted data and overrides dadj.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.
- `symbol` (string): Symbol in Exchange:Symbol format (e.g., NASDAQ:AAPL, NYSE:TSLA). You can search for this symbol code using the /v3/symbols/search endpoint.

### `get_symbol_contracts` (~237 tokens)

List of contracts and its settlement date for futures symbols. Retrieve list of relatively recent contracts along with their settlement dates for futures symbols → Returns {base_code: string, contracts: [{code: string, settlement_date: string}]}. Use a specific contract code (e.g., CME_MINI:NQH2024) with get_symbol_history for deep history.

Input parameters:

- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.
- `symbol` (string): Symbol in Exchange:Symbol format (e.g., NASDAQ:AAPL, NYSE:TSLA). You can search for this symbol code using the /v3/symbols/search endpoint.

### `get_symbol_info` (~533 tokens)

Symbol information and metadata. Retrieve detailed information about a symbol including type, currency, market data, splits, option information, and more. Not intended for current price data. → Returns {code: string, type?: string, name?: string, exchange?: string, currency_code?: string, base_currency?: string, min_contract?: number, volume_type?: string, country_code?: string, security_identifiers?: {isin?: string, cusip?: string, figi?: {country_composite?: string, exchange_level?: string}, cik?: string}, sector?: string, industry?: string, description?: string, ceo?: string, website?: string, status?: string, delay_seconds?: number, change?: number, change_percent?: number, open_price?: number, low_price?: number, high_price?: number, prev_close_price?: number, volume?: number, average_volume?: number, market_cap?: number, total_shares_outstanding?: number, splits?: [{time: number, factor: number}], all_time_high?: number, all_time_high_day?: number, all_time_low?: number, all_time_low_day?: number, earnings_per_share_fq?: number, earnings_release_date?: number, earnings_release_next_date?: number, price_earnings_ttm?: number, dividends_yield?: number, beta_1_year?: number, option_info?: [{name: string, type: string, series: [{expiration_date: number, lot_size?: number, underlying: string, strikes: number[]}]}], has_backadjustment?: boolean, point_value?: number, ...}. Only 'code' is guaranteed — all other fields depend on the asset type. For fundamentals use get_symbol_fundamentals. For option contracts use get_options_contracts; for filtered option quote rows and Greeks use get_options_quotes.

Input parameters:

- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.
- `symbol` (string): Symbol in Exchange:Symbol format (e.g., NASDAQ:AAPL, NYSE:TSLA). You can search for this symbol code using the /v3/symbols/search endpoint.

### `get_symbol_session` (~184 tokens)

Trading session information. Retrieve trading session details including holidays, trading hours, timezone, and session corrections

Input parameters:

- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.
- `symbol` (string): Symbol in Exchange:Symbol format (e.g., NASDAQ:AAPL, NYSE:TSLA). You can search for this symbol code using the /v3/symbols/search endpoint.

### `get_quotes` (~423 tokens)

Latest quote data. Retrieve the latest quote data for up to 10 symbols → Returns {total_items: number, data: [{code: string, status?: string, last_price?: number, change?: number, change_percent?: number, volume?: number, bid?: number, ask?: number, bid_size?: number, ask_size?: number, market_cap?: number, open_price?: number, high_price?: number, low_price?: number, prev_close_price?: number, lp_time?: number, delay_seconds?: number, currency_code?: string, unit?: string}]}. For historical data use get_symbol_series. For company details use get_symbol_info.

Input parameters:

- `badj` (boolean): (Optional) Back-adjustment for continous futures contracts (has no effect on non-continous futures data). Default to true.
- `codes` (string): Comma-separated list of symbol codes in Exchange:Symbol format. Each code must match the SymbolCode pattern.
- `dadj` (boolean): (Optional) Dividend adjustment for equities and etfs (has no effect on assets without dividends). Ignored when split=false. Default to false.
- `extended` (boolean): (Optional) Extended hours (Not all assets support extended hours). Default to true.
- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `settlement` (boolean): (Optional) Set Settlement as daily close. Default is false
- `split` (boolean): (Optional) Split adjustment for equities and ETFs. Default to true. When false, returns unadjusted data and overrides dadj.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.

### `search_symbols` (~333 tokens)

Search for symbols. Search for Symbols. To search for a specific type or country, leave query empty. To search for all symbols from a specific exchange, use query like "EXCHANGE:" e.g. "NASDAQ:". → Returns {current_page: number, has_more: boolean, symbols: [{name: string, code: string, type: string, exchange: string, currency_code: string, country: string, description: string}]}. ALWAYS start here to find the correct symbol code unless you already know the correct symbol code. InsightSentry uses EXCHANGE:SYMBOL format (e.g., NASDAQ:AAPL) which differs from other platforms. Do NOT guess codes — search first. Use the returned code with get_quotes, get_symbol_series, get_symbol_info, or any other tool.

Input parameters:

- `country` (string): Filter by country. 2-letter ISO code
- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `page` (integer): Each page returns up to 50 results.
- `query` (string): Search query string
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.
- `type` (string): Filter by instrument type

### `get_symbol_fundamentals` (~321 tokens)

Fundamental data and statistics. Retrieve comprehensive fundamental data including company info, valuation ratios, profitability metrics, balance sheet, cash flow, income statement, and more → Returns {code: string, data: [{id: string, name?: string, category?: string, group?: string, type?: string, period?: string, value?: number|string|array}], last_update: number}. The data array contains hundreds of fields. Use filter to access: data[category='Valuation'] to filter by category, $distinct(data.category) to list categories. If you're unsure which fields exist, call get_fundamentals_meta first. Present only the fields relevant to the user's question — do NOT dump the entire response. For historical fundamentals use get_fundamentals_series.

Input parameters:

- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.
- `symbol` (string): Symbol in Exchange:Symbol format (e.g., NASDAQ:AAPL, NYSE:TSLA). You can search for this symbol code using the /v3/symbols/search endpoint.

### `get_fundamentals_series` (~397 tokens)

Fundamental Data in Time Series format. Retrieve historical data for specific indicators. A maximum of 5 Indicator IDs can be requested at a time. The list of available Indicator IDs is provided in the fundamental_series and technical_series fields of the /v3/symbols/fundamentals endpoint. Some parameters may not apply to certain Indicator IDs, and not all indicators are supported for every symbol. → Returns {code: string, total_items: number, last_update: number, data: [{id: string, name: string, data: [{time: number, close: number}]}]} — max 5 indicator IDs per request. If you don't know the available IDs, call get_fundamentals_meta or get_symbol_fundamentals first — both return field objects with {id, name, category} that you can use here. Not all indicators are available for every symbol.

Input parameters:

- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `ids` (string): (Required) Comma-separated list of indicator IDs (maximum 5). Available IDs can be retrieved from /v3/symbols/fundamentals endpoint's 'fundamental_series' and 'technical_series' fields.
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.
- `symbol` (string): Symbol in Exchange:Symbol format (e.g., NASDAQ:AAPL, NYSE:TSLA). You can search for this symbol code using the /v3/symbols/search endpoint.

### `get_fundamentals_meta` (~316 tokens)

Meta data for /fundamentals endpoints. Retrieve the fundamentals schema and metadata. This endpoint returns the layout and definitions only — it does not include actual data, which are provided by /v3/symbols/{symbol}/fundamentals. → Returns {last_update: number, base: [{id: string, name?: string, category?: string, group?: string, type?: string, period?: string}], fundamental_series: [{id: string, name: string}], technical_series: [{id: string, name: string}]}. No values — schema only. Use this to discover and search available fields when you're unsure which field IDs exist (e.g., find cash flow fields, balance sheet metrics, valuation ratios) by scanning names and categories. Then call get_symbol_fundamentals with a specific symbol and filter its response to only the IDs you identified here. Use fundamental_series/technical_series IDs with get_fundamentals_series for historical data.

Input parameters:

- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.

### `get_options_contracts` (~701 tokens)

List option contracts. Retrieve available option contracts for a supported underlying symbol. Futures options are not currently supported by this endpoint. Supports filtering by exact strike, strike range around the current underlying price, expiration date, expiration date range, and option type. If no strike, range, expiration, from, or to selector is provided, range=1000 is applied internally. When a response includes next_token, request the next page by sending the same filters plus next_token. Use the /v3/symbols/quotes endpoint with the returned option codes to get latest trade price and volume (for example, codes=OPRA:AAPL270617C230.0,OPRA:AAPL270617C260.0, up to 10 codes per request). → Returns {underlying_code: string, last_update: number, last_price?: number, next_token?: string, data: [{code: string, description: string, expiration: string, type: string, status: string, style: string, strike_price: string, multiplier: string, size: string, open_interest?: string|null, open_interest_date?: string|null, close_price?: string|null, close_price_date?: string|null}]}. Use this to discover tradable option contract codes and metadata. If next_token is present, request the next page with the same filters plus next_token. Use get_options_snapshot for latest bars/quotes/trades, get_options_quotes for Greeks, get_quotes with returned codes for last trade price/volume, or get_symbol_series for historical OPRA option bars.

Input parameters:

- `code` (string): (Required) Symbol code in Exchange:Symbol format (e.g., NASDAQ:AAPL). Use search_symbols to find the correct code.
- `expiration` (string): (Optional) Exact expiration date. Ignored when from or to is provided. (Format: YYYY-MM-DD)
- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `from` (string): (Optional) Minimum expiration date. When provided, expiration parameter is ignored. (Format: YYYY-MM-DD)
- `next_token` (string): (Optional) Pagination token from a previous /v3/options/contracts response. Send the same filters plus next_token to request the next page.
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `range` (integer): (Optional) Strike price range as a percentage of the current underlying price. For example, range=10 returns only options with strikes within ±10% of the current price. Values above 1000 are capped a…
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.
- `strike` (number): (Optional) Exact strike price. Takes precedence over range when both are provided.
- `to` (string): (Optional) Maximum expiration date. When provided, expiration parameter is ignored. (Format: YYYY-MM-DD)
- `type` (string): (Optional) Filter by option type.

### `get_options_snapshot` (~734 tokens)

Option snapshots. Retrieve latest option market snapshots for a supported underlying symbol. Futures options are not currently supported by this endpoint. Supports filtering by exact strike, strike range around the current underlying price, expiration date, expiration date range, and option type. If no strike, range, expiration, from, or to selector is provided, range=1000 is applied internally. When a response includes next_token, request the next page by sending the same filters plus next_token. Response timestamps are Unix timestamps in milliseconds. Snapshot rows include previous daily bar, current daily bar, latest quote, and latest trade when available. → Returns {underlying_code: string, last_price?: number, next_token?: string, data: [{code: string, prev?: {time?: number, open?: number, high?: number, low?: number, close?: number, volume?: number, trade_count?: number, vwap?: number}, daily?: {time?: number, open?: number, high?: number, low?: number, close?: number, volume?: number, trade_count?: number, vwap?: number}, latest_quote?: {time?: number, ask?: number, ask_size?: number, bid?: number, bid_size?: number}, latest_trade?: {time?: number, last_price?: number, size?: number}}]}. Use this when you need latest option bars, quotes, and trades in one response. Use strike, range, expiration, from, or to to narrow results. If next_token is present, request the next page with the same filters plus next_token. If no strike, range, expiration, from, or to selector is provided, range=1000 is applied internally.

Input parameters:

- `code` (string): (Required) Symbol code in Exchange:Symbol format (e.g., NASDAQ:AAPL). Use search_symbols to find the correct code.
- `expiration` (string): (Optional) Exact expiration date. Ignored when from or to is provided. (Format: YYYY-MM-DD)
- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `from` (string): (Optional) Minimum expiration date. When provided, expiration parameter is ignored. (Format: YYYY-MM-DD)
- `next_token` (string): (Optional) Pagination token from a previous /v3/options/snapshot response. Send the same filters plus next_token to request the next page.
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `range` (integer): (Optional) Strike price range as a percentage of the current underlying price. For example, range=10 returns only options with strikes within ±10% of the current price. Values above 1000 are capped a…
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.
- `strike` (number): (Optional) Exact strike price. Takes precedence over range when both are provided.
- `to` (string): (Optional) Maximum expiration date. When provided, expiration parameter is ignored. (Format: YYYY-MM-DD)
- `type` (string): (Optional) Filter by option type.

### `get_options_quotes` (~682 tokens)

Option quotes by strike or expiration. Retrieve option quote rows with bid/ask, Greeks, implied volatility, strike, expiration, and contract metadata. Provide strike, range, expiration, from, or to to narrow results. If no strike, range, expiration, from, or to selector is provided, range=1000 is applied internally. When strike and range are both provided, strike takes precedence and range is ignored. Use the /v3/symbols/quotes endpoint with returned option codes when you need last trade price and volume (up to 10 codes per request). → Returns {underlying_code: string, last_update: number, last_price?: number, data: [{code?: string, type: string, strike_price: number, expiration: number, ask_price: number, bid_price: number, delta: number, gamma: number, theta: number, vega: number, rho: number, implied_volatility: number, theoretical_price: number, bid_iv: number, ask_iv: number}]}. Use strike, range, expiration, from, or to to narrow results. If no strike, range, expiration, from, or to selector is provided, range=1000 is applied internally. Use API params type, sortBy, and sort to narrow server-side, then filter for Greek thresholds. To get last trade price and volume of returned contracts, call get_quotes with the option codes (up to 10). For historical option price data use get_symbol_series.

Input parameters:

- `code` (string): (Required) Symbol code in Exchange:Symbol format (e.g., NASDAQ:AAPL). Use search_symbols to find the correct code.
- `expiration` (string): (Optional) Exact expiration date. Ignored when from or to is provided. (Format: YYYY-MM-DD)
- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `from` (string): (Optional) Minimum expiration date. When provided, expiration parameter is ignored.  (Format: YYYY-MM-DD)
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `range` (integer): (Optional) Strike price range as a percentage of the current underlying price. For example, range=10 returns only options with strikes within ±10% of the current price. Values above 1000 are capped a…
- `sort` (string): (Optional) Sort order
- `sortBy` (string): (Optional) Sort by specified field
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.
- `strike` (number): (Optional) Strike price for exact match filtering.
- `to` (string): (Optional) Maximum expiration date. When provided, expiration parameter is ignored. (Format: YYYY-MM-DD)
- `type` (string): (Optional) Filter by option type.

### `get_dividends` (~555 tokens)

Dividend calendar. Retrieve dividend calendar data for a specified time range → Returns {total_count: number, range: string, last_update: number, data: [{code: string, name: string, country: string, currency_code: string, market_cap: number, dividends_yield: number, dividend_ex_date_recent: number, dividend_ex_date_upcoming: number, dividend_payment_date_recent: number, dividend_payment_date_upcoming: number, dividend_amount_recent: number, dividend_amount_upcoming: number}]}. Default: current week. Use 'w' to look ahead (w=2 for next week, w=4 for a month out) or 'month' for one historical UTC month; w takes precedence. Filter by country with 'c' (e.g., 'US') or symbol with 'code' (e.g., 'NASDAQ:AAPL'). Use local=true with exactly one supported non-US country to return monetary values in its local reporting currency.

Input parameters:

- `c` (string): (Optional) Filter by country code(s) as a comma-separated ISO 3166-1 alpha-2 string, for example `US,AR`. Invalid codes will be ignored.
- `code` (string): (Optional) Filter by symbol code in Exchange:Symbol format (e.g., NASDAQ:AAPL). Returns only calendar entries matching this symbol.
- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `local` (boolean): When true and `c` contains exactly one supported non-US country code, monetary values are returned in that country's local reporting currency. Otherwise, the default reporting currency is used.
- `month` (string): Fetches one historical UTC calendar month in YYYY-MM format when w is absent. The current or a future month is rejected. Oldest available months are 2012-12 for events, 2025-01 for dividends, 2012-04…
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.
- `w` (integer): Specifies the week range. For example, 1 means this week (starting today) through next week, 2 means next week through the following week, and so on. When provided, this parameter takes precedence ov…

### `get_earnings` (~582 tokens)

Earnings calendar. Retrieve earnings calendar data for a specified time range → Returns {total_count: number, range: string, last_update: number, data: [{code: string, name: string, country: string, currency_code: string, market_cap: number, earnings_release_date: number, earnings_release_next_date: number, earnings_per_share_fq: number, earnings_per_share_forecast_fq: number, earnings_per_share_forecast_next_fq: number, eps_surprise_fq: number, eps_surprise_percent_fq: number, revenue_fq: number, revenue_forecast_fq: number, revenue_forecast_next_fq: number, revenue_surprise_fq: number, revenue_surprise_percent_fq: number}]}. Default: current week. Use 'w' to look ahead or 'month' for one historical UTC month; w takes precedence. Filter by country with 'c' or symbol with 'code' (e.g., 'NASDAQ:AAPL'). Use local=true with exactly one supported non-US country to return monetary values in its local reporting currency.

Input parameters:

- `c` (string): (Optional) Filter by country code(s) as a comma-separated ISO 3166-1 alpha-2 string, for example `US,AR`. Invalid codes will be ignored.
- `code` (string): (Optional) Filter by symbol code in Exchange:Symbol format (e.g., NASDAQ:AAPL). Returns only calendar entries matching this symbol.
- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `local` (boolean): When true and `c` contains exactly one supported non-US country code, monetary values are returned in that country's local reporting currency. Otherwise, the default reporting currency is used.
- `month` (string): Fetches one historical UTC calendar month in YYYY-MM format when w is absent. The current or a future month is rejected. Oldest available months are 2012-12 for events, 2025-01 for dividends, 2012-04…
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.
- `w` (integer): Specifies the week range. For example, 1 means this week (starting today) through next week, 2 means next week through the following week, and so on. When provided, this parameter takes precedence ov…

### `get_ipos` (~450 tokens)

IPO calendar. Retrieve IPO calendar data for a specified time range → Returns {total_count: number, range: string, last_update: number, data: [{code: string, name: string, country: string, currency: string, status: string, offer_time: number, offer_price: number, offered_shares: number, deal_amount: number, price_range: string, market_cap: number}]}. Default: current week. Use 'w' to look ahead or 'month' for one historical UTC month; w takes precedence. Filter by country with 'c' or symbol with 'code' (e.g., 'NASDAQ:AAPL').

Input parameters:

- `c` (string): (Optional) Filter by country code(s) as a comma-separated ISO 3166-1 alpha-2 string, for example `US,AR`. Invalid codes will be ignored.
- `code` (string): (Optional) Filter by symbol code in Exchange:Symbol format (e.g., NASDAQ:AAPL). Returns only calendar entries matching this symbol.
- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `month` (string): Fetches one historical UTC calendar month in YYYY-MM format when w is absent. The current or a future month is rejected. Oldest available months are 2012-12 for events, 2025-01 for dividends, 2012-04…
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.
- `w` (integer): Specifies the week range. For example, 1 means this week (starting today) through next week, 2 means next week through the following week, and so on. When provided, this parameter takes precedence ov…

### `get_events` (~379 tokens)

Economic events calendar. Retrieve economic events calendar data for a specified time range → Returns {total_count: number, range: string, last_update: number, data: [{title?: string, country?: string, type?: string, currency?: string, importance?: string, date?: string, source_url?: string}]}. Default: current week. Use 'w' to look ahead or 'month' for one historical UTC month; w takes precedence. Filter by country with 'c'.

Input parameters:

- `c` (string): (Optional) Filter by country code(s) as a comma-separated ISO 3166-1 alpha-2 string, for example `US,AR`. Invalid codes will be ignored.
- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `month` (string): Fetches one historical UTC calendar month in YYYY-MM format when w is absent. The current or a future month is rejected. Oldest available months are 2012-12 for events, 2025-01 for dividends, 2012-04…
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.
- `w` (integer): Specifies the week range. For example, 1 means this week (starting today) through next week, 2 means next week through the following week, and so on. When provided, this parameter takes precedence ov…

### `get_newsfeed` (~634 tokens)

News feed. Retrieve latest financial news with optional keyword and field-specific filtering → Returns {last_update: number, total_items: number, current_items: number, page: number, has_next: boolean, data: [{title?: string, content?: string, link?: string, published_at: number, related_symbols?: string[]}]}.

Input parameters:

- `archive` (boolean): (Optional) Set to true to search older archived news when using filters. Archived results may omit very recent items.
- `content` (string): (Optional) Return only news items whose content contains these values. Matching is case-insensitive and partial; values may be separated by spaces or commas; provide up to 10 values, each with at lea…
- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `from` (string): (Optional) UTC start date. Format must be YYYY-MM-DD. When provided without to, to is treated as the current UTC date.
- `keywords` (string): (Optional) Keywords to include items that match one of the keywords in the title, content, or related symbols. Values may be separated by spaces or commas; provide up to 10 values, each with at least…
- `limit` (integer): (Optional) Limit the number of news items returned. Must be an integer between 1 and 500. Default is 500.
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `page` (integer): Page number for pagination
- `related_symbols` (string): (Optional) Return news items that contain any matching related symbol. Values may be separated by spaces or commas; provide up to 10 values, each with at least 2 characters and at most 50 characters.…
- `source` (string): (Optional) Return only news items whose source exactly matches this value. Matching is case-insensitive. The value must contain at least 2 characters and at most 50 characters.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.
- `title` (string): (Optional) Return only news items whose title contains these values. Matching is case-insensitive and partial; values may be separated by spaces or commas; provide up to 10 values, each with at least…
- `to` (string): (Optional) UTC end date. Format must be YYYY-MM-DD. Ignored when from is absent. Future dates are treated as the current UTC date.

### `get_newsfeed_sources` (~162 tokens)

News feed sources. Retrieve the list of available news feed source names. → Returns {last_update: number, data: string[]}. Use an exact returned source name with the source parameter of get_newsfeed.

Input parameters:

- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.

### `get_stock_screener_params` (~193 tokens)

Get available stock screener parameters. Retrieve the list of available fields and parameters for stock screening → Returns {available_fields: string[], available_exchanges: string[], available_countries: string[], sortOrder: string[]}. All arrays are flat string arrays (field names, not objects). Next: use screen_stocks with these fields to filter the market.

Input parameters:

- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.

### `screen_stocks` (~567 tokens)

Stock Screener. Retrieve stock data based on specified filter criteria → Returns {hasNext: boolean, current_page: number, total_page: number, current_items: number, data: [{symbol_code: string, name: string, country: string, currency: string, delay_seconds: number, ...requested_fields}]}. WORKFLOW: 1) Call get_stock_screener_params to discover available fields, exchanges, countries. 2) POST with your chosen fields. Tip: Filter by exchanges (e.g., ["NYSE", "NASDAQ"]) to exclude OTC/penny stocks. Example: {"fields":["close","volume","market_cap"],"exchanges":["NYSE","NASDAQ"],"countries":["US","CA"],"page":1,"ignore_invalid":false,"sortBy":"market_cap","sortOrder":"desc"}. Returns up to 1000 results per page.

Input parameters:

- `countries` (array): Array of country codes to filter by (e.g., ["US", "CA"]). Not available for crypto screener. Discover available countries via the GET screener params tool.
- `exchanges` (array): Array of exchange names to filter by (e.g., ["NYSE", "NASDAQ"]). Discover available exchanges via the GET screener params tool.
- `fields` (array): Array of field names to include in the response (1-10 fields). Discover available fields by calling the GET screener params tool first (e.g., get_stock_screener_params). Field names are case-insensit…
- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `ignore_invalid` (boolean): If true, invalid fields, exchanges, or countries are silently filtered out instead of returning an error. Useful when you're unsure if a field exists.
- `max_range` (integer): Number of screener results returned per page. The API gateway clamps values below 1000 to 1000 and values above 15000 to 15000.
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `page` (integer): Page number for pagination
- `sortBy` (string): Field name to sort results by. Must be one of the requested fields or "name". Default: "name".
- `sortOrder` (string): Sort order: "asc" (ascending) or "desc" (descending). Default: "asc".
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.

### `get_etf_screener_params` (~190 tokens)

Get available ETF screener parameters. Retrieve the list of available fields and parameters for ETF screening → Returns {available_fields: string[], available_exchanges: string[], available_countries: string[], sortOrder: string[]}. All arrays are flat string arrays (field names, not objects). Next: use screen_etfs with these fields.

Input parameters:

- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.

### `screen_etfs` (~516 tokens)

ETF Screener. Retrieve ETF data based on specified filter criteria → Returns {hasNext: boolean, current_page: number, total_page: number, current_items: number, data: [{symbol_code: string, name: string, country: string, currency: string, delay_seconds: number, ...requested_fields}]}. WORKFLOW: 1) Call get_etf_screener_params to discover available fields. 2) POST with your chosen fields. Example: {"fields":["close","volume","nav"],"exchanges":["NYSE","NASDAQ"],"countries":["US","CA"],"page":1,"sortBy":"nav","sortOrder":"desc"}.

Input parameters:

- `countries` (array): Array of country codes to filter by (e.g., ["US", "CA"]). Not available for crypto screener. Discover available countries via the GET screener params tool.
- `exchanges` (array): Array of exchange names to filter by (e.g., ["NYSE", "NASDAQ"]). Discover available exchanges via the GET screener params tool.
- `fields` (array): Array of field names to include in the response (1-10 fields). Discover available fields by calling get_etf_screener_params first. Field names are case-insensitive.
- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `ignore_invalid` (boolean): If true, invalid fields, exchanges, or countries are silently filtered out instead of returning an error. Useful when you're unsure if a field exists.
- `max_range` (integer): Number of screener results returned per page. The API gateway clamps values below 1000 to 1000 and values above 15000 to 15000.
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `page` (integer): Page number for pagination
- `sortBy` (string): Field name to sort results by. Must be one of the requested fields or "name". Default: "name".
- `sortOrder` (string): Sort order: "asc" (ascending) or "desc" (descending). Default: "asc".
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.

### `get_bond_screener_params` (~190 tokens)

Get available bond screener parameters. Retrieve the list of available fields and parameters for bond screening → Returns {available_fields: string[], available_exchanges: string[], available_countries: string[], sortOrder: string[]}. All arrays are flat string arrays (field names, not objects). Next: use screen_bonds with these fields.

Input parameters:

- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.

### `screen_bonds` (~517 tokens)

Bond Screener. Retrieve bond data based on specified filter criteria → Returns {hasNext: boolean, current_page: number, total_page: number, current_items: number, data: [{symbol_code: string, name: string, country: string, currency: string, delay_seconds: number, ...requested_fields}]}. WORKFLOW: 1) Call get_bond_screener_params to discover available fields. 2) POST with your chosen fields. Example: {"fields":["close_percent","yield_to_maturity","volume"],"exchanges":[],"countries":["US"],"page":1,"sortBy":"yield_to_maturity","sortOrder":"desc"}.

Input parameters:

- `countries` (array): Array of country codes to filter by (e.g., ["US", "CA"]). Not available for crypto screener. Discover available countries via the GET screener params tool.
- `exchanges` (array): Array of exchange names to filter by (e.g., ["NYSE", "NASDAQ"]). Discover available exchanges via the GET screener params tool.
- `fields` (array): Array of field names to include in the response (1-10 fields). Discover available fields by calling get_bond_screener_params first. Field names are case-insensitive.
- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `ignore_invalid` (boolean): If true, invalid fields, exchanges, or countries are silently filtered out instead of returning an error. Useful when you're unsure if a field exists.
- `max_range` (integer): Number of screener results returned per page. The API gateway clamps values below 1000 to 1000 and values above 15000 to 15000.
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `page` (integer): Page number for pagination
- `sortBy` (string): Field name to sort results by. Must be one of the requested fields or "name". Default: "name".
- `sortOrder` (string): Sort order: "asc" (ascending) or "desc" (descending). Default: "asc".
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.

### `get_crypto_screener_params` (~188 tokens)

Get available crypto screener parameters. Retrieve the list of available fields and parameters for crypto screening → Returns {available_fields: string[], available_exchanges: string[], sortOrder: string[]}. All arrays are flat string arrays (field names, not objects). No country filter for crypto. Next: use screen_crypto with these fields.

Input parameters:

- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.

### `screen_crypto` (~505 tokens)

Crypto Screener. Retrieve cryptocurrency data based on specified filter criteria → Returns {hasNext: boolean, current_page: number, total_page: number, current_items: number, data: [{symbol_code: string, name: string, currency: string, delay_seconds: number, ...requested_fields}]}. WORKFLOW: 1) Call get_crypto_screener_params to discover available fields. 2) POST with your chosen fields. Note: country filtering NOT supported for crypto. Example: {"fields":["close","volume","market_cap"],"page":1,"sortBy":"market_cap","sortOrder":"desc"}.

Input parameters:

- `countries` (array): Array of country codes to filter by (e.g., ["US", "CA"]). Not available for crypto screener. Discover available countries via the GET screener params tool.
- `exchanges` (array): Array of exchange names to filter by (e.g., ["NYSE", "NASDAQ"]). Discover available exchanges via the GET screener params tool.
- `fields` (array): Array of field names to include in the response (1-10 fields). Discover available fields by calling get_crypto_screener_params first. Field names are case-insensitive.
- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `ignore_invalid` (boolean): If true, invalid fields, exchanges, or countries are silently filtered out instead of returning an error. Useful when you're unsure if a field exists.
- `max_range` (integer): Number of screener results returned per page. The API gateway clamps values below 1000 to 1000 and values above 15000 to 15000.
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `page` (integer): Page number for pagination
- `sortBy` (string): Field name to sort results by. Must be one of the requested fields or "name". Default: "name".
- `sortOrder` (string): Sort order: "asc" (ascending) or "desc" (descending). Default: "asc".
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.

### `get_documents` (~215 tokens)

List documents for a symbol. Retrieve a list of available documents (filings, transcripts, reports) for a given symbol → Returns [{id: string, title: string, category: string, reported_time: number, is_available: boolean, is_pdf: boolean, fiscal_period?: string, fiscal_year?: number, form?: string}]. Use the id field with get_document to read content.

Input parameters:

- `code` (string): (Required) Symbol code in Exchange:Symbol format
- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.

### `get_document` (~350 tokens)

Retrieve a specific document. Retrieve the content of a specific document. Returns JSON with title, published_at, and content for non-PDF documents, or binary PDF data for PDF documents. Use text=true to get extracted text from PDF documents. → Returns {title: string, published_at: number, content: string} for non-PDF documents. For PDF documents, returns binary data by default; use text=true to get extracted text as {title: string, published_at: number, content: string} instead. **Always use text=true** so you can read the content. Get document IDs from get_documents first.

Input parameters:

- `code` (string): (Required) Symbol code in Exchange:Symbol format
- `filter` (string): (Optional) JSONata expression to filter/transform the API response server-side before it reaches you. Use this to extract only the fields or rows you need, reducing token usage. See https://jsonata.o…
- `id` (string): Document ID in format type:uniqueidentifier (e.g., transcripts:2133670 or report:2048334-36ccace7a771cb10e19ed97b7d474ca3)
- `output_dir` (string): Directory for stored response when output_file is not set.
- `output_file` (string): File path for stored response.
- `store` (string): Store the response locally instead of returning it. Default is none. csv is only supported for get_symbol_series.
- `text` (boolean): (Optional) Set to 'true' to extract text from PDF documents. When enabled, PDF documents return JSON {title, published_at, content} instead of binary data.

### `download_history` (~311 tokens)

Download historical data over a from/to date range and save files locally as JSON, CSV, or both. second bars create one /history request per day, minute/hour bars create one /history request per month, and day/week/month bars use one /series request with dp=30000 and date filtering. Continuous futures ending in 1! or 2! are detected automatically and expanded to specific contract codes for second/minute/hour. Shows progress in the final summary and supports concurrency 1-10, default 5.

Input parameters:

- `badj` (boolean)
- `bar_interval` (integer): Bar interval. Default: 1.
- `bar_type` (string): Bar type. second/minute/hour use /history; day/week/month use /series.
- `concurrency` (integer)
- `contract_lookback_months` (integer)
- `dadj` (boolean)
- `extended` (boolean)
- `format` (string)
- `from` (string): Start date. Use YYYY-MM or YYYY-MM-DD.
- `keep_chunks` (boolean)
- `merge` (boolean)
- `output_dir` (string): Directory where downloaded files should be stored.
- `overwrite` (boolean)
- `settlement` (boolean)
- `split` (boolean)
- `symbol` (string): Symbol code in EXCHANGE:SYMBOL format, e.g. NASDAQ:AAPL
- `to` (string): End date. Use YYYY-MM or YYYY-MM-DD.

### `get_symbol_history` (~312 tokens)

Download historical data over a from/to date range and save files locally as JSON, CSV, or both. second bars create one /history request per day, minute/hour bars create one /history request per month, and day/week/month bars use one /series request with dp=30000 and date filtering. Continuous futures ending in 1! or 2! are detected automatically and expanded to specific contract codes for second/minute/hour. Shows progress in the final summary and supports concurrency 1-10, default 5.

Input parameters:

- `badj` (boolean)
- `bar_interval` (integer): Bar interval. Default: 1.
- `bar_type` (string): Bar type. second/minute/hour use /history; day/week/month use /series.
- `concurrency` (integer)
- `contract_lookback_months` (integer)
- `dadj` (boolean)
- `extended` (boolean)
- `format` (string)
- `from` (string): Start date. Use YYYY-MM or YYYY-MM-DD.
- `keep_chunks` (boolean)
- `merge` (boolean)
- `output_dir` (string): Directory where downloaded files should be stored.
- `overwrite` (boolean)
- `settlement` (boolean)
- `split` (boolean)
- `symbol` (string): Symbol code in EXCHANGE:SYMBOL format, e.g. NASDAQ:AAPL
- `to` (string): End date. Use YYYY-MM or YYYY-MM-DD.

### `render_chart` (~166 tokens)

Render a Chart.js chart and return the PNG image. Accepts a full Chart.js configuration object (type, data, options). Supports all Chart.js chart types: line, bar, pie, doughnut, radar, polarArea, bubble, scatter. Use this after fetching market data to visualize trends, comparisons, or distributions.

Input parameters:

- `config` (string, required): Chart.js configuration as a JSON string. Must include "type" and "data" fields. Example: {"type":"line","data":{"labels":["Jan","Feb"],"datasets":[{"label":"Price","data":[100,105]}]},"options":{}}
- `height` (integer): Chart height in pixels (default: 400)
- `width` (integer): Chart width in pixels (default: 800)

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/rezmeplxrf-insightsentry-mcp/insightsentry-mcp#diagnostics

## Score history

- 2026-08-03: 68
- 2026-08-02: 64
- 2026-08-01: 23
- 2026-07-31: 23
- 2026-07-30: 31
- 2026-07-28: 49
- 2026-07-27: 24

## Links

- npm package: https://www.npmjs.com/package/@insightsentry/mcp
- Socket report: https://socket.dev/npm/package/@insightsentry/mcp
- Repository: https://github.com/rezmeplxrf/insight_mcp
- Changelog RSS feed: https://verifymcp.io/servers/rezmeplxrf-insightsentry-mcp/insightsentry-mcp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/rezmeplxrf-insightsentry-mcp/insightsentry-mcp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/rezmeplxrf-insightsentry-mcp/insightsentry-mcp
