Skip to main content
Glama

Stocklake — AI Stock Intelligence

Server Details

Real-time stock prices, fundamentals, technical indicators, and AI-analysed news for 1000+ stocks. Includes macro regime, market outlook, sector intelligence, insider sentiment, and earnings calendar. 12 MCP-native tools over Streamable HTTP. Free tier available, no credit card.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.2/5 across 20 of 20 tools scored. Lowest: 3.1/5.

Server CoherenceA
Disambiguation4/5

Tools are mostly distinct with clear purposes. Some overlap exists (e.g., get_screener vs search_stocks, get_technical_signals vs get_stock_rating), but descriptions effectively differentiate them by capability and use case.

Naming Consistency4/5

Naming follows a consistent get_verb_noun pattern for 19 of 20 tools. Only search_stocks deviates, which is a minor inconsistency. Overall pattern is clear and predictable.

Tool Count4/5

20 tools is slightly above average but appropriate for a comprehensive stock intelligence platform. Each tool covers a distinct aspect, and the count supports the stated purpose without being excessive.

Completeness5/5

The tool surface is remarkably thorough, covering stock data, technicals, fundamentals, AI analysis, news, sentiment, sector analysis, market overview, screening, and discovery. No obvious gaps for the intended use case.

Available Tools

20 tools
get_discovery_ideasAInspect

AI-screened stock ideas actively flagged by the Stocklake pipeline. These are stocks the pipeline's AI agents have identified as worth attention — sourced from news analysis, sector screening, and sentiment signals.

Parameters:

  • direction: "LONG" | "SHORT" | "BOTH" (default: all)

  • min_conviction: minimum conviction score 0-10 (default 7)

  • min_flag_score: minimum flag score 0-10 (default 8; 9+ = high conviction)

  • source: filter by signal source — "news" | "screener" | "sentiment" (default: all)

  • limit: max results to return (default 25, max 50)

Returns:

  • count: number of ideas returned

  • ideas[]: each with symbol, direction, conviction (0-10), confidence (0-10), flag_score (0-10), source, rationale, expires

  • Note: ideas expire daily — active ideas represent the pipeline's current view.

Pro tier only — AI pipeline cost attached.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
sourceNo
directionNo
min_convictionNo
min_flag_scoreNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses that ideas expire daily, specifies return fields, and notes cost. Lacks mention of idempotency or side effects, but sufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with sections for description, parameters, returns, and notes. Slightly verbose with repeated mention of AI pipeline, but overall efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers purpose, parameters, return structure, expiry, and cost. Missing error handling or rate limits, but given output schema exists and parameters are documented, it's fairly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, but the description enumerates all parameters with defaults, allowed values (e.g., direction sources), and score ranges. This fully compensates for the schema gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the tool returns AI-screened stock ideas flagged by the Stocklake pipeline, explaining sources. However, it does not explicitly differentiate from sibling tools like get_screener or get_market_assessment.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Mentions 'Pro tier only — AI pipeline cost attached' which is a usage constraint, but gives no guidance on when to use this tool versus alternatives, nor any when-not-to-use scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_earnings_calendarAInspect

Upcoming earnings dates for stocks in the Stocklake universe.

  • days: look-ahead window in days (default 7, max 30)

  • Returns: { window_days, from_date, to_date, count, results[] }

  • Each result: symbol, name, sector, market_cap, price, rsi, earnings_date (ISO UTC), is_estimate, eps_trailing, eps_forward

  • Sorted by earnings_date ascending.

  • Dates sourced from market data — treat is_estimate=true dates as approximate. Available to all tiers.

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully explains behavior: it returns a structured result with fields, sorting, and a caveat about approximate dates. However, it does not disclose auth needs, rate limits, or potential side effects (though none are expected).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with bullet points for return fields and a clear opening sentence. It is slightly verbose but every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has only one parameter and an output schema, the description is complete: it lists all return fields, explains sorting, and warns about approximate dates. No gaps remain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter 'days' has a default and max provided, and the description explains its purpose ('look-ahead window') and the return structure. This adds significant meaning beyond the input schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Upcoming earnings dates for stocks in the Stocklake universe,' which is a specific verb+resource combination. It is distinct from sibling tools like get_company_profile or get_stocks.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for retrieving earnings dates but does not explicitly state when to use this tool versus alternatives, nor does it provide exclusion criteria. The default and max for 'days' are given, but no when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_earnings_intelligenceAInspect

Upcoming earnings with AI context — flag scores, verdicts, and risk factors per stock. Combines the earnings calendar with AI pipeline data to surface which upcoming earnings events are worth monitoring.

