Skip to main content
Glama

Screen stocks

screen_equities
Read-onlyIdempotent

Screen stocks by hand: list the companies that pass a screen, unweighted and unsaved.

For exploring stocks before anything is saved. The ways to build a portfolio,
including when the screener is one of them, are in ``describe_build_options``;
a ready-made strategy on a theme or sector is found with ``find_portfolios``.

Each company comes with its country, sector and, under a factor tilt, the score
it was ranked on (its fit to the tilts) and each factor on its own axis.
Factors are axes, not styles: valuation high is expensive and low is cheap
('value'); size low is small caps ('size'); for quality pass the one factor
'quality', which splits its share between its parts. ``maximum_number_of_assets`` keeps
the largest by market cap; a size tilt scores every large cap the same. A
company with several share classes is listed once, by its most traded line,
unless ``asset_ids`` names the classes. ``request`` echoes the arguments, which
``solve_equity_weights`` and ``build_equity_strategy`` take unchanged; a strategy
built from them re-runs the screen at every rebalance. The listed ids are this
date's selection only. Where a card is drawn it lists every company that passed,
so one screen is one call.

``sizes`` defaults to large and mid; a theme usually needs small caps too, and
micro caps where that finds nothing. An empty theme screen says whether the
region has no members at any size. The funnel says how many names each stage
kept. ``date`` screens as of a past date; data before 2022 is sparse enough to
reorder a universe, and nothing can be screened before 2005, or with micro caps
before 2021-01-29.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "screen_equities"
  }
}

Input Schema

NameRequiredDescriptionDefault
dateNo
sizesNo
themesNo
regionsNoISO-3 country codes ('SWE'), country names ('Sweden') or the groups 'global', 'nordics', 'europe' (which includes the Nordics) and 'north_america'. Where a company is LISTED, not where it is based: a foreign company with a local listing counts in that country.
sectorsNo
asset_idsNo
esg_filterNo
industriesNo
fundamentalsNo
gics_excludeNoGICS codes whose companies are dropped, at any level: 2-digit sectors, or 4-, 6- and 8-digit codes from find_gics.
theme_excludeNo
company_excludeNo
min_dividend_yieldNoKeep only companies whose trailing 12-month dividend yield is at least this, e.g. 0.03 for 3%. Applied after a tilt: the tilt keeps its share (fundamentals_percentage_select) of the screened universe, then the floor keeps the yielders among those.
maximum_number_of_assetsNoAt most 500; empty means 500.
fundamentals_percentage_selectNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Annotations only say read-only/non-destructive; the description adds substantial non-obvious behavior: how share classes are collapsed to one line unless asset_ids names them, that the returned ids are this date's selection only, that a strategy re-runs the screen at each rebalance, that a size tilt scores all large caps equally, and hard history limits (nothing before 2005, micro caps before 2021-01-29). It also pre-empts the biggest misuse ("quality ... never its parts and never beside them").

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?

Purpose and the alternative-routing sentence are front-loaded, and most of the density is earned for a 15-parameter screener. Some sentences are cryptic rather than concise ("Where a card is drawn it lists every company that passed, so one screen is one call") and could be tightened without losing information.

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?

With 15 optional params, no output schema, and thin schema coverage, the description carries most of the burden and covers return composition (country, sector, factor score per axis), the funnel output, and empty-result behavior. It stops short of describing the full result shape or limits, but for a read-only screener it is close to sufficient.

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?

Coverage is 27%, so the description must compensate, and it does for several key params: sizes defaults to large+mid with guidance for themes, maximum_number_of_assets keeps the largest by market cap, asset_ids names share classes, date screens as of a past date, and the factor/direction semantics are explained in depth. However industries, gics_exclude, theme_exclude, company_exclude, esg_filter, themes, and fundamentals_percentage_select are undocumented in both the description and the schema, leaving a large blind spot.

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?

"Screen stocks by hand: list the companies that pass a screen, unweighted and unsaved" names a specific verb, resource, and the two defining constraints (no weighting, nothing persisted). It also distinguishes itself from the saved/portfolio path (find_portfolios, build_equity_strategy) and from solve_equity_weights without requiring the reader to open any schema.

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?

"For exploring stocks before anything is saved" states the when, and it explicitly routes elsewhere for alternatives: describe_build_options for portfolio construction, find_portfolios for a ready-made theme/sector strategy. Downstream handoff is also spelled out ("request echoes the arguments, which solve_equity_weights and build_equity_strategy take unchanged").

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.

Resources