Skip to main content
Glama

US Stock Screener

stock_screener
Read-only

Screen stocks by share type — the API twin of TradingView's "Common stock" / "Preferred stock" symbol-search filter.

Args:
    country: TradingView market name — e.g. america, korea, germany,
        brazil, japan, uk, india, turkey, canada, australia, france, hongkong
    stock_type: common | preferred
    limit: rows to return (max 2000, single upstream request), ranked by market cap descending
    exclude_otc: default True — drop OTC listings (foreign companies traded
        over-the-counter); "america" otherwise means "US venue", not "US company"
    compact: default False — True returns only ticker/symbol/price/currency/
        change_percent per row (light payload for bulk price feeds)
    sort_by: market_cap (default) | dividend_yield | change | price —
        server-side descending sort over the WHOLE market, so e.g.
        sort_by=dividend_yield with limit=20 is the market's true top-20
        dividend payers, not just the biggest companies re-sorted

Returns:
    Envelope dict: total_matches (market-wide count), returned, and rows
    of {ticker, symbol, description, exchange, price, open, high, low,
    currency, change_percent, dividend_yield, market_cap} — price is the
    current/last close; open/high/low are the current session's daily bar. Prices are in the
    market's local currency (e.g. KRW for korea).

Input Schema

NameRequiredDescriptionDefault
limitNo
compactNo
countryNoamerica
sort_byNomarket_cap
stock_typeNocommon
exclude_otcNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Goes well beyond the readOnly/openWorld annotations by disclosing ranking behavior (market-cap descending), the single-upstream-request/2000-row cap, the OTC-exclusion default and its interpretation nuance, local-currency pricing, and that open/high/low are the current session's daily bar. These are exactly the operational traits an agent needs and none are derivable from the structured fields.

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 front-loaded purpose followed by Args and Returns sections; each entry carries real information. It runs long and includes some editorializing (the TradingView twin framing, the market-cap caveat) that could be tightened, but nothing is truly wasted.

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?

With no output schema, the description supplies the return envelope (total_matches, returned, rows) and every row field including currency and price-timeframe semantics. Combined with the fully documented args, an agent has everything needed to call and interpret the tool without further discovery.

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%, so the description must carry the full param burden, and it does: country examples, stock_type allowed values (common|preferred), limit max and ranking, exclude_otc default and semantics, compact payload contents, and sort_by allowed values with their whole-market sort meaning. Essentially every parameter is fully specified with behavior the bare schema omits.

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?

States a specific verb+resource ('Screen stocks by share type') and frames the exact semantic scope via the TradingView 'Common stock'/'Preferred stock' analogy, so an agent immediately knows what it selects. The multi-country list in the args clarifies it is a global screener despite the 'US Stock Screener' title, which sharpens rather than muddies the purpose. It is distinguishable from the Egypt-specific sibling egx_stock_screener by the country semantics, even without naming it.

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?

Gives clear usage context: compact=True is for 'bulk price feeds', sort_by=dividend_yield with limit=20 yields the market's true top-20 payers, and exclude_otc clarifies that 'america' means US venue not US company. It does not, however, name any sibling or state when to prefer an alternative (e.g., egx_stock_screener vs this tool), so no explicit exclusions or routing are provided.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.