Parameters:

  • days_ahead: look-ahead window in days (default 14, max 30)

  • sector: filter to one sector (e.g. "Technology")

  • min_flag_score: only return stocks with AI flag score >= this value (optional)

Returns per stock (sorted by earnings_date ascending):

  • earnings_date: ISO UTC timestamp · is_estimate: whether date is estimated

  • symbol, name, sector, price, rsi, market_cap

  • eps_trailing, eps_forward (earnings expectations context)

  • ai_verdict, ai_flag_score, ai_confidence (nightly AI pipeline)

  • ai_risks: top 2 AI-identified risk factors

  • analyst_rating, analyst_target

Pro tier only — AI pipeline cost attached.

ParametersJSON Schema
NameRequiredDescriptionDefault
sectorNo
days_aheadNo
min_flag_scoreNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full burden. It details the return fields, sorting by earnings_date, and the optional nature of parameters. It doesn't mention error handling or rate limits, but given the read-only nature, this is acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a headline, a contextual sentence, bullet lists for parameters and return fields. It is concise and front-loaded, with every sentence adding value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no required parameters and an output schema, the description covers purpose, parameters, return fields, sorting, and usage context (Pro tier, cost). It is complete enough for an agent to decide and invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description thoroughly explains all three parameters: days_ahead (default 14, max 30), sector (with example), and min_flag_score (optional threshold). This adds critical meaning beyond the schema types.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it provides 'Upcoming earnings with AI context' including flag scores, verdicts, and risk factors. It distinguishes from siblings like 'get_earnings_calendar' which likely lacks AI augmentation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use for monitoring earnings events with AI insights and notes it's 'Pro tier only' with a cost. However, it does not explicitly state when not to use it or list alternatives among the 19 sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_market_assessmentAInspect

Combined AI market assessment: macro regime + market outlook in a single call. Produced every ~4 hours by the market intelligence pipeline.

Two distinct perspectives returned together:

  • REGIME (RISK_OFF/CAUTIOUS/NEUTRAL/AGGRESSIVE): answers "how much equity risk to take" → use for position sizing and asset allocation decisions

  • OUTLOOK (BULLISH/NEUTRAL/BEARISH): answers "which direction and sectors to trade" → use for sector preference and directional bias

Both share the same pipeline run so they are always in sync.

  • history_count: include last N prior assessments for each (0-3, default 0)

  • regime_*: risk posture fields — regime, regime_bias, regime_confidence, regime_rationale, key_risks, watch_for, vix_at_assessment, regime_updated_at

  • indicators.macro_data: FRED macro data (yield curve, Fed funds, cpi_index, unemployment, M2)

  • indicators.volatility_term_structure: VIX spot/3M/6M term structure + contango signal

  • indicators.market_sentiment: CNN Fear & Greed value and label

  • market_context: price/RSI/SMA200/perf snapshot of SPY/QQQ/IWM/TLT/GLD/VIX/TNX + sectors NOTE: point-in-time snapshot recorded when AI ran — not live prices (use get_market_pulse for live)

  • outlook_*: directional fields — outlook, outlook_conviction, equity_view, preferred_sectors, avoided_sectors, catalyst, outlook_key_risk, outlook_rationale, outlook_updated_at

Pro tier only — AI pipeline cost attached.

ParametersJSON Schema
NameRequiredDescriptionDefault
history_countNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses key behavioral traits: it's updated every ~4 hours, contains point-in-time snapshots (not live), and is a Pro tier tool with associated cost. Since no annotations are provided, the description fully carries the transparency burden and does so comprehensively.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured with clear sections and bullet points, making it easy to parse. Although it is somewhat long, every sentence adds value, and front-loading the main purpose improves usability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (returning many fields), the description thoroughly explains each output component (regime, outlook, indicators, market context) and their use. Since an output schema exists, the description complements it well without redundancy.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has only one parameter (history_count) with 0% schema description coverage, but the description explains its purpose and valid range (0-3). This adds necessary meaning beyond the bare schema, justifying a 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: providing a combined AI market assessment with macro regime and market outlook in a single call. It distinguishes itself from siblings like get_market_pulse by specifying that this tool returns a snapshot and not live prices.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells when to use each component: regime for position sizing and asset allocation, outlook for sector preference and directional bias. It also advises using get_market_pulse for live data, offering clear alternative guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_market_moversAInspect

Top market movers from the Stocklake universe — gainers, losers, most active.

  • category: "gainers" | "losers" | "most_active" | "all" (default "all" = all 3 categories)

  • limit: results per category (default 10, max 20)

  • min_market_cap_b: filter to stocks above this market cap in billions (e.g. 1.0 = $1B+)

