Skip to main content
Glama

Tapetide - Indian Stock Market MCP

Add Stocks to Portfolio

add_portfolio_stocks
Destructive

Add one or more stocks to the user's portfolio, merging duplicates by weighted-average price. Accepts a single add, a bulk list, or holdings the user pasted from a broker CSV/table (parse it into the holdings array yourself). Example: "Add RELIANCE 10 shares at ₹1,350" → holdings:[{symbol:"RELIANCE",quantity:10,avg_price:1350}]. STRIP exchange suffixes before calling — -EQ, -BE, -SM, -ST, -BZ, -BL, -RE, -IV, -RR, .NS, .BO — and pass plain NSE symbols (APS-SM → APS; SME stocks are supported). When the user has stated symbol, quantity and price, add them directly. When you PARSED or inferred the holdings (broker CSV, a pasted table, a screenshot), show the parsed rows for confirmation first, and ask rather than guess a missing or ambiguous field. Use search_stocks if a symbol does not resolve. Call read_me for the full broker-CSV procedure.

Input Schema

NameRequiredDescriptionDefault
holdingsYesArray of stocks to add (1-100 items)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, idempotentHint=false and readOnlyHint=false, so the mutation profile is covered. The description adds genuine behavioral context on top: duplicates are merged at weighted-average price rather than overwritten, and parsed/inferred input should be confirmed before writing. It does not state what the write does to existing holdings beyond merge semantics or what the response contains, so it falls short of a 5.

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?

The purpose and merge semantics are front-loaded, followed by the suffix-stripping rule and the confirmation rule, with no filler sentences. It is dense and slightly long, but each sentence carries operational instruction (suffix list, confirmation policy, fallback tools) rather than restating the schema.

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?

For a single-parameter bulk mutation tool with no output schema, the description covers the tricky parts: input shapes, symbol normalization, the confirmation policy for inferred data, and pointers to search_stocks and read_me. The main remaining gap is that it never indicates what the tool returns (e.g. resulting portfolio or merge summary), which an agent might want before chaining calls.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description goes well beyond the schema by specifying symbol canonicalization: strip exchange suffixes (-EQ, -BE, -SM, -ST, -BZ, -BL, -RE, -IV, -RR, .NS, .BO) and pass plain NSE symbols, plus a worked example mapping natural language to the holdings object. That is real added meaning the schema cannot convey.

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?

The description states a specific verb and resource ('Add one or more stocks to the user's portfolio') and names the key behavior that distinguishes it from update_portfolio_stock: duplicate merging by weighted-average price. It also enumerates the accepted input shapes (single add, bulk list, pasted broker CSV/table), so an agent can route to it without opening 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?

It gives explicit when-to-act rules ('When the user has stated symbol, quantity and price, add them directly') versus when to confirm first ('When you PARSED or inferred the holdings ... show the parsed rows for confirmation first, and ask rather than guess'). It also names fallbacks: use search_stocks if a symbol does not resolve, and call read_me for the full broker-CSV procedure.

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.