Get available screener datapoint definitions. Returns metadata about all columns available in the screener: id, varName, name, shortName, group, kind, unit, formatting, filterType, s…
Your market workspace, in your AI assistant.
Connect an MCP-compatible assistant to Deepvue. Search market data, research companies, inspect your workspace, and manage supported items with your approval.
Paste this URL into your assistant's custom MCP connector settings. You will sign in to Deepvue and review the requested access.
Get started
Copy the URL
Use the connector link above. Your assistant handles OAuth discovery from that single address.
Add a custom connector
Open your assistant's connector or MCP settings, add a custom server, and paste the URL.
Sign in and approve
Sign in to Deepvue, review read and write access, then return to your assistant and ask a question.
Access and control. A Deepvue Pro plan is required. Read access lets your assistant retrieve data. Write access can change supported workspace items only when you authorize that scope. Review your assistant's proposed changes before confirming them. Disconnect a client in Deepvue Settings → Connected apps.
Connect your assistant
Claude
Open Settings → Connectors → Add custom connector. Paste the URL above, add it, then authorize with Deepvue.
ChatGPT or Codex desktop
Open Settings → Plugins → Add → MCPs → Add MCP Server. Choose Streamable HTTP, paste the URL, save, then authenticate.
Codex terminal
Run codex mcp add deepvue --url https://mcp.staging.deepvue.com/mcp, then complete the browser sign-in.
Other clients need Streamable HTTP and OAuth support. MCP requests use a burst limit of 30 calls, refill near 100 calls per minute, and a 10,000 call daily cap per account. Need help? Contact Deepvue support.
Try a first question
“Find AAPL and show its company overview and latest earnings date.”
“Show my watchlists and summarize the symbols in my Growth list.”
“What does my trading journal say about my results for NVDA?”
“Find stocks matching my saved screener and explain the filters.”
Available tools
94 available tools
Search for symbols by ticker or company name. Returns matches ranked by relevance. Each result includes symbol_index (the unique identifier to use with all other tools), symbol (tick…
Get full symbol details by exact ticker. Returns identifiers (symbol_index, FIGI, CUSIP, ISIN, CIK), type, provider, IPO date, and availability window. For identity + live quote in o…
Get full symbol details by numeric symbol_index. Useful when you have a symbol_index from screener results or other tools and need the ticker/name.
List the user's trading accounts (broker-linked and manual). Paginated via limit/offset. Returns: id, name, broker, accountType, isDefault, initialBalance, brokerConnectionId.
List the user's trade tags. Tags categorize trades (e.g. 'breakout', 'earnings-play'). Paginated via limit/offset.
List daily journal entries (notes, mood, outlook). Filter by date range. Paginated via limit/offset. Default date range is last 30 days. Returns PascalCase fields (ID, Date, SleepQua…
Get a single daily journal entry by date. Returns PascalCase fields (ID, Date, SleepQuality, EnergyLevel, StressLevel, MarketOutlook, PremarketPlan, EntryRating, ExitRating, Manageme…
List trades from the user's trading journal. Filter by account, symbol, trade type, tag IDs, or date range. Paginated via limit/offset; response includes total and hasMore. Returns:…
Get a single trade by ID, including tags and account metadata. Returns PascalCase fields (ID, Date, Symbol, Type, Quantity, Price, NetAmount, Direction, Status, AccountID, Account {i…
List aggregate positions built from trades. Filter by account, ticker, status (open/closed), or direction (long/short). Paginated via limit/offset; response includes total and hasMor…
Get a single position by ID, including aggregate metrics and associated trades. Returns PascalCase fields (ID, Ticker, Direction, Status, AvgEntryPrice, AvgExitPrice, TotalShares, Re…
Get stock split history for one or more symbols. Returns data grouped by symbol: date, numerator, denominator (e.g. 4:1 split).
List price alerts for the authenticated user with pagination. Alerts trigger notifications when the price crosses a threshold (alert_type PRICE, TRENDLINE, RAYLINE, or RAYPRICE). Ret…
Get a specific price alert by ID. Returns full alert configuration including trigger conditions and notification channels.
List all alerts for a specific symbol
List alert notifications — triggered events from price alerts. Returns: id, alertId, symbol, price, direction (increased/dropped/equals), pricePercent, note, isViewed, createdAt.
Mark a single notification as viewed by ID.
Mark multiple notifications as viewed at once. Pass an array of notification IDs.
Delete a single notification by ID.
Delete all notifications for the authenticated user. This is permanent.
Update an existing tag. Requires mcp:write scope.
Delete a tag. This is permanent. Requires mcp:write scope.
Create or update a daily journal entry. Requires mcp:write scope. Fields not provided are left unchanged when updating. Returns PascalCase fields (ID, Date, SleepQuality, EnergyLevel…
Create a new trade tag. Requires mcp:write scope.
Create a new alert. Required fields depend on alert_type: PRICE needs is_above or is_below + price; TRENDLINE/RAYLINE/RAYPRICE need price + time + price2 + time2. Provide either tick…
List folders for the authenticated user. Folders organize watchlists, screeners, and other dashboard items. Returns: id, name, folderType, orderIndex.
Get a specific folder by ID.
List dashboard items (saved layouts, charts, notes) by type. Returns: id, title, itemType, viewType, data, isFavorite, folderId, isShared, createdAt.
Get a specific dashboard item by title within an item_type. If two items share the title in different folders, pass dashboard_item_folder to disambiguate.
List watchlists for the authenticated user. A watchlist is a named collection of stock symbols. Returns: id, name, symbols (resolved tickers), symbolCount (the MEMBERSHIP size), unre…
Get a specific watchlist by name (preferred). Returns full details including resolved symbol tickers. symbolCount is the membership size and can exceed len(symbols): ids with no row…
List screeners for the authenticated user. A screener is a saved set of filters (a FilterTree stored in data.filters) for the stock screener. Returns: id, name, filter, isFavorite, f…
Get a specific screener by name (preferred). Returns full configuration including the filter (FilterTree).
List column presets for the screener. A column preset is a saved set of data columns. Returns: id, name, columns (array of column IDs), columnWidths, isSystem. Paginated via limit/of…
List shared items (screeners/watchlists) that other users shared and you saved to your account. Paginated via limit/offset; response includes total and hasMore.
List items you've shared. Returns: id, shareKey, itemType, itemId, permissions, createdAt. Paginated via limit/offset; response includes total and hasMore.
Get details of a shared item by share key.
Delete a folder by name. This is permanent.
Update a column preset's name, columns, or column widths.
Delete a column preset. This is permanent.
Update a saved shared item's custom name, folder, or order.
Remove a saved shared item from your account.
Revoke a share link. Others will no longer be able to copy the item.
Create a new folder to organize watchlists, screeners, or other dashboard items.
Update a folder's name or order. Reference the target folder by name.
Create a new watchlist — a named collection of stock symbols for tracking. Seed membership with tickers (preferred) or symbol_ids, or omit both for an empty watchlist and add symbols…
Update a watchlist's name, favorite status, order, or folder. Reference the target by name (preferred). Does not modify symbols — use add/remove_symbols_to_watchlist for that.
Delete a watchlist by name (preferred). This is permanent and cannot be undone.
Add symbols to a watchlist by ticker. Reference the watchlist by name (preferred). Example: tickers=['AAPL','MSFT','GOOGL']. Alternatively, pass symbol_ids with symbol_index values f…
Remove symbols from a watchlist by ticker. Reference the watchlist by name (preferred). Example: tickers=['AAPL','MSFT','GOOGL']. Alternatively, pass symbol_ids with symbol_index val…
Create a new screener — a named, saved stock-screener filter. Provide the filter as a FilterTree JSON string. Use get_datapoint_definitions to discover valid datapoint IDs.
Update a screener's name, filter, favorite status, order, or folder. Reference the target by name (preferred). Omit any field to preserve its current value.
Delete a screener by name (preferred). This is permanent and cannot be undone.
Create a copy of an existing screener. Reference by name (preferred). The copy's name is the original with an incrementing number appended (" 1", " 2", …).
Create a new column preset for the screener.
List Deepvue's curated system screener presets (e.g. "S&P 500", "Up on Volume", "Russell 2000"). These are the built-in screens the product ships, NOT the user's own saved screeners…
Get one curated system screener preset, including its filter. Identify it by preset_name (as shown by list_screener_presets, case-insensitive) or by preset_id. The returned `filter`…
Create a share link for a watchlist or screener. Returns a share key that others can use to copy the item.
Save another user's shared item (screener/watchlist) to your account, with your own name/folder/order.
Reorder dashboard items. Primarily for frontend state persistence — agents typically do not need this tool.
Delete a specific alert by ID. This is permanent and cannot be undone.
Delete multiple alerts at once. Pass an array of alert IDs. This is permanent and cannot be undone.
Update an existing alert. All variant fields are optional — supply only the fields you want to change. Fields you omit are preserved from the current alert.
Get the latest NAAIM exposure index — a weekly survey of active investment managers showing their average equity allocation (0=fully short, 100=leveraged long, 200=2x leveraged). Ret…
Get NAAIM exposure index history for a date range. Returns weekly survey data: date, mean_average, most_bearish_response, quart_1, quart_2, quart_3, most_bullish_response, standard_d…
Get financial ratios for a company — profitability (ROE, ROA, gross/net/pre-tax profit margin) for the latest 11 quarters and 10 years, plus current book value per share, dividend yi…
Get the list of symbols available in Commitments of Traders (COT) reports.
Get COT reports for one or more commodity/futures contracts. Shows positioning of commercial hedgers, large speculators, and small traders. Returns data grouped by symbol.
Aggregate metrics over CLOSED positions (one outcome per position, pnl = realized P&L): totalPnL, winRate, profitFactor, avgWin, avgLoss, expectancy, maxDrawdown (from the realized e…
Equity curve data points (date, realized pnl that day, cumulative realized pnl) for the given filter window, by realization date.
Per-day realized P&L (fees on the day charged, close P&L on the closing day) with the number of positions realized that day. Open positions contribute only their realized partial clo…
Trade metrics grouped by symbol (ticker) over CLOSED positions: one outcome per position, totalPnL = realized P&L. Use to answer 'which tickers am I best/worst at'.
Trade metrics grouped by tag over CLOSED positions (a position with several tags is counted under each; untagged positions under 'Untagged'). Use to answer 'which of my setups are wo…
R-multiple distribution over CLOSED positions with an original stop (R = realized P&L / (|entry - original stop| * quantity)); positions without an original stop are excluded. Reveal…
List custom formula expressions for the authenticated user. Formulas define calculated columns for the screener (e.g. 'close / SMA(close, 200)'). Paginated via limit/offset; response…
Get a specific formula by ID. Returns the full expression definition including Name, VarName, CalcExpression, Formatting and metadata (PascalCase fields: ID, UserID, Name, ShortName,…
Create a custom formula expression for use as a calculated screener column. The expression uses a domain-specific language with functions like SMA(), EMA(), RSI(), etc. Function name…
Update an existing formula expression. Supports partial updates — only provided fields are changed.
Delete a formula by name. Removes the custom column from the user's account.
Delete multiple formulas at once by name array.
Validate a formula expression without saving. Returns whether the expression is syntactically valid and any errors.
Fork (copy) an existing formula to your account. Creates a personal copy you can modify independently.
List formulas that other users have shared with the authenticated user. Paginated via limit/offset; response includes total and hasMore.
List publicly available formulas from the community. Paginated via limit/offset; response includes total and hasMore.
Copy a shared watchlist or screener to your account using a share key.
Share a dashboard item, generating a share key that others can use to access it.
Add a shared dashboard item to your account using a share key. Item is added at the top level.
Lightweight per-symbol card: identity (ticker, name), live quote (last, change, changePct, dayLow, dayHigh), and next earnings date. Prefer this over calling get_symbol + a separate…
Rich per-symbol company card: full profile (description, sector, identifiers, employees), live quote, and latest financial ratios. Use this when you need more than a header — descrip…
Returns a watchlist's metadata plus a per-symbol snapshot (ticker, name, live price, change, changePct, dayLow, dayHigh) for every symbol in the watchlist. Phase 1 fetches the watchl…
Earnings estimate packet for a single ticker: upcoming EPS estimate (nextEarnings) and analyst consensus estimates (consensus). Use this when you need the estimate picture in one cal…
Run a screener query and get matching stocks. Supports filters, sorting, pagination, and column selection. Use get_datapoint_definitions to discover available columns and filter opti…
Run a rich, function-parameterized screener filter tree and get matching rows. Accepts the full filter-tree shape (logic/clauses, fn functions like SMA/priceVsMA/priceChange with arg…
No tools match that search.