Returns per stock: symbol, name, sector, price, change_pct, volume, rsi, market_cap Available to all tiers.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
categoryNoall
min_market_cap_bNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It states 'Available to all tiers' and lists return fields. Could mention data freshness or rate limits, but current info is sufficient for safe invocation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Highly concise with bullet points for parameters. No extraneous words. Front-loaded with purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Includes output fields and param constraints. Could mention sorting order or pagination, but for a simple list tool this is adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, but description adds significant meaning: explains category values, limit default and max, min_market_cap_b with an example. This goes beyond the schema's type definitions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states 'Top market movers from the Stocklake universe — gainers, losers, most active.' The description uses specific verbs and resources, distinguishing it from sibling tools like get_market_assessment or get_screener.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Describes parameters and default values but does not explicitly compare to alternatives. However, the categories (gainers, losers, most_active) make usage clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_market_pulseAInspect

Live market health snapshot in a single call. Aggregates key market indicators without requiring multiple tool calls. No AI cost — reads live data directly from the market data feed.

Returns:

  • vix: VIX level and change_pct (from live stocks data)

  • fear_greed: value (0-100) and label (e.g. "neutral", "greed", "fear")

  • breadth: market-wide RSI distribution — oversold_pct, overbought_pct, neutral_pct, universe_size

  • indices: SPY, QQQ, IWM prices + RSI + 1-week performance

  • bonds: TLT (long-duration bonds), GLD (gold)

  • updated_at: when the breadth/fear_greed snapshot was last recorded Available to all tiers.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description handles behavioral disclosure well by stating it reads live data directly, has no AI cost, and lists all return fields. It does not mention potential caching or rate limits, but overall provides sufficient transparency for a read-only snapshot tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is fairly concise but includes a detailed bullet list of return fields, which is helpful but slightly verbose. It is front-loaded with the core purpose. Structure is clear with line breaks, though it could be more streamlined.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given zero parameters and the presence of an output schema, the description fully explains the return values. It covers all key aspects of the tool's use case and data provided, making it complete for a simple read-only tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the description need not explain schema. Schema coverage is 100% (empty object). Per guidelines, baseline is 4 for zero parameters; the description adds no param info but doesn't need to.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool provides a 'live market health snapshot' aggregating key indicators, with a specific verb ('get') and resource ('market_pulse'). It distinguishes itself from siblings by offering a single-call aggregate of multiple market metrics, unlike other tools focused on specific stocks or sectors.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use when needing a quick market overview without multiple calls and mentions 'no AI cost'. However, it does not explicitly state when not to use it or provide alternatives among siblings (e.g., get_market_assessment). There is no direct guidance on when this tool is preferred over others.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_news_feedAInspect

Top AI-flagged news across all tracked stocks — the market-wide news briefing. Unlike get_stock_news (per-symbol), this scans the entire universe and returns the most notable articles ranked by AI flag score, newest first within each score tier.

Use this for:

  • Morning briefing: "what happened in the market this week?"

  • Catalyst scanning: "what news is driving moves right now?"

  • Event monitoring: "which stocks have high-impact news today?"

  • min_flag_score: minimum AI flag score (default 8, min 5, max 10) 8 = notable · 9 = high-impact · 10 = exceptional

  • days: look-back window in days (default 3, max 10)

  • limit: max articles returned (default 10, max 25)

  • Per article: symbol, title, published_at, ai_sentiment, ai_flag_score (0-10), ai_summary (full text), ai_confidence (0-10)

Pro tier only — AI pipeline cost attached.

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNo
limitNo
min_flag_scoreNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, but the description fully compensates: it discloses the ranking by AI flag score, newest-first ordering within tiers, and the fact that it is Pro tier with AI pipeline cost attached. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a clear introductory sentence, bullet points for usage and parameters, but it is slightly verbose. Still, every sentence is informative and earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has only 3 parameters, no annotations, and an output schema exists, the description covers all necessary context: purpose, usage, parameter details, behavioral traits, and output format. It is self-contained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description explains all three parameters with defaults, ranges, and meaning of values (e.g., min_flag_score 8=notable, 9=high-impact, 10=exceptional). It also lists output fields.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it returns top AI-flagged news across all tracked stocks, distinguishing from get_stock_news (per-symbol). The verb 'get' plus 'news feed' and the market-wide scope are specific.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit use cases are listed (morning briefing, catalyst scanning, event monitoring) and the description contrasts with get_stock_news for when per-symbol news is needed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_screenerAInspect

