Skip to main content
Glama
turtlehq-tech

turtlestack-lite

Official

Server Quality Checklist

58%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v2.0.0

  • Disambiguation3/5

    Tools cluster around similar actions (order placement, margin calculation, technical indicators) with multiple broker-specific variants. While descriptions clarify some distinctions, the overlap between generic tools like get_technical_indicators and specific indicator tools, or get_portfolio vs get_positions, creates ambiguity about which to call.

    Naming Consistency4/5

    Most tools follow a consistent verb_noun pattern (get_, place_, calculate_, etc.). Minor inconsistencies include mixing broker-specific prefixes (kite_, groww_) with generic names, and near-duplicate names like calculate_kite_order_margins vs calculate_order_margin that don't clearly signal the broker difference.

    Tool Count2/5

    At 37 tools, the server feels overly broad for a single MCP server. Many tools are variants that could be consolidated (e.g., individual technical indicator endpoints vs. a single indicator tool), pushing the count well beyond the reasonable range for agent navigation.

    Completeness4/5

    The core trading lifecycle is well covered: authentication, orders (create/modify/cancel, multiple order types), portfolio, margins, quotes, and technical indicators. Some gaps exist, such as no consolidated order history and no generic Groww order placement, but agents can achieve most tasks with the available surface.

  • Average 3.5/5 across 37 of 37 tools scored. Lowest: 2.6/5.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 0 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is failing
  • Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.

    If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.

    MCP servers without a LICENSE cannot be installed.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior1/5

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

    With no annotations, the description carries full responsibility for disclosing behavioral traits. It only states the order type and splitting concept, but does not disclose execution behavior, order lifecycle, potential failures, required approvals, or side effects. The description is purely definitional and lacks transparency about what invoking this tool actually does beyond the schema parameters.

    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 description is a single, compact sentence with no redundancy. It front-loads the main concept. While it is minimal, it earns a score above 3 because it conveys the essential idea without waste, though it could benefit from a bit more structure or context.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness1/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's complexity (10 parameters, 7 required, multiple enums, no output schema) and the existence of many sibling order-related tools, the description is severely incomplete. It does not explain how iceberg orders differ in execution, what parameters are critical, what the response contains, or any preconditions. The single sentence is insufficient for an agent to understand the full context of use.

    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?

    The input schema covers 100% of parameters with individual descriptions, so the baseline is 3. The tool description adds no additional semantic meaning beyond the schema; it merely restates the order type. The schema itself explains parameters like disclosed_quantity and price, so no information gap exists, but the description does not enrich parameter understanding.

    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?

    The description clearly identifies the tool's function as placing an iceberg order and explains the key concept ('large order split into smaller disclosed quantities'). This distinguishes it from sibling order types like bracket or cover orders, though it could be more explicit about the specific mechanics.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use an iceberg order versus alternatives such as create_order, place_bracket_order, or place_cover_order. The description implies it is for large orders but does not state explicit conditions, exclusions, or trade-offs.

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

  • Behavior1/5

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

    With no annotations, the description must carry the full behavioral disclosure burden, but it only gives a high-level summary. It doesn't mention that variety is auto-determined, that broker is optional, or any error/return behavior. This is a significant omission for a complex order placement tool.

    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 a single, well-structured sentence that front-loads the core purpose. It contains no filler or redundant information, earning full marks for conciseness.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness1/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a tool with 20 parameters, no annotations, and no output schema, the description is severely incomplete. It fails to explain return values, prerequisites (like auth), conditional parameter requirements, or how this differs from sibling order tools. This leaves the agent without enough context to use it correctly.

    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 coverage is 100% with detailed parameter descriptions, so the schema already provides semantics. The description adds no additional parameter meaning beyond what is already in the schema. Thus, the baseline score of 3 applies.

    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?

    The description clearly states the tool creates a trading order, using the verb 'Create' and specifying the resource ('trading order'). It also indicates broad support for 'all Kite order types and varieties', which conveys scope. However, it does not explicitly distinguish itself from specialized sibling tools like place_amo or place_bracket_order, leaving some potential for confusion.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides no explicit guidance on when to use this tool versus alternatives. Given the many specialized order placement siblings (place_amo, place_cover_order, etc.), the absence of usage context or exclusions is a notable gap. The claim 'full support' implies generality but doesn't clarify when a specialized tool would be preferred.

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

  • Behavior2/5

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

    With no annotations, the description carries full burden for behavioral disclosure. It only mentions 'session-isolated', which hints at isolation but doesn't explain what happens to existing credentials, whether tokens are persisted or overwritten, or what success/failure looks like. For an authentication tool handling sensitive data, this is a significant gap.

    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 description is a single sentence that front-loads the action and wastes no words. However, given the tool's complexity (12 parameters), it may be too terse, but as a concise statement of purpose it is well-structured.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The tool has 12 parameters, no annotations, and no output schema, yet the description is just one sentence. It fails to explain the authentication flow, which credentials are needed per broker, the full implication of 'session-isolated', or how it relates to siblings like get_broker_login_instructions. This is incomplete for such a complex tool.

    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%, with each parameter having broker-specific notes (e.g., 'required for Kite', 'for AngelOne'). The description adds no additional parameter meaning beyond the generic 'using credentials', so baseline 3 applies because the schema does the heavy lifting.

    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?

    The description uses the specific verb 'Authenticate' and resource 'broker', making the core action clear. It adds 'using credentials' and 'session-isolated', but doesn't differentiate from sibling tools like set_active_broker or get_broker_login_instructions, so it doesn't earn a 5.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool versus alternatives like set_active_broker or get_broker_login_instructions. There are no prerequisites, exclusions, or context cues for choosing authentication versus other broker-related operations. The agent is left without direction.

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

  • Behavior2/5

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

    No annotations are provided, so the description must disclose behavioral traits. It only states the action, with no mention of side effects, return format, authentication requirements, or whether it is a read-only operation. This leaves the agent unaware of key behavioral characteristics.

    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 description is a single clear sentence with no wasted words, earning points for efficiency and front-loading. However, it is extremely brief, which may under-specify, but this is not a verbosity issue.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Despite a complex nested schema and no output schema, the description explains nothing about the calculation process, return value, prerequisites, or how it fits among the many sibling tools. This leaves the agent with an incomplete understanding and likely to mis-select or misuse the tool.

    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?

    The input schema provides complete descriptions for all parameters, including enums and per-field details, yielding 100% schema coverage. The description adds no additional parameter semantics, but the schema already carries the burden, so a baseline score of 3 is appropriate.

    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?

    The description clearly states the tool calculates required margins for Kite orders, using a specific verb and resource. However, it does not distinguish this from sibling tools like calculate_kite_basket_margins or calculate_order_margin, which also calculate margins, so it lacks sibling differentiation.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides no guidance on when to use this tool versus alternatives. It does not clarify whether it is for multiple individual orders, a basket, or how it differs from other margin-related tools. With numerous sibling tools, this is a significant gap.

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

  • Behavior2/5

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

    With no annotations provided, the description bears the full burden of explaining behavior. It only says 'order with both stop loss and target,' but does not disclose that price is mandatory, that this is a limit order, order lifecycle implications, or any broker-specific behaviors or risks.

    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 description is a single, well-structured sentence that gets to the point instantly. It is appropriately concise, though it sacrifices meaningful content for brevity.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    This is a complex trading tool with 10 parameters and 7 required fields, yet the description provides only a minimal summary. It does not explain how the parameters relate, what a bracket order entails beyond stop loss and target, or how to successfully invoke it. The absence of an output schema makes the description even more insufficient.

    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?

    The input schema covers 100% of parameters with descriptions, so the baseline is 3. The description adds little beyond restating the stop loss and target aspects, which are already evident from the 'stoploss' and 'squareoff' parameter names.

    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?

    The description states a specific verb ('Place') and resource ('Bracket Order'), and clarifies that it includes both stop loss and target. This distinguishes it from basic order tools, though there is also a 'place_groww_bracket_order' sibling, so it could be more explicit about why this one is different.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is given regarding when to use this tool versus alternatives like cover orders, iceberg orders, or the Groww bracket order variant. There is no mention of prerequisites, constraints, or scenarios that favor this tool.

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

  • Behavior2/5

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

    No annotations are provided, so the description must disclose behavioral traits. It implies a destructive operation but does not mention requirements like authentication, active broker selection, or the finality of the cancellation. This is insufficient for a mutating tool.

    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 a single concise sentence that front-loads the action ('Cancel') and resource ('existing order'). It contains no filler and is immediately scannable.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The description provides the core purpose but omits practical context such as using the active broker, authentication requirements, and behavior across different order varieties. Given the simple schema and no output schema, it is minimally adequate but has clear gaps.

    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?

    All parameters have schema descriptions, so the baseline is 3. The description adds 'all order varieties', which gives extra meaning to the variety parameter, but it does not add semantics for 'broker' or 'order_id' beyond what the schema already provides.

    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?

    The description clearly states the tool's function with a specific verb and resource: 'Cancel an existing order'. It also mentions 'support for all order varieties', adding scope. While it doesn't explicitly distinguish from sibling tools like modify_order, the purpose is clear and unambiguous.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    There is no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. The description simply states the action without context for decision-making.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It only mentions the broker session context and fails to disclose what happens if no active broker exists, whether data is fetched live or historically, the return format for multiple indicators, or any potential side effects. This is a significant gap for a tool with zero annotation support.

    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 description is a single, focused sentence that front-loads the main action ('Get multiple technical indicators') and includes the key contextual qualifier about the broker session. It is concise with no wasted words, though it sacrifices some informational depth for brevity.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's complexity (7 parameters, no output schema, no annotations), the description is under-specified. It does not explain what indicators are supported beyond the schema's vague 'etc.', nor does it clarify the expected response structure, error conditions, or the significance of the 'active or specific broker' setting. This incompleteness would leave an agent under-informed for correct invocation and result interpretation.

    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?

    The input schema provides descriptions for all 7 parameters (100% coverage), so the baseline is 3. The description adds minimal semantic value beyond the schema by emphasizing 'multiple' indicators and the 'active or specific broker' selection, which maps to the `indicators` and `broker` parameters. However, it does not explain any parameter interplay or edge cases, keeping it at baseline.

    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?

    The description clearly states the tool retrieves multiple technical indicators for a symbol, which distinguishes it from single-indicator siblings like get_rsi and get_macd. However, it does not explicitly name an alternative or mention that this is the preferred tool for batch queries, so it lacks the strong differentiation seen in the highest-caliber examples.

    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 phrase 'from active or specific broker in your session' provides context on the prerequisite of an active broker session or an explicitly specified broker, but it gives no explicit guidance on when to use this tool versus calling individual indicator tools repeatedly. There is no mention of when-not-to-use or alternative tool names, leaving usage decisions partially implicit.

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

  • Behavior2/5

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

    With no annotations, the description carries the full burden of behavioral disclosure, but it only repeats the tool's purpose and adds a vague claim about order varieties. It fails to mention authentication needs, side effects, order status constraints, or response format, leaving significant behavioral gaps.

    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 description is a single concise sentence with no redundant words, earning points for conciseness. However, it lacks structure and is arguably too terse for a tool with 9 parameters, so it does not reach a perfect score.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a mutation tool with 9 parameters, no annotations, and no output schema, the description is severely incomplete. It does not explain return values, error conditions, or how different order varieties affect the modification process. The claim 'all order varieties' is vague and unsubstantiated.

    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?

    The input schema has 100% description coverage for all 9 parameters, so the baseline is 3. The description adds no extra meaning beyond the schema, but it does not need to because the schema already documents each parameter clearly.

    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 clearly states 'Modify an existing order' which identifies the specific action and resource. There is no sibling tool with a similar modify function, making it unambiguous. The phrase 'with support for all order varieties' adds a capability claim, though somewhat vague.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool versus alternatives like canceling and recreating an order, or using the various place_* tools. The description does not mention any exclusions or specific scenarios where this tool is appropriate.

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

  • Behavior2/5

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

    With no annotations, the description carries the full burden of behavioral disclosure. It only states the calculation intent, omitting any mention of read-only nature, authentication requirements, or potential error conditions. This leaves the agent without information about side effects or permissions.

    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 a single, front-loaded sentence with no redundancy. Every word contributes to the core purpose, making it highly concise and well-structured.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Despite a clear schema, the description omits crucial context such as what the output looks like (no output schema exists), when to choose this over the similar calculate_kite_order_margins, and any constraints on the 'orders' array for spread orders. The tool's complexity and the presence of closely related siblings demand more explanatory content.

    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?

    The input schema provides 100% description coverage for all four parameters, so the baseline is 3. The description adds no additional parameter semantics beyond what the schema already documents, such as the need for 'broker' to be 'kite' or the optional nature of 'mode'.

    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 clearly states the tool calculates basket margins specifically for spread orders on Kite, distinguishing it from sibling tools like calculate_kite_order_margins which handle single orders. The verb 'Calculate' is specific and the resource 'basket margins' is well-defined.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool versus alternatives such as calculate_kite_order_margins or calculate_order_margin. The description implies a use case for basket/spread orders but does not explicitly state the distinction or provide exclusions.

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

  • Behavior2/5

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

    Description is too brief to disclose behavioral traits such as whether it requires an active broker session, whether it places orders, or what the breakdown includes. With no annotations, the description carries the full burden but does not address any side effects or prerequisites.

    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?

    Single concise sentence, front-loaded with the verb and resource; no unnecessary words.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The tool accepts a complex nested orders array and has no output schema, but the description offers no information about return format, per-order vs aggregate breakdown, or any limitations. This is insufficient for an agent to anticipate the tool's behavior.

    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 has 100% coverage, so the description doesn't need to add parameter details. The description adds no extra meaning beyond the schema's existing property descriptions, giving a baseline score of 3.

    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 uses a specific verb ('Get') and resource ('detailed charges breakdown for Kite orders'), clearly distinguishing from sibling margin calculation tools like calculate_kite_order_margins. The purpose is unambiguous.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to use this tool versus alternatives such as calculate_kite_order_margins or calculate_kite_basket_margins. The description only states its function without exclusions or alternative recommendations.

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

  • Behavior2/5

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

    With no annotations, the description carries full responsibility for disclosing behavior. It mentions mandatory stop loss, but that is already evident from the required schema field. It does not disclose whether authentication is needed, how the order executes, error behavior, or any side effects. This is insufficient for a mutation tool.

    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 a single sentence, front-loaded with the primary action, and contains no redundant words. It earns its place by stating the core function concisely, though the brevity leaves gaps in other dimensions.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool has 10 parameters, 6 required, no output schema, and no annotations, the description is far too sparse. It does not explain the cover order mechanism, the role of stop loss in triggering the order, authentication prerequisites, or the response format. This is inadequate for an agent to use the tool confidently.

    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 all parameters are already documented in the input schema. The description adds no additional semantic meaning beyond the mandatory stop loss, which is already reflected in the required fields. Baseline 3 is appropriate when the schema does the heavy lifting.

    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 clearly states 'Place Cover Order on Groww - order with mandatory stop loss', identifying the action (place), the resource (cover order on Groww), and a key constraint (mandatory stop loss). This distinguishes it from generic 'place_cover_order' and other Groww-specific order tools.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is provided on when to use this tool versus alternatives like 'place_cover_order' or other order types. There is no mention of prerequisites such as broker authentication or scenarios where cover orders are appropriate. Usage is only implied by the name and brief description.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states that instructions are returned, but does not clarify whether the operation is read-only, whether it requires an established session, the format of the instructions, or any side effects. This is a significant gap for a tool that interacts with broker-specific data.

    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 a single, concise sentence that front-loads the core action and object. There is no redundant wording or unnecessary detail, making it appropriately sized for the simplicity of the tool.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's simplicity (one parameter, no output schema), the description is minimally adequate: it names the operation and the resource. However, it omits relevant context such as when these instructions are needed, whether they are for the broker's web portal or API, and how they relate to authentication workflows. It lacks enough contextual depth to fully support an agent in selecting and using the tool effectively.

    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?

    The schema already documents the broker parameter with a description and enum values, achieving 100% coverage. The description phrase 'for a specific broker' adds no new semantic detail beyond what the schema provides. Since schema coverage is high, the baseline of 3 is appropriate.

    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 clearly states the tool's function: fetching detailed login instructions for a specific broker. The verb 'Get' combined with the resource 'detailed login instructions' and the qualifier 'for a specific broker' makes the purpose unmistakable and distinguishes it from sibling tools like authenticate_broker, which performs the actual login, and list_brokers, which lists available brokers.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites (e.g., whether a broker must be set active), nor does it reference related tools like authenticate_broker or set_active_broker. The usage context is entirely implied rather than stated.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden. It does not disclose any behavioral traits such as whether it is read-only, what happens if no active broker is found, authentication requirements, or potential errors. The only behavioral hint is the need for a broker session, which is insufficient.

    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 a single concise sentence that immediately conveys the core purpose. It is front-loaded with the essential function and avoids superfluous words.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    With 6 parameters and no output schema, the description is too minimal to be considered complete. It fails to explain how ATR is calculated, the role of date ranges, interval handling, or what the response contains. The schema describes fields, but the overall behavior and use case remain ambiguous.

    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 coverage is 100%, so all six parameters have descriptions. The tool description adds no additional semantic meaning beyond 'symbol' and 'broker' context, effectively relying on the schema. It does not clarify interactions between parameters like period, from_date, to_date, or interval.

    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 clearly states the function: 'Get ATR (Average True Range) for a symbol', specifying both the verb and resource. It also notes 'from active or specific broker in your session', which distinguishes it from other technical indicator tools like get_rsi or get_macd by focusing on ATR.

    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 mentions 'from active or specific broker in your session', implying the tool requires an active broker session, but it does not explicitly state when to use this tool over alternatives or provide exclusion criteria. Usage context is implied rather than explicitly guided.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says 'Get information,' which implies a read operation, but it does not explicitly state that it is read-only, whether it requires authentication, or if it has any side effects. For a simple info tool this is a moderate gap.

    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 a single sentence, concise, and front-loaded with the action. It contains no fluff and every word adds value. It is appropriately sized for a simple informational tool.

    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 tool with one optional parameter and no output schema, the description is fairly complete. It correctly conveys the purpose without overcomplicating. A slight gap is that it doesn't indicate what 'parameters' refers to or whether the return includes broker-specific differences, but the low complexity makes this acceptable.

    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?

    The schema description coverage is 100% for the single optional 'broker' parameter, which includes a clear enum and description of the default behavior. The description adds no extra parameter details, but the schema already provides sufficient meaning, so the baseline of 3 applies.

    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 clearly states the action ('Get information') and the resource ('supported order types, varieties, and their parameters'). It distinguishes from sibling tools like create_order or get_orders by focusing on metadata about order types rather than placing or listing actual orders.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance is given on when to use this tool versus alternatives. The description does not mention related tools such as place_amo or place_bracket_order, nor does it explain scenarios where checking order type info would be useful. The intended context is only implied by the name and description.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It only says 'Get information', which implies a read operation, but gives no details about what session information is returned, whether authentication is required, or what happens if no session exists. This lack of detail could lead to incorrect assumptions about the tool's 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 a single sentence that front-loads the action ('Get') and the object ('information about your current session'). There is no wasted text or redundancy, making it highly concise and easy to parse.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The tool is extremely simple with no parameters and no output schema, but the description still does not clarify what the returned session information includes (e.g., session ID, broker connections, login status). Given the lack of annotations and output schema, the description is minimally viable but leaves significant room for ambiguity about the tool's actual output.

    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?

    The tool has zero parameters, so the description need not explain parameter semantics. Per the guidelines, a baseline of 4 is appropriate when no parameters exist. The description is consistent with the empty schema.

    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 uses the specific verb 'Get' and identifies the resource as 'information about your current session'. This clearly distinguishes it from sibling tools like get_orders or get_portfolio, as no other tool mentions session info. The purpose is unambiguous.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides no guidance on when to use this tool versus alternatives. It does not mention related session-management tools like authenticate_broker or logout_broker, nor does it state any prerequisites or typical use cases. The only implied usage is checking session details, but no explicit context is given.

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

  • Behavior2/5

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

    No annotations are provided, so the description bears full responsibility for behavioral disclosure. It mentions 'intraday' and 'compulsory stop loss' as constraints, but says nothing about order lifecycle, execution behavior, auth requirements, or error handling. This is insufficient for a complex order placement tool.

    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 a single, concise sentence that front-loads the key action and differentiator. It contains zero filler and is appropriately compact for its purpose.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's complexity (10 parameters, no annotations, no output schema, and numerous sibling order types), the one-line description is woefully incomplete. It omits prerequisites, return behavior, error conditions, and clear differentiation from similar tools like place_groww_cover_order.

    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?

    The input schema already provides 100% coverage with descriptions for all 10 parameters, including enums and required fields. The description adds no parameter-specific context, but the schema handles the semantic burden, so baseline 3 is appropriate.

    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 clearly identifies the action ('Place') and resource ('Cover Order (CO)'), with the defining characteristic 'intraday order with compulsory stop loss' that distinguishes it from other order types. It is immediately understandable and specific.

    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 for intraday cover orders with a mandatory stop loss, but provides no explicit guidance on when to choose this tool over alternatives like bracket orders or other broker-specific order types. It offers a hint but lacks clear when/when-not context.

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

  • Behavior2/5

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

    No annotations are provided, so the description bears full responsibility for behavioral disclosure. It only states that the order includes a stop loss and target, but does not outline side effects, prerequisites (e.g., authenticated broker), multi-leg order behavior, or error conditions. This is a significant gap for a trading mutation tool.

    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 a single sentence that is direct and front-loaded with the key action and context. No redundant or verbose language, making it easy to scan.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    With 10 parameters, no output schema, and no annotations, the description is too sparse. It does not explain what the tool returns, how the bracket order is structured (e.g., linked stop-loss and target orders), or any preconditions. While the schema covers parameter meaning, the overall context for a complex trading operation is incomplete.

    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?

    The schema provides 100% parameter coverage with descriptions for all 10 parameters. The description adds no additional parameter semantics beyond what the schema already spells out, so it meets the baseline but does not exceed it.

    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 clearly states the action ('Place Bracket Order') and the specific platform ('on Groww'), and adds the key clarification 'order with stop loss and target'. This distinguishes it from sibling tools like place_groww_cover_order or place_groww_gtd_order.

    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?

    Usage context is implied by 'on Groww', indicating this is for placing bracket orders specifically on the Groww broker. However, it does not explicitly state when to use this instead of the generic place_bracket_order or other Groww-specific order tools, nor does it mention any exclusions.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of disclosing behavioral traits. It mentions 'valid until specified date', which conveys the order's validity period, but it does not disclose whether the order is immediately submitted, any authentication or margin requirements, reversibility, or potential financial impact. For a trade execution tool, this is insufficient.

    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 a single sentence of 11 words, immediately stating the action and key qualifier. There is no unnecessary information, and the structure is appropriately front-loaded with the core function.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Despite being a complex tool with 12 parameters and no output schema, the description is minimal. It does not mention required prerequisites (e.g., authenticated broker), whether the order is immediately active, or how it interacts with the broker's GTD rules. The schema covers parameter details, but the description fails to provide situational context that the schema cannot convey.

    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?

    The input schema has 100% parameter description coverage, including enums for order_type, exchange, product, etc. The description adds no significant parameter-level meaning beyond the schema; it only echoes the concept of validity_date. Therefore, the baseline score of 3 applies.

    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 clearly states the tool's purpose: 'Place Good Till Date (GTD) order on Groww - valid until specified date'. It uses a specific verb ('Place') and resource ('GTD order on Groww'), and the 'valid until specified date' clarifies the unique GTD behavior, distinguishing it from sibling order types like bracket, cover, or AMO.

    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?

    No explicit usage guidance is provided. The name and description imply this is for GTD orders specifically on Groww, but there is no direct statement about when to prefer this over other order placement tools (e.g., create_order, place_amo) or any exclusions. The context is implied rather than explicit.

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

  • Behavior3/5

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

    With no annotations provided, the description carries the burden of behavioral disclosure. It does add the prerequisite of an active broker session or specific broker, which is useful, but it does not mention whether the operation is read-only, what data is required, or any error conditions. The description is factual about the data source but lacks depth.

    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 a single, front-loaded sentence with no redundancy. Every word contributes meaning, achieving high conciseness.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's moderate complexity (six parameters, no output schema), the description provides the essential purpose and a key prerequisite (active broker/session) but lacks information about return format, parameter interactions, or potential errors. It is adequate but not comprehensive.

    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?

    All six parameters are fully described in the schema (100% coverage), so the baseline is 3. The description adds minor semantic value by indicating that the 'symbol' and 'broker' parameters relate to the symbol and broker context, but it does not elaborate on period, interval, or date ranges beyond what the schema already provides.

    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 clearly identifies the tool as retrieving the ADX indicator for a given symbol, using a specific verb and resource. The expansion of the acronym and mention of broker context distinguish it from other indicator tools.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides no guidance on when to choose ADX over other indicators like RSI or MACD, nor any exclusions or alternatives. The only usage context is the need for an active broker session or specified broker, which is implied by 'from active or specific broker in your session'.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It does not disclose behavior beyond the basic operation, such as what happens without an active broker, return format, or error conditions. This is a significant gap for a tool with no annotation support.

    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?

    One concise sentence, front-loaded with action and resource, no redundant information.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The description is minimally complete for a list-like tool with well-documented parameters, but lacks behavioral context (e.g., return format, broker selection behavior) and there is no output schema to compensate. Adequate but with clear gaps.

    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 covers all parameters with descriptions (100% coverage), so baseline 3 applies. The description adds no additional parameter semantics beyond what the schema already provides.

    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 uses a specific verb 'Get' and resource 'Bollinger Bands' with clear scope (symbol, broker session). It clearly distinguishes from sibling indicator tools by naming the specific indicator.

    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?

    Context is provided: 'from active or specific broker in your session' implies an existing broker session. However, there are no explicit alternatives or exclusions relative to other technical indicator tools, so guidance is only implied.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full responsibility. It only states what the tool does without disclosing behavior like authentication requirements, error handling, or output format. This is minimal and lacks useful behavioral context for a tool that may depend on session state.

    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 a single, front-loaded sentence with no redundant words. It conveys the purpose and scope efficiently.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The tool is simple with one optional parameter and no output schema, so the description covers the main use case. However, it omits details like required authentication/session state and what the returned data looks like. Given no annotations, it is minimally viable but not fully complete.

    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?

    The schema fully documents the single optional broker parameter with a clear enum and description. The description reinforces 'active or specific broker' but adds little beyond the schema. With 100% schema coverage, the baseline of 3 is appropriate.

    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 clearly states the tool gets current trading positions, with the scope of active or specific broker. It is specific with a verb+resource combination and distinguishes itself from sibling tools like get_orders and get_portfolio by naming 'positions' as the resource.

    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 gives context (positions from active or specific broker in the session) but does not explicitly say when to use this tool over alternatives like get_portfolio or get_consolidated_portfolio. It lacks exclusions or alternative recommendations.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full responsibility for disclosing behavioral traits. It only mentions next-day execution but omits critical information such as the order submission process, the need for an active broker, potential rejection, or the financial impact. This is insufficient for a mutation-like trading action.

    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 description is a single, concise sentence that front-loads the tool's purpose. It is well-structured and free of waste, though it is somewhat terse for the complexity of the operation, it effectively communicates the core function.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's complexity (11 parameters, 6 required, no output schema, and no annotations), the description is incomplete. It does not address prerequisites like broker authentication, the distinction between AMO and regular orders beyond execution timing, or the operational steps. An agent would be underinformed for making a real financial transaction.

    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?

    The input schema has 100% parameter description coverage, with descriptions for all 11 parameters. The description adds no additional parameter semantics beyond the schema, so it meets the baseline but does not elevate it.

    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 clearly states the tool's function: placing an After Market Order (AMO) for next-day execution. It uses a specific verb 'Place' and a distinct asset type 'AMO', which differentiates it from sibling order placement tools like create_order or place_bracket_order.

    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?

    The description conveys when to use this tool: for AMO orders that execute the next day. This provides clear context for the tool's intended use. However, it does not explicitly state when not to use it or mention alternatives for other order types, so it lacks direct exclusions but the context is still clear.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full disclosure burden. It only reveals that the setting is session-scoped ('in your session'), but does not mention authentication requirements, side effects on existing orders, or return value.

    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 entire description is one short sentence that front-loads the action and scope, containing no filler or redundant information.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The tool is a simple setter with one enum parameter, but lacks an output schema and annotations. The description omits prerequisites (e.g., authentication) and what the tool returns or changes, leaving some contextual gaps.

    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?

    The schema fully documents the single 'broker' parameter with an enum and description, so the description need not add parameter details. Baseline of 3 applies due to 100% schema coverage.

    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 uses the specific verb 'set' with the resource 'active broker' and the scope 'for trading operations in your session,' clearly distinguishing it from sibling tools like authenticate_broker or list_brokers. It unambiguously conveys the tool's function.

    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?

    No explicit when/when-not guidance is provided, but the phrase 'for trading operations' implies it should be used before trading activities. Sibling tools like authenticate_broker indicate a potential prerequisite, but this is not mentioned.

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

  • Behavior2/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 only adds that it operates across 'authenticated brokers' and 'in your session', but does not disclose read-only status, return format, error handling, or behavior when some brokers are unauthenticated. This is a significant gap for a tool with no annotation support.

    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 a single, front-loaded sentence that efficiently states the tool's purpose without fluff or repetition. Every word adds value.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The tool has no output schema and the description does not explain what the comparison result looks like (e.g., metrics, format). It also does not describe how to interpret results when multiple brokers are involved or what happens if authentication is missing. For a comparison tool with one optional parameter, this is a notable gap.

    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?

    The input schema fully describes the single optional parameter 'brokers' with a clear explanation, so the tool description does not need to add parameter details. The description itself adds no extra parameter semantics, staying at the baseline for high schema coverage.

    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 clearly identifies the action ('Compare') and resource ('portfolios across multiple authenticated brokers'). This distinguishes it from sibling tools like get_portfolio (single portfolio) and get_consolidated_portfolio (aggregated but not comparative), as well as compare_technical_indicators (different resource).

    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?

    Provides clear context: use this tool when you need to compare portfolios across multiple authenticated brokers within your session. However, it does not explicitly mention alternatives or exclusions, which would be needed for a 5.

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

  • Behavior2/5

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

    No annotations are provided, so the description must carry the full burden of behavioral disclosure. It does not mention that this is a read-only operation, any authentication prerequisites, what happens if no brokers are available, or error conditions. The description is minimal and leaves the agent guessing about important behavioral aspects, similar to the 'update_drive' example.

    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 a single, front-loaded sentence with no filler. It directly conveys the core action, resource, and scope, earning a high score for conciseness.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    With no output schema and no annotations, the description needs to provide more context. It does not explain what the tool returns, how multiple brokers are selected, or any limitations (e.g., requires at least two authenticated brokers). Given the tool's moderate complexity (multi-broker comparison), this description is insufficient for an agent to fully understand behavior and expected results.

    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 the baseline is 3. The description adds a hint about the 'brokers' parameter via 'across multiple brokers,' but it does not elaborate on period, indicator specifics, or the need for at least two brokers. Since the schema already describes each parameter, the description provides marginal added value.

    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 clearly states the tool's function: 'Compare same technical indicator across multiple brokers in your session.' It uses a specific verb ('compare'), names the resource ('technical indicator'), and specifies the scope ('across multiple brokers'), which also distinguishes it from sibling tools like get_rsi or get_macd that operate on a single broker.

    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?

    The description implies usage when needing to compare an indicator across brokers, and the phrase 'in your session' gives context that brokers must be in the session. However, it does not explicitly mention alternatives or exclusions (e.g., 'use this instead of get_rsi for multi-broker comparison'). Still, the context is clear enough to infer appropriate use.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full responsibility. It mentions the session/broker dependency but does not disclose return format, required authentication state, error behavior, or whether it is read-only. It also doesn't explain how parameters like fast_period or to_date affect the calculation.

    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 a single, efficient sentence that front-loads the core action and resource, with no filler or redundant information. Every word earns its place.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The tool has 8 parameters, a moderately complex domain (technical indicators), and no output schema or annotations. The description only provides the basic purpose and a hint about broker sessions; it lacks any guidance on how the parameters relate (e.g., period interactions, date range validation) or what the response will contain. This is insufficient for correct invocation without further context.

    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?

    The input schema fully documents all 8 parameters with descriptions, including defaults for the period parameters. The tool description itself does not add any additional meaning beyond what the schema provides, so the baseline of 3 applies.

    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 uses a specific verb 'Get' and resource 'MACD (Moving Average Convergence Divergence)', and clarifies the data source ('from active or specific broker in your session'). This clearly distinguishes it from sibling indicator tools like get_rsi or get_adx.

    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?

    It provides clear context that a broker session is required and indicates the ability to choose a specific broker, which is a useful usage condition. However, it does not explicitly mention alternatives or when not to use this tool, such as using get_technical_indicators for multiple indicators.

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

  • Behavior2/5

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

    With no annotations, the description carries the full burden. It implies a read-only operation via 'Get' but does not disclose authentication requirements, error conditions (e.g., what happens if no active broker session), or the nature of the returned data (e.g., single value vs time series). This is a significant gap for a tool with broker-dependent 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 a single, front-loaded sentence that states the core function and key selection criterion (active or specific broker). There is zero wasted verbiage, making it highly concise and easy to scan.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a tool with 5 parameters and no output schema, the description is too sparse. It does not explain that VWAP may be returned as a time series based on 'from_date', 'to_date', and 'interval', nor does it mention broker session prerequisites. The schema describes parameters but the description should clarify the tool's overall behavior and return structure, which it fails to do.

    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 the baseline is 3. The description adds minimal semantic value beyond the schema—'from active or specific broker' aligns with the 'broker' parameter but does not clarify formats or relationships. It does not compensate for any gaps because there are none.

    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 clearly states the tool retrieves VWAP for a symbol, with the verb 'Get' and the resource 'VWAP'. It distinguishes itself from sibling indicators like RSI or MACD by explicitly naming VWAP, and adds the broker context ('from active or specific broker'), which sets it apart from generic quote tools.

    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?

    The description provides clear context on when to use the tool: when needing VWAP for a symbol, and it explains the broker selection nuance (active vs specific). However, it does not explicitly mention alternatives or when not to use it, though the purpose is specific enough to infer usage.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden. 'Calculate' implies a non-destructive, read-only operation, but the description does not disclose whether authentication is required, whether it hits a live broker API, or what exactly the calculation is based on. For a tool with zero annotation coverage, this is a significant transparency gap.

    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 a single sentence, front-loaded with the key action and scope, with no redundant words. It is an excellent example of conciseness.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a 10-parameter tool with no output schema and no annotations, the description is minimal. It communicates the Groww-only scope and purpose, but does not explain what the returned margin value represents, any prerequisites, or how it differs from similar margin-related siblings like get_margin_for_orders. The schema covers parameters, so it is adequate but not complete.

    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 all 10 parameters are already fully described in the input schema. The description adds no additional parameter-specific meaning beyond saying it is for a 'specific order', so the baseline score of 3 is appropriate.

    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 uses a specific verb 'Calculate' and a specific resource 'required margin for a specific order', with an explicit '(Groww only)' scope. This clearly distinguishes it from sibling tools like calculate_kite_order_margins or get_margin_for_orders.

    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?

    The '(Groww only)' qualifier gives clear context that this tool is exclusively for Groww broker margin calculations, which helps differentiate it from Kite-based alternatives. However, it does not explicitly name alternatives or state when not to use them, so guidance is clear but not fully explicit.

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

  • Behavior3/5

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

    No annotations are provided, so the description carries the full burden. It states the core behavior (getting margins) and the session context, but it does not disclose potential failure modes (e.g., no active broker), return format, or whether the operation is read-only beyond the verb 'Get'. The description adds some session context but is not rich in behavioral detail.

    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 a single sentence of 13 words, front-loaded with the verb 'Get' and the primary object 'account margins'. There is no redundant or extraneous wording, making it highly concise and easy to parse.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's simplicity (2 optional params, no output schema, no annotations), the description covers the primary purpose but omits useful context such as what margin figures are returned (e.g., available vs. used margin) and prerequisites like requiring an authenticated broker. It is adequate for a simple getter but leaves gaps that could affect correct usage.

    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 coverage is 100%: the broker parameter already explains it is optional and uses the active broker if not specified, and the segment parameter is clearly scoped to Kite. The description only reinforces the 'active or specific broker' concept without adding new semantic meaning or elaborating on parameter interactions, so it provides marginal value beyond the schema.

    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 uses the specific verb 'Get' with resource 'account margins' and scoping 'from active or specific broker in your session.' This clearly distinguishes it from sibling tools like calculate_order_margin or get_margin_for_orders, which focus on order-specific margin calculations rather than account-level margins.

    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 use when account-level margins are needed, but it does not explicitly state when not to use this tool or mention alternatives such as calculate_order_margin for order-level calculations. It also lacks guidance on prerequisites like requiring an active authenticated broker session, leaving usage context partially implicit.

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

  • Behavior3/5

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

    No annotations are provided, so the description carries the burden of behavioral disclosure. It adds context about requiring an active session and the option to specify a broker, but does not mention authentication, rate limits, or error behavior. The term 'live' indicates real-time data, which is useful but limited.

    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 a single sentence that is direct and front-loaded. No redundant or irrelevant information is present, making it highly concise and well-structured.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a simple quote tool, the description provides the core purpose and broker context, but lacks information about return format, error conditions, or requirements like authentication. Given no output schema, the description could offer more details, but it is adequate for basic use.

    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 the schema already documents the parameters. The description does not add additional parameter semantics beyond what is in the schema, such as the meaning of symbols or broker. Baseline 3 is appropriate.

    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 uses a specific verb ('Get') and resource ('live market quotes'), clearly distinguishing this tool from siblings like get_orders or get_portfolio. It also specifies the context of 'active or specific broker in your session', which adds clarity.

    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?

    The description provides clear context for when to use the tool: retrieving live quotes from the active broker or a specified broker. It does not mention alternatives or exclusions, but the scenario is well-defined. Sibling tools like get_technical_indicators are not mentioned, so no explicit guidance on choosing between them.

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

  • Behavior3/5

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

    No annotations are provided, so the description carries the burden. It discloses the Groww-only restriction, which is a behavioral constraint, but does not mention authentication prerequisites, potential side effects, or what happens if the Groww session is invalid. For a calculation tool, this is moderate but incomplete transparency.

    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 one sentence, front-loaded with the verb and resource, and contains zero waste. It is minimal but effective.

    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 tool with three params, rich schema descriptions, and no output schema, the description adequately conveys core purpose and broker restriction. It lacks some context like whether an active Groww session is required, but the schema's broker parameter description reinforces the Groww-only constraint, making the tool usable.

    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 the schema already documents all parameters thoroughly (orders array, broker enum, segment enum). The description adds no additional parameter context beyond what the schema provides, which is acceptable per the baseline.

    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 clearly states the verb (Calculate), resource (required margin), and scope (multiple orders, Groww only). It distinguishes from sibling margin tools like 'calculate_order_margin' (singular) and 'calculate_kite_order_margins' (Kite-specific) by explicitly specifying 'multiple orders' and 'Groww only'.

    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?

    The 'Groww only' qualifier provides clear context for when to use this tool — specifically for Groww broker margin calculations on multiple orders. However, it does not explicitly mention alternatives for single-order or other brokers, so it lacks when-not guidance.

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

  • Behavior3/5

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

    With no annotations, the description carries full burden for behavioral disclosure. It indicates that the tool operates within a session and can target a specific broker, but it does not disclose return format, whether only historical orders are included, or any prerequisites like authentication. It is sufficient for a simple read operation but lacks depth.

    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 a single, concise sentence that front-loads the core action and resource. Every word adds value, with no filler or redundant phrasing.

    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?

    Given the tool's low complexity (one optional parameter, no output schema), the description covers the essential context: what it returns and how broker selection works. It doesn't explain the exact structure of order history, but for a getter of this simplicity, it is adequately complete.

    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?

    The schema already provides 100% coverage for the single 'broker' parameter, describing it as optional and defaulting to the active broker. The description mirrors this without adding new syntax or constraints, so it does not elevate beyond the baseline.

    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 clearly states the action ('Get'), the resource ('order history'), and the scope ('from active or specific broker in your session'). This distinguishes it from sibling order-manipulation tools like place_order, modify_order, and cancel_order, which are clearly different operations.

    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?

    The description provides clear context for when to use the tool: to retrieve order history from either the active broker or a specific broker. It implies the optionality of the broker parameter, but does not explicitly mention exclusions or alternative tools for similar functions.

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

  • Behavior3/5

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

    With no annotations, the description carries full behavioral burden. It reveals that the tool operates within a session and can target a specific broker, but does not disclose what happens if no active broker exists, whether authentication is required, or if it is strictly read-only. The 'Get' verb implies read-only, but this is not explicitly stated.

    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 a single, concise sentence that is front-loaded with the action and resource. It contains no fluff and every word contributes meaning.

    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 simple read tool with one optional parameter and no output schema, the description adequately covers what the tool does and the broker-selection context. It could be more explicit about prerequisites (e.g., active session) and the nature of 'holdings', but overall it is sufficient for basic invocation.

    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 coverage is 100% for the single parameter 'broker', meaning the schema already provides a description ('Specific broker (optional, uses active if not specified)'). The tool description adds minimal semantic value by restating this relationship, so a baseline score of 3 is appropriate.

    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 clearly states a specific action ('Get') and resource ('portfolio holdings') with a defined scope ('from active or specific broker in your session'). It effectively distinguishes from siblings like get_consolidated_portfolio by emphasizing single-broker retrieval.

    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?

    It clearly indicates usage context (active broker or a specific broker via the broker parameter), which implies when to use this tool. However, it does not explicitly mention alternatives like get_consolidated_portfolio for multi-broker aggregation, so a slight gap exists in exclusion guidance.

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

  • Behavior3/5

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

    No annotations are provided, so the description carries the burden. It adds 'in your session' which indicates it affects the current session state, but it does not disclose side effects such as token invalidation, need for re-authentication, or impact on orders. This is minimal but not misleading.

    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 a single, clear sentence with no fluff. It is front-loaded and every word earns its place.

    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?

    Given the tool's low complexity (one optional param, no nested objects, no output schema), the description adequately covers the main action and the 'all' option. However, it does not mention default behavior when the parameter is omitted or the return value, so it is not fully complete.

    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?

    The input schema has 100% coverage for the single parameter, including its enum values and a description ('Broker name or all'). The description repeats the 'specific or all' concept but adds no extra syntax or behavioral detail beyond the schema, so the baseline of 3 applies.

    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 uses a specific verb ('Logout') and identifies the resource ('broker or all brokers in your session'). It clearly distinguishes from sibling tools like set_active_broker or authenticate_broker by indicating an action to end a session.

    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?

    The description clearly implies when to use this tool (when the agent needs to log out of a broker session) and the 'specific or all' scope provides context. However, it does not explicitly mention alternatives or when not to use it, so a score of 4 is appropriate.

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

  • Behavior3/5

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

    No annotations are provided, so the description carries the burden. It indicates a read-only operation via 'Get' and clarifies session/authentication scope, but it doesn't describe failure modes, empty states, or whether any side effects occur.

    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?

    One concise sentence, front-loaded with the verb and resource, with no filler or repetition.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Complexity is low (no params), but without annotations or an output schema, the description could say more about the composition of the consolidated view and prerequisites. It communicates the key aggregation scope but leaves some gaps.

    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?

    There are zero parameters, and the description adds meaningful context by explaining that the operation implicitly spans all authenticated brokers in the session. This justifies the empty schema and adds value beyond it.

    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 uses a specific verb 'Get' with a clear resource ('consolidated view of all holdings') and scope ('across all authenticated brokers in your session'). This distinguishes it from sibling tools like get_portfolio and get_positions, which appear to operate per broker.

    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?

    It clearly states the intended context: use when you need holdings aggregated across all authenticated brokers. It does not explicitly name alternatives or exclusions, but the per-broker siblings make the distinction obvious.

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

  • Behavior3/5

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

    With no annotations provided, the description carries the full burden for behavioral disclosure. It adds useful context about broker selection (active vs. specific) but does not disclose the return format, potential errors (e.g., no active broker), or whether it supports multiple data points. This is a moderate level of transparency.

    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 a single, well-structured sentence that front-loads the action ('Get RSI') and then adds essential context ('from active or specific broker in your session'). Every word earns its place; no redundancy or wasted detail.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The description, combined with the schema, tells the agent what parameters to use and the broker context. However, there is no output schema, so the description should explain what the tool returns (e.g., a single RSI value or a time series). Omitting return information creates an incomplete picture for a tool of moderate complexity.

    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. The description adds value beyond the schema by explaining that the broker parameter falls back to the active broker if not specified, a semantic detail not captured in the schema's description of 'Specific broker (optional)'. This helps the agent understand parameter behavior.

    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 clearly states the tool retrieves the RSI (Relative Strength Index) for a symbol, using a specific verb 'Get' and a distinct resource. It distinguishes itself from sibling technical indicator tools (e.g., get_macd, get_atr) by naming the exact indicator.

    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?

    The description provides clear context: the RSI is fetched from either the active broker or a specific broker in the session. This implies the tool requires an established broker session and gives a hint about when to use it, though it does not explicitly exclude alternatives or state 'use this when you need RSI'.

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

  • Behavior4/5

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

    With no annotations, the description carries the transparency burden. It clearly indicates a read-only operation ('List') and scopes the data to the current session, but it does not mention potential side effects (none expected) or any authentication requirements. This is adequate for a simple listing tool.

    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 a single, front-loaded sentence that states exactly what the tool does without redundancy. Every word adds value.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness5/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given zero parameters, no output schema, and a very simple purpose, the description fully covers the essential information: the tool lists brokers and their authentication status. This is complete enough for an agent to select and invoke it.

    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?

    There are zero parameters, so the baseline is 4. The description does not need to add parameter semantics, and the empty schema is not a gap.

    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 uses a specific verb ('List') and clearly identifies the resource ('all available brokers') and the scope ('authentication status for your session'). This distinguishes it from sibling tools like set_active_broker or authenticate_broker, making the purpose unambiguous.

    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 when to use the tool (to see available brokers and their auth status) but does not explicitly state when not to use it or name alternatives. The context is clear enough for a simple listing tool, but there is no direct guidance.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

turtlestack-lite MCP server

Copy to your README.md:

Score Badge

turtlestack-lite MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/turtlehq-tech/turtlestack-lite'

If you have feedback or need assistance with the MCP directory API, please join our Discord server