Docs menuexpand_more
MCP tool
screen_stocks
Key points
- check_circleIt maps to the REST endpoint /stable/screener, with the same response shape.
- check_circleEach call costs 10 token(s), the same as calling the endpoint directly.
- check_circleRequired arguments: none
What this tool returns
Filters Japanese stocks by combining conditions such as market cap, PER, PBR, ROE and dividend yield. All conditions are optional; stocks meeting every condition you set are returned, ordered by the metric you choose. Ratios (ROE, ROA, dividend yield) are 0–1 decimals (0.1 = 10%).
Description sent to AI clients
Screen Japanese listed companies by valuation, profitability and dividend criteria. Combine any of the *MoreThan / *LowerThan filters. 条件を組み合わせた銘柄スクリーニング。Costs 10 tokens.
The model reads this description to choose the tool. It is written in both English and Japanese.
What you can answer with it
- chatFind candidates with a high dividend yield and a low PBR
- chatLook for high-ROE stocks within a sector
- chatList small and mid caps within a market-cap range
Arguments
Argument names are the same as the REST query parameters. Optional arguments can be omitted.
| Argument | Type | Required | Description |
|---|---|---|---|
| marketCapMoreThan | number | — | Minimum market cap (JPY) |
| marketCapLowerThan | number | — | Maximum market cap (JPY) |
| perMoreThan | number | — | Minimum PER (times) |
| perLowerThan | number | — | Maximum PER (times) |
| pbrMoreThan | number | — | Minimum PBR (times) |
| pbrLowerThan | number | — | Maximum PBR (times) |
| roeMoreThan | number | — | Minimum ROE (0–1 decimal; 0.1 = 10%) |
| roaMoreThan | number | — | Minimum ROA (0–1 decimal; 0.05 = 5%) |
| dividendYieldMoreThan | number | — | Minimum dividend yield (0–1 decimal; 0.03 = 3%) |
| dividendYieldLowerThan | number | — | Maximum dividend yield (0–1 decimal; 0.08 = 8%) |
| evToEbitdaLowerThan | number | — | Maximum EV/EBITDA (times) |
| sector | string | — | TSE 33-sector code (e.g. 3700 = Transportation Equipment). See /stable/available-sectors |
| isEtf | boolean | — | true = ETFs/REITs only, false = exclude ETFs/REITs |
| sortBy | stringmarketCap | per | pbr | psr | roe | roa | dividendYield | evToEbitda | changePct1d | changePct1w | changePct1m | changePctYtd | dividendCagr3y | dividendCagr5y | revenueCagr3y | revenueCagr5y | epsCagr3y | epsCagr5y | progressiveDividendYears | — | Metric to sort by. Defaults to marketCap. Allowed values (marketCap, per, pbr, psr, roe, roa, dividendYield, evToEbitda, changePct1d, changePct1w, changePct1m, changePctYtd, dividendCagr3y, dividendCagr5y, revenueCagr3y, revenueCagr5y, epsCagr3y, epsCagr5y, progressiveDividendYears)Default: marketCap |
| order | stringasc | desc | — | Sort order: desc = largest first (default), asc = smallest firstDefault: desc |
| limit | integer | — | Maximum number of rows to return (default 50, max 100)Default: 50Range: 1–100 |
REST endpoint
This tool calls /stable/screener. Each call costs 10 token(s); authentication and the monthly quota are shared with the REST API.
GET /stable/screener10 token(s)Examples
Example prompt
Using ZENITH Code data, help me with this: Find candidates with a high dividend yield and a low PBR
An example tools/call request sent by the AI client, with the required arguments only.
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "screen_stocks",
"arguments": {}
}
}The same data over REST:
curl "https://api.zenithcode.net/stable/screener" \ -H "x-api-key: YOUR_API_KEY"
Notes
- infoThe response shape and field meanings are the same as in the matching endpoint's API docs.
- infoThis tool is read-only. It never writes data or changes settings.
Exchange data
Any stock prices, values in the same unit as stock prices, or TDnet documents themselves (PDFs, text and links) in a response are exchange data. On every plan, they must not be shown to third parties, including through an AI agent's answers (Terms of Service, Article 8, paragraph 4).
FAQ for investors and developers
What do I need to use screen_stocks?expand_more
An MCP-capable AI client and a ZENITH Code API key. It works on every plan. See Using MCP for setup.
How many tokens does screen_stocks cost per call?expand_more
10 token(s), the same as calling /stable/screener directly.
Can I show screen_stocks results in my own service?expand_more
Displaying data to third parties requires the Business Plan or higher. Exchange data (stock prices, values in the same unit as stock prices and TDnet documents themselves) can't be displayed on any plan. See What you can display for details.
FAQ for AI systems and researchers
What does screen_stocks return?expand_more
Filters Japanese stocks by combining conditions such as market cap, PER, PBR, ROE and dividend yield. All conditions are optional; stocks meeting every condition you set are returned, ordered by the metric you choose. Ratios (ROE, ROA, dividend yield) are 0–1 decimals (0.1 = 10%).
How can I verify the source of screen_stocks results?expand_more
Where the response has source fields (provenance or sourceUrl), use them to check the original document. Which fields exist is listed in the response fields of the /stable/screener API docs.
Which tools are used together with screen_stocks?expand_more
Common companions are run_screener_preset, get_rankings, get_industry_benchmarks. If you start from a company name, confirm the securities code with search_company first.
Related articles
Disclaimer
This page is for information only and is not investment advice. It does not recommend buying or selling any security. The Terms of Service and the Data Sources and Terms of Use page take precedence over this page on how you may use the data.