Power screener — filter stocks by technicals, fundamentals, and AI signals. More capable than search_stocks: exact RSI bounds, MACD/SMA filters, presets, and AI fields.

Parameters:

  • sector: e.g. "Technology", "Healthcare", "Financial Services"

  • min_rsi / max_rsi: exact RSI bounds (e.g. min_rsi=30, max_rsi=50 = post-oversold recovery zone)

  • sma_trend: "above_200" (price above 200-day MA) | "below_200"

  • macd_signal: "bullish" (MACD line above signal) | "bearish"

  • min_perf_1d / max_perf_1d: 1-day performance % (e.g. min_perf_1d=2.0 = up 2%+ today)

  • min_market_cap_b / max_market_cap_b: market cap in billions

  • max_pe_forward: maximum forward P/E (e.g. 20 = value screen)

  • min_flag_score: minimum AI flag score 0-10 (pro tier only — silently ignored for free)

  • preset: "oversold" | "overbought" | "momentum" | "high_conviction" (pro only) oversold = RSI≤35 + above SMA200 · overbought = RSI≥65 momentum = RSI 50-70, above SMA200, up 0.5%+ today · high_conviction = flag_score≥7

  • sort_by: "market_cap" | "rsi" | "perf_1d" | "analyst_rating" | "flag_score" (pro)

  • sort_dir: "asc" | "desc" (default "desc")

  • limit: 1–50 (default 20)

Pro tier: adds flag_score + ai_verdict to every result row, enables min_flag_score filter and high_conviction preset. All other filters available to all tiers.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
presetNo
sectorNo
max_rsiNo
min_rsiNo
sort_byNomarket_cap
sort_dirNodesc
sma_trendNo
macd_signalNo
max_perf_1dNo
min_perf_1dNo
max_pe_forwardNo
min_flag_scoreNo
max_market_cap_bNo
min_market_cap_bNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full burden. It discloses pro tier limitations and parameter behaviors (e.g., min_flag_score silently ignored for free), but lacks details on side effects, rate limits, or authentication requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a clear parameter list, but it is long. Some repetition (e.g., preset definitions) could be trimmed. Overall, it is organized and front-loaded with the main purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the high parameter count and absence of annotations, the description covers nearly all parameter details, tier behavior, and preset definitions. It lacks explicit output format details, but the presence of an output schema mitigates this need.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, yet the description adds extensive meaning for each of the 15 parameters, including examples, valid values, and context (e.g., 'min_rsi=30, max_rsi=50 = post-oversold recovery zone'). This fully compensates for the schema gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is a stock screener filtering by technicals, fundamentals, and AI signals, and distinguishes from search_stocks by highlighting advanced capabilities like exact RSI bounds and presets.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly contrasts with search_stocks ('More capable than search_stocks'), providing a comparative usage hint. However, it does not detail when not to use this tool or list alternatives beyond that single comparison.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sector_intelligenceAInspect

AI-assessed sector intelligence: signal, cycle stage, rotation signal, drivers, alerts, and computed statistics per sector (RSI distribution, breadth, performance 1W/1M, top/bottom movers, historical percentiles). Pass a sector name for a single sector, or omit the parameter (or pass None) to get the latest assessment for all 11 sectors.

Refreshed every ~4 hours by the market intelligence pipeline. Available to pro tier only (AI pipeline costs).

ParametersJSON Schema
NameRequiredDescriptionDefault
sectorNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description provides useful behavioral details: it is AI-assessed, refreshed every 4 hours, and pro-tier only. It does not disclose error handling for invalid sector names, rate limits, or whether the operation is read-only, leaving some gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences long, front-loading the outputs and then covering usage and operational details. It is efficient, though the list of outputs could be slightly more compact.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the single optional parameter, existing output schema, and clear description of outputs and usage, the tool is well-specified. Minor omissions like error handling or example sector names prevent a higher score.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter 'sector' has 0% schema coverage, but the description compensates by explaining that passing a name returns data for that sector, while omitting or passing None returns all 11. This adds clear semantic meaning beyond the schema type.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool as providing AI-assessed sector intelligence with a specific list of outputs (signal, cycle stage, rotation signal, drivers, alerts, statistics). It distinguishes itself from sibling tools by focusing on sector-level data, and specifies the behavior for single vs. all sectors.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly explains how to use the parameter: pass a sector name for a single sector or omit for all 11. It also mentions refresh rate and pro tier availability. However, it does not explicitly contrast with siblings to guide when to choose this tool over others.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sector_rotationAInspect

All 11 market sectors in one call — signals, breadth, and momentum for rotation analysis. Where get_sector_intelligence gives deep analysis for one sector, this gives the rotation picture across all sectors simultaneously.

