Skip to main content
Glama
taiwan-stock-mcp

taiwan-stock-mcp

by hulan-bebe

screen_valuation

Screen TWSE/TPEx stocks by PE, PB, and dividend yield with inclusive bounds and industry filters to identify valuation opportunities.

Instructions

Screen TWSE/TPEx end-of-day PE/PB ratios and dividend yield (percentage points).

Bounds are inclusive. Missing PE is excluded when pe_max is set. Industry matches an English or Chinese category, including unique substrings. Sort: dividend yield descending.

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_valuation"
  }
}

Input Schema

NameRequiredDescriptionDefault
top_nNoPositive number of rows to return; scan caps at 100
pb_maxNoInclusive maximum price/book ratio
pe_maxNoMaximum PE ratio; excludes missing PE
industryNoEnglish or Chinese category; case-insensitive, unique substring and singular/plural accepted. Invalid or ambiguous input returns an error listing valid English categories.
yield_minNoInclusive minimum dividend yield in percent

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It usefully discloses inclusive bounds, that missing PE is excluded when pe_max is set, and default sort order, but does not state read-only safety, rate limits, or other operational behavior.

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 compact, front-loaded with the core purpose, and every sentence adds a filtering or sorting rule. No wasted text.

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?

Output schema exists and the input schema fully documents parameters, so return values need not be explained. The description covers key filtering behavior, though it omits explicit read-only or error behavior that would complete the picture.

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 100%, so each parameter is already documented. The description reinforces inclusive bounds and missing-PE handling but adds little semantic detail beyond the schema.

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?

States a specific verb (screen) and resource (TWSE/TPEx end-of-day PE/PB ratios and dividend yield), so an agent can tell this is a valuation screener. It does not explicitly contrast with siblings like scan_market, so it falls short of the top score.

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 through bounds and sorting, but gives no explicit when-to-use guidance or alternatives. An agent must infer that this is for valuation filtering rather than general market scanning.

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