Skip to main content
Glama

Tapetide - Indian Stock Market MCP

Stock Screener (Technical)

screen_stocks_technical
Read-onlyIdempotent

Screen Indian stocks by technical indicators (RSI, MACD, moving averages, crossovers, volume, momentum) on real-time data. For fundamental screening (PE, ROCE, Sales, Growth), use screen_stocks instead.

Each filter is { left: field, operation, right: number | field }. Operations: "greater", "less", "equal", "in_range" (right is [min,max]), "crosses_above", "crosses_below" (crossover today).

FIELDS: close, open, high, low, volume, change, change_abs, market_cap_basic | SMA5/10/20/50/100/200, EMA5/10/20/50/100/200 | RSI, RSI[1], MACD.macd, MACD.signal, Stoch.K, Stoch.D, CCI20, ADX, AO, Mom, ATR | BB.upper, BB.lower | Pivot.M.Classic.R1/R2/S1/S2 | Recommend.All (-1..1), Recommend.MA, Recommend.Other | Perf.W, Perf.1M, Perf.3M, Perf.6M, Perf.Y, Perf.YTD | average_volume_10d_calc, average_volume_30d_calc, relative_volume_10d_calc | price_earnings_ttm, price_book_fq, dividend_yield_recent

⚠️ market_cap_basic is absolute ₹, NOT Cr (1 Cr = 10,000,000), so 5000 Cr = 50000000000.

EXAMPLE — oversold large-caps: [{"left":"RSI","operation":"less","right":30},{"left":"market_cap_basic","operation":"greater","right":50000000000}]

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMax results
columnsNoFields to return
filtersNoREQUIRED. Filter conditions (AND logic). Example: [{"left":"RSI","operation":"less","right":30}]
sort_byNoSort fieldmarket_cap_basic
sort_orderNodesc

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful behavior beyond that: filters combine with AND logic, crossover operations evaluate against today's bar, screening runs on real-time data, and market_cap_basic is in absolute ₹ rather than crore — the last one prevents a serious misuse.

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?

Front-loaded with purpose and sibling routing before the DSL details, and nearly every sentence carries load. The FIELDS block is long but it is a required vocabulary list, so the bulk is justified rather than padding.

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 no output schema, the description should ideally say what a result row looks like, but it does cover the inputs thoroughly (filters DSL, operations, field vocabulary, units, example, limit/columns/sort exist in schema). An agent has everything needed to construct a valid call; only the return shape is left implicit.

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 80% (baseline 3), and the description goes well past it for the hardest parameter: it defines the {left, operation, right} shape, enumerates the valid operations with the special case that in_range takes [min,max] and crosses_* mean crossover today, and provides a large whitelist of legal field names plus a worked example. The ₹-vs-crore units warning for market_cap_basic is exactly the kind of semantics the schema cannot express.

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 (screen) plus resource (Indian stocks), the axis (technical indicators) and enumerates the indicator families it covers. It explicitly names the sibling it is not (screen_stocks for fundamental screening), so an agent can route between the two without opening either schema.

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 a clear routing rule: technical indicators here, fundamentals via screen_stocks. It does not mention other plausible-looking siblings such as run_preset_screen, scan_movers, or screen_tapetide_scores, so the agent must infer those boundaries on its own.

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.