Use for: identifying sector rotation, finding leading vs lagging sectors, spotting breadth divergences, allocating capital across sectors.

Returns per sector (sorted by signal strength, LEADING first):

  • signal: LEADING | STRONG | NEUTRAL | WEAK | LAGGING

  • confidence: 0-10

  • alert: notable condition (narrow breadth, extreme RSI, etc.)

  • avg_rsi: sector-average RSI

  • sma200_breadth_pct: % of stocks in sector above their 200-day MA

  • oversold_pct / overbought_pct: RSI distribution extremes

  • perf_1w_pct / perf_1m_pct: average sector performance

  • updated_at: when this sector was last assessed by the AI pipeline

  • history_count: include last N prior signal states per sector (0-3, default 0) Pro tier only — AI-enriched sector signals.

ParametersJSON Schema
NameRequiredDescriptionDefault
history_countNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. Reveals return structure with field explanations, indicates a 'Pro tier' restriction for AI-enriched signals. Implies read-only operation. Thorough behavioral disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with bullet points for return fields. Front-loaded with purpose. Slightly long but every sentence adds value. Efficient for a tool returning complex per-sector data.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (11 sectors, multiple metrics) and output schema presence, description fully covers what the agent needs for correct invocation and understanding. Single parameter is well-documented.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Only one parameter (history_count) with 0% schema description coverage. Description explains its purpose ('include last N prior signal states') and valid range (0-3, default 0), adding significant meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it covers all 11 sectors for rotation analysis, with a specific verb 'get' and resource 'sector_rotation'. Distinguishes from sibling tool get_sector_intelligence by contrasting broad vs deep analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly lists use cases: identifying sector rotation, leading vs lagging sectors, breadth divergences, capital allocation. Contrasts with get_sector_intelligence. Lacks explicit when-not-to-use but provides clear context for appropriate usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sentiment_profileAInspect

Get AI-synthesized insider + institutional sentiment for a stock. Returns combined signal (BULLISH/BEARISH/NEUTRAL etc.), flag_score (8+=notable), confidence, per-source breakdown, and a human-readable summary. Data covers insider transactions (SEC Form 4) and institutional holdings. Pro tier only — AI pipeline cost attached.

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description provides good transparency: it is AI-synthesized, uses nightly batch data from SEC Form 4 and Nasdaq institutional, and returns a summary. It lacks mention of rate limits or error cases.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (4 sentences), front-loaded with the purpose, and each sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema, the description adds useful context about data source, processing (nightly), and tier restriction. It could mention pagination or limits, but is largely complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Only one parameter (symbol) with 0% schema description coverage. The description compensates by implying the symbol is a stock ticker from the context 'for a stock,' making it clear. No additional schema needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Get AI-synthesized insider + institutional sentiment for a stock.' It lists specific outputs (combined signal, flag_score, etc.) and distinguishes from siblings like get_stock_rating by focusing on sentiment.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions 'Pro tier only — AI pipeline cost attached,' giving a usage constraint, but does not explicitly compare to alternative tools or state when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_stockBInspect

Price, fundamentals, technical indicators, and company profile for a stock. Returns all data needed to understand a stock in a single call.

Key fields:

  • price, change_pct, prev_close, week52_high/low, volume, avg_volume

  • market_cap, enterprise_value, beta

  • pe_trailing, pe_forward, price_to_book, dividend_yield, dividend_rate

  • debt_to_equity, profit_margins, return_on_equity, free_cashflow

  • revenue_growth, earnings_growth, revenue_ttm, gross_profit_ttm

  • analyst_rating: "strong_buy"|"buy"|"hold"|"sell"|"strong_sell" (analyst consensus)

  • analyst_rating_score: 1.0–5.0 mean analyst recommendation (1=strong_buy, 5=strong_sell)

  • analyst_target: mean analyst price target

  • analyst_count: number of analyst opinions

  • indicators: RSI, MACD, Bollinger Bands, SMA20/SMA200, EMA20/EMA200, ATR, ma_50, ma_200

  • description: company business description

  • website, employees, officers (top 5: name, title, total_pay)

  • updated_at: last data sync timestamp Available to all tiers.

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description must bear the burden of behavioral disclosure. It only lists the data types returned but omits critical details like read-only nature, authentication needs, rate limits, or data freshness. This gap limits the agent's ability to assess safe usage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

At 7 words, the description is extremely concise and front-loaded with the key outputs. However, its brevity sacrifices critical usage context. It earns its place but could expand slightly without losing efficiency.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (1 required param) and the presence of an output schema, the description provides a basic overview. However, with 11 siblings and no differentiation, the context feels incomplete for an agent to reliably select this tool in a complex workflow.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage for the parameter 'symbol', and the tool description does not clarify the expected format (e.g., ticker vs name) or add constraints. Beyond implying the parameter identifies the stock, the description adds minimal value over the parameter name alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns 'price, fundamentals, and technical indicators' for a stock, using a specific verb and resource. It effectively distinguishes from siblings like get_stock_history (historical prices) and get_company_profile (company info), making its purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus the 11 siblings listed. There is no mention of use cases, prerequisites, or exclusions, leaving the agent without context for tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_stock_ai_summaryAInspect

AI research summary for a stock — verdict, confidence, key points, and risk factors. Generated by the Stocklake AI pipeline (stock_ai_summary.py) on a nightly refresh cycle.

Returns:

  • verdict: "bullish" | "bearish" | "neutral"

  • confidence: 0-10 (how confident the AI is in its assessment)

  • flag_score: 0-10 (how notable/interesting this stock is right now — 8+ = worth attention)

  • summary: 2-4 sentence AI narrative

  • key_points: list of 3-5 bullish/neutral observations

  • risks: list of 2-3 specific risk factors

  • price_at_generation: stock price when the summary was generated

  • generated_at: UTC timestamp of last generation

Pro tier only — AI pipeline cost attached.

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully discloses behavioral traits: nightly refresh cycle, price_at_generation timestamp, and cost implications. This provides sufficient transparency for an AI agent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-organized with bullet points and clear sections. However, it includes a minor technical detail (pipeline filename) that may be unnecessary for an AI agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema, the description covers the parameter and return values adequately. It adds value by explaining the nightly refresh and cost, making it fairly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter 'symbol' has 0% schema description coverage, and the description does not elaborate on its format or examples. It only implies the symbol is a stock ticker, which is insufficient compensation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool returns an AI research summary for a stock, including verdict, confidence, key points, and risk factors. It distinguishes itself from sibling tools like get_stock or get_stock_rating.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions 'Pro tier only — AI pipeline cost attached', implying a premium usage context. However, it lacks explicit guidance on when to use this tool versus alternatives like get_stock_rating or get_technical_signals.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_stock_historyAInspect

Daily OHLCV price history for a stock.

  • days: number of trading days to return (default 90, max 365)

  • Returns: { symbol, days, count, history[] }

  • Per bar: date, open, high, low, close, volume

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNo
symbolYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It specifies return format, default/max days, but doesn't disclose data source, update frequency, or potential limitations like trading day counting.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Extremely concise: one-line purpose, bullet for parameter, then return format. No wasted words. Information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple tool (2 params, no nested objects) and that an output schema exists, the description fully covers the tool's functionality and return structure. No gaps remain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 0% description coverage, so the description adds vital info: the 'days' parameter's default (90) and max (365). For 'symbol', it only restates requirement. Overall, it adds meaningful constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it provides 'Daily OHLCV price history for a stock', which distinguishes it from siblings like get_stock (current price), get_stock_news, etc. The verb 'get' and resource 'stock history' are specific.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. It does not mention, for example, that get_stock provides current data while this gives historical data, or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_stock_newsAInspect

AI-analysed news for a stock, newest first. Only returns articles processed by our AI pipeline (sentiment, flag score, summary).

  • days: look-back window in days (default 30, max 30)

  • limit: max articles returned (default 10, max 10)

  • status: "ok" = articles returned | "empty" = no news in window

  • Per article: title, published_at, ai_sentiment, ai_flag_score (0-10), ai_summary (full text), ai_confidence (0-10) Pro tier only — AI pipeline cost attached.

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNo
limitNo
symbolYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Since no annotations are provided, the description carries the full burden. It discloses that articles are AI-processed with sentiment, flag score, and summary, and explains the status field and per-article fields. It also mentions default and maximum values for days and limit. However, it does not explicitly state that the tool is read-only or safe, which would have been helpful.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the main purpose and then uses a concise bullet list for additional details. Every sentence adds value without redundancy or wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (3 input params, simple output) and the presence of an output schema (inferred), the description covers all necessary aspects: input defaults and limits, output fields and status. It is fully adequate for an AI agent to use correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage, but the description text adds meaning by explaining the days and limit parameters with defaults and maximums, and describes the output fields in detail. The required 'symbol' parameter is not elaborated, but it is obvious from the tool name.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it provides AI-analysed news for a stock, newest first. It distinguishes itself from sibling tools like get_stock_history or get_stock_rating by focusing on news with AI processing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for obtaining stock news but does not provide explicit guidance on when to use this versus alternatives such as get_market_outlook or get_sector_intelligence. No when-not-to-use or exclusion criteria are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_stock_ratingAInspect

