StockLens speaks the same protocol as ChatGPT, Claude, and any MCP-compatible client -- so the intelligence moves to where the question is asked.
Query StockLens analysis inside the ChatGPT Apps runtime.
Use StockLens tools in Claude Code or claude.ai.
Point any MCP-compatible client at the StockLens server.
get_market_summaryRetrieve the latest nightly composite analysis summary for any ticker -- score, grade, domain breakdown, strengths, and challenges.
tickerstring (e.g. AAPL, MSFT, TSLA)exchange?string (e.g. NASDAQ, TSX, LSE). See full list below. Auto-resolved via autocomplete if omitted.initiate_analysisKick off a full StockLens AI analysis for a ticker. Consumes one standard or plus credit.
tickerstring (e.g. AAPL)exchange?string (e.g. NASDAQ, TSX, LSE). See full list below. Auto-resolved via autocomplete if omitted.time_range?short_2_wk | medium_1_mo | medium_2_mo | long_1_yr | long_2_yr (default medium_1_mo)risk_tolerance?low | medium | high (default medium)depth?standard | plus (default standard) (FREE tier cannot use depth="plus")LENS_AILENS_AI_PLUSfetch_analysis_resultPoll progress or retrieve a completed analysis by id. Returns status plus full scored result on completion.
analysis_idstring (id returned by initiate_analysis)get_portfolio_insightsRetrieve composite scores for every stock in the authenticated user's watchlist. FREE tier capped at 3 holdings.
Tools declare their schema
Each StockLens tool publishes its name, input parameters, and output shape through MCP discovery. Clients see structured capabilities, not free-form prompts.
Industry-standard OAuth across every surface
ChatGPT, Claude, and direct MCP clients all negotiate OAuth 2.0 Authorization Code with PKCE. Every call runs as the end user after StockLens resolves their account and tier.
Read-only, except for analysis initiation
Agents read pre-computed nightly scores, initiate credit-gated analyses, poll progress, and retrieve the authenticated user’s watchlist summaries. The only write path is the daily credit counter -- no portfolio mutation, no trade execution.
No PII, no cross-user access
Tool handlers receive only a userId and tier -- never email, sub, or raw identity. A 403 from backend-web surfaces as ANALYSIS_NOT_FOUND, never revealing whether another user’s analysis exists.
10 standard tool calls/day · No plus-depth
50 standard + 25 plus-depth tool calls/day
Unlimited tool calls (subject to fair use)
How is AAPL looking right now? Give me the composite and the domain breakdown.
get_market_summary({ ticker: "AAPL" }) -> composite_score: 78, composite_grade: "B+", domain_scores: { fundamental: 82, technical: 74, risk: 71, sentiment: 80, macro: 69 }AAPL is at 78 (B+). Fundamental and sentiment lead; risk and macro are the soft spots. Want me to run a full analysis with a long horizon?
Yes -- long horizon, medium risk, standard depth.
initiate_analysis({ ticker: "AAPL", time_range: "long_1_yr", risk_tolerance: "medium", depth: "standard" }) -> analysis_id: "a_01HXYZ", status: "pending", estimated_seconds: 30, credits_consumed: "LENS_AI"Running. One analysis credit consumed. I will poll fetch_analysis_result and share the synthesis report when it completes.
claude.ai
Open Settings → Connectors → Add custom connector in claude.ai
Point it at https://mcp.stocklens.com/mcp and sign in with OAuth (Pro, Max, Team, or Enterprise)
Enable StockLens from the + menu in any chat
Any MCP client
Point your MCP-compatible client at https://mcp.stocklens.com/mcp
Complete the secure OAuth sign-in when prompted
StockLens tools appear in your client
ChatGPT App
Install the StockLens app from the ChatGPT app directory once approved
Sign in with secure OAuth on first use
Call StockLens tools from any ChatGPT conversation
After you sign in, Settings → AI Integrations has your endpoint and the exact setup steps for each client.