Technical rating (0–10) for a stock with per-indicator breakdown. Uses RSI, MACD, Bollinger Bands, and SMA50/SMA200 trend analysis.

  • rating: 0–10 composite score

  • direction: BULLISH (≥6) | NEUTRAL (4–6) | BEARISH (≤4)

  • signals: per-indicator breakdown with verdict and strength Available to all tiers (guest, free, pro) — computed from stored indicators, no AI cost.

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and discloses key behaviors: uses RSI, MACD, Bollinger Bands, SMA50/SMA200; rating scale 0-10; direction thresholds; per-indicator signals; and that it's computed on demand from live indicators. It lacks details on error handling or rate limits but covers the essential behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, well-structured with bullet points, and every sentence contributes meaning. It is front-loaded with the core purpose and provides necessary details without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity and the presence of an output schema (context signal), the description adequately explains the output fields (rating, direction, signals). It could be more complete by mentioning error cases or input validation, but overall it provides sufficient context for an agent to use the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has one parameter (symbol) with 0% description coverage, and the description does not add meaning for this parameter (e.g., format or allowed values). Since the parameter is standard and self-explanatory, it meets the baseline, but the description could compensate more for the lack of schema documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Technical rating (0–10) for a stock with per-indicator breakdown', specifying the output structure and distinct function. It differentiates well from sibling tools like get_stock (price data) or get_stock_history (historical data).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions 'Pro tier only — computed on demand from live indicators', giving context about usage, but does not provide explicit guidance on when to use this tool over alternatives (e.g., for fundamental analysis use get_company_profile). The usage is implied but not fully delineated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_stocksAInspect

Batch stock data for up to 50 symbols in a single call. Returns a dict keyed by symbol. Missing symbols are omitted from the result. Each symbol in the batch counts as one call toward the daily limit. Available to all tiers.

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description discloses batch limit (10), behavior for missing symbols (omitted), and daily limit constraint. No destructive behavior expected.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three concise sentences, each providing essential information: operation and limit, return structure, and tier/daily limit. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers batch size, missing symbols, and tier info. Output schema likely details return fields. Lacks explicit guidance on when to use over 'get_stock', but otherwise complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, but the description adds the constraint 'up to 10 symbols' and explains the return dict keyed by symbol, adding meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description specifies 'batch stock data for up to 10 symbols' and distinguishes from the sibling tool 'get_stock' which likely handles a single symbol. The return format is explicitly described.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implies use for multiple symbols (up to 10) but does not explicitly state when not to use or compare with siblings like 'get_stock'. Provides tier and daily limit info.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_symbol_contextAInspect

Full research context for a symbol in one call — fundamentals, AI summary, news, sentiment, and discovery status. Replaces 5 separate calls: get_stock + get_stock_ai_summary + get_stock_news

  • get_sentiment_profile + get_discovery_ideas (for one symbol).

Returns:

  • stock: price, name, sector, rsi, pe_forward, market_cap, 52-week range, analyst data

  • ai_summary: verdict, confidence, flag_score, full summary, key_points, risks

  • news: last 3 high-relevance articles (title, published_at, ai_sentiment, ai_flag_score, ai_summary)

  • sentiment: signal, confidence, insider_trend (buying/selling/neutral), institutional_pct

  • discovery: active discovery idea for this symbol, if any (direction, conviction, rationale)

All data is pre-computed by the Stocklake AI pipeline — no live AI calls on request. Pro tier only.

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses that data is pre-computed ('no live AI calls on request'), which is key behavioral information. It also outlines the return structure in detail. However, it does not mention error handling (e.g., for invalid symbols) or other constraints like rate limits. Overall, substantial transparency given zero annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured: a one-sentence value proposition, a list of replaced calls, and a bulleted breakdown of each returned section. Every sentence serves a purpose, and the layout improves readability. No redundant or overly verbose content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (multiple return categories) and existence of an output schema, the description effectively documents the return structure. It also mentions the pre-computed nature. It does not cover potential edge cases (e.g., missing data for a symbol) or additional usage notes, but overall it provides sufficient context for an AI agent to use the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 1 required parameter ('symbol') with 0% description coverage. The tool description does not elaborate on the parameter beyond using the word 'symbol', leaving the format (e.g., ticker) implicit. Since the parameter is simple and the tool name clarifies its meaning, this is minimally acceptable but does not add significant value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it provides 'Full research context for a symbol in one call' and lists the specific data components (fundamentals, AI summary, news, sentiment, discovery). It explicitly distinguishes itself from 5 sibling tools by naming them and stating it replaces separate calls.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use this tool (for full context in one call) and references the tier restriction ('Pro tier only'). It implicitly suggests using individual sibling tools for granular data, but does not explicitly state when not to use this tool. This is clear context with minor room for exclusion guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_technical_signalsAInspect

Structured technical signal summary — agent-ready labeled outputs for a stock. Unlike get_stock_rating (composite score + nested breakdown), this returns flat labeled signals optimized for programmatic consumption without parsing raw numbers.

Returns:

  • overall: BULLISH | NEUTRAL | BEARISH (composite)

  • rsi: value + signal label (oversold / recovering / neutral / approaching_overbought / overbought)

  • macd: signal (bullish/bearish), histogram, strength (strong/moderate/weak)

  • bollinger: position (below_lower / lower_half / upper_half / above_upper), bandwidth_pct

  • sma200: trend (above/below), gap_pct (distance from 200-day MA as %)

  • sma50: trend (above/below), gap_pct Available to all tiers.

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden for behavioral disclosure. It thoroughly explains the output structure (overall, rsi, macd, bollinger, sma200, sma50) and implies a read-only operation. However, it does not discuss potential errors, rate limits, or required permissions, which would enhance transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concisely structured with a clear first sentence stating purpose, followed by an explicit contrast with a sibling tool, and a well-organized bullet list of return fields. Every sentence adds value with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has a single parameter, no annotations, and an output schema, the description is remarkably complete. It covers the entire output structure in detail, differentiates from a relevant sibling, and provides sufficient context for an AI agent to select and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, meaning the input parameter 'symbol' has no description. The description does not explicitly define the symbol parameter but implicitly indicates it is a stock symbol. Given the standard nature of the parameter, the lack of additional information is acceptable, but the description does not fully compensate for the missing schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it returns a structured technical signal summary for a stock, using a specific verb ('get') and resource ('technical signals'). It also explicitly distinguishes from the sibling tool get_stock_rating, which provides a composite score with nested breakdown.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use this tool versus get_stock_rating, noting that this tool returns flat labeled outputs optimized for programmatic consumption. It also mentions that it is 'Available to all tiers,' indicating no access restrictions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_stocksAInspect

Filter and rank stocks from the Stocklake universe.

  • sector: e.g. "Technology", "Healthcare", "Financial Services"

  • country: e.g. "United States", "Germany"

  • rsi_signal: "oversold" (<30) | "overbought" (>70) | "neutral" (30–70)

  • analyst_rating: "strong_buy" | "buy" | "hold" | "sell" | "strong_sell"

  • min_volume: minimum daily volume (e.g. 1000000)

  • min_market_cap_b: minimum market cap in billions (e.g. 10 = $10B+)

  • max_market_cap_b: maximum market cap in billions (e.g. 2 = small-cap only up to $2B)

  • max_pe_forward: maximum forward P/E ratio filter (e.g. 20 = value screens)

  • sort_by: "change_pct" | "volume" | "market_cap" | "rating" | "rsi_asc" (oversold first) | "rsi_desc" (overbought first)

  • limit: max 50 (default 20)

  • Returns: { count, filters, results[] } — each result includes symbol, name, sector, price, change_pct, volume, market_cap, rsi, pe_forward, analyst_rating, rating (0–10), direction Available to all tiers.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
sectorNo
countryNo
sort_byNochange_pct
min_volumeNo
rsi_signalNo
analyst_ratingNo
max_pe_forwardNo
max_market_cap_bNo
min_market_cap_bNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, but the description details the parameters, return format ('count, filters, results[]') and each field in results. Does not mention destructive behavior; implies read-only. Sufficient for a filtering tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with bullet points for each parameter and return format. A few redundant lines (e.g., 'Returns:...' is slightly long) but overall efficient. Could be tightened without losing value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 8 parameters and no schema descriptions, the description covers all key aspects: allowed values, defaults, and return structure. Lacks explanation of ranking mechanics (e.g., how sort_by interacts) but sufficient for basic use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, but the description compensates fully by listing examples for each parameter (e.g., sector: 'Technology', 'Healthcare'; rsi_signal: 'oversold' (<30) etc.) and explaining allowed values like sort_by options. Adds significant meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Filter and rank stocks from the Stocklake universe' with specific filter parameters, distinguishing it from sibling tools like get_stock (single stock) or get_stocks (likely listing without filtering).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides examples of values for each parameter but does not explicitly state when to use this tool over others (e.g., get_stock for a single stock, get_stock_rating for ratings). No when-not or alternative recommendations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources