Skip to main content
Glama
Kuco-dev

tossinvest-api-mcp

by Kuco-dev

Server Quality Checklist

75%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.0

  • Disambiguation5/5

    Each tool targets a distinct function: market calendar vs indicators, stock prices vs indicator prices, orders vs conditional orders, etc. The descriptions clearly differentiate between similar concepts (e.g., getPrices vs getMarketIndicatorPrices), leaving no ambiguity.

    Naming Consistency3/5

    Most tools follow a verb_noun pattern (getX, createX, cancelX), but there is a separate group with a 'tossinvest_' prefix and snake_case (tossinvest_list_operations, etc.). This mixed convention, along with camelCase in some names (getOrderbook), creates noticeable inconsistency.

    Tool Count4/5

    With 36 tools, the server covers a broad trading domain without being excessive. The count is reasonable for features like orders, conditional orders, market data, indicators, and account management, though it is slightly on the higher side.

    Completeness5/5

    The tool set includes all essential operations for a trading API: market data (calendar, indicators, orderbook, prices, trades), order management (create, cancel, modify, list, get), conditional orders, account info (holdings, buying power, commissions, exchange rate), rankings, and even meta tools for exploring the API. No obvious gaps.

  • Average 4/5 across 36 of 36 tools scored. Lowest: 2.9/5.

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

    • No community issues in the last 6 months
    • 5 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 passing
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • Tools from this server were used 2 times in the last 30 days.

  • 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

  • Behavior2/5

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

    Annotations already declare the tool as read-only, idempotent, and non-destructive. The description adds only that filtering by those properties is possible, but omits details like pagination, result limits, or output structure. Minimal additional value beyond annotations.

    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 conveys the core functionality and filter options without any redundant or verbose language.

    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, no output schema, and many sibling tools, the description is too brief. It does not explain how filters combine, whether pagination exists, or what constitutes an 'operation', leaving significant gaps for the agent.

    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 each parameter described individually. The description merely lists the filterable fields without adding new meaning. Baseline score of 3 is appropriate as the schema already carries the parameter semantics.

    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 that the tool returns a filtered list of registered operations, specifying the filter criteria. However, it does not differentiate itself from the sibling 'tossinvest_search_operations', which may have overlapping functionality.

    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 like 'tossinvest_get_operation' or 'tossinvest_search_operations'. There is no mention of context or exclusions.

    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?

    Annotations already indicate readOnlyHint=true and destructiveHint=false. The description adds useful behavioral context: Rate Limits Group 'MARKET_DATA' and HTTP method 'GET'. However, it does not describe response structure or pagination.

    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?

    Description is efficient with 3 sentences, front-loading the purpose. Includes endpoint and tags without redundancy. Minor repetition of title.

    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-only tool with well-documented schema and annotations, the description adequately covers purpose and behavioral constraints. No output schema exists, so no need to explain returns.

    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 a detailed description of the 'symbol' parameter including pattern and examples. The description does not add additional parameter meaning beyond the schema, meeting the baseline of 3.

    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 title '호가 조회' and description '매수/매도 호가 및 잔량을 조회합니다' clearly state the tool retrieves orderbook data (bids/asks with quantities). It specifies the verb '조회' and resource '호가', but does not explicitly distinguish from sibling tools like getPrices or getCandles.

    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 (e.g., when to use getPrices vs getOrderbook). No exclusions or prerequisites mentioned.

    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?

    Annotations already indicate read-only, idempotent, non-destructive behavior. Description adds rate limit group and confirms the endpoint, but lacks details on response format, error handling, or behavior for invalid symbols. The information provided is adequate but not comprehensive.

    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?

    Description is concise: title, bullet-like list of returned fields, rate limit group, and HTTP method. Each sentence adds value, and the structure is front-loaded with the most important info. No unnecessary words.

    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 parameter, but the lack of an output schema leaves the response format unknown. The description mentions some fields (name, market, currency) but not all, which may require the agent to infer or call the tool to discover the structure. Error scenarios are not covered.

    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 the baseline is 3. Description repeats the symbols parameter's bulk limit (200) but does not add new semantics beyond the schema's own detailed description. No additional constraints or clarifications are introduced.

    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?

    Description clearly states it retrieves basic stock info (name, market, currency, etc.) and supports bulk query of up to 200 symbols. It distinguishes the tool's purpose from price or order tools implicitly, but does not explicitly differentiate from siblings like getStockWarnings or getPrices.

    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 vs alternatives such as getPrices or getCandles. The description only explains what it does, not when it should be preferred or when other tools are more 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?

    Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering safety and idempotency. The description adds that it queries today's trades and belongs to the MARKET_DATA rate limit group, but does not disclose other behavioral traits like return format, ordering, or pagination behavior. With strong annotations, the description provides modest added 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 description is extremely concise: a title, one explanatory sentence, and metadata (rate limits, endpoint, tags). Every sentence adds value, and the information is front-loaded. No unnecessary words.

    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 required parameter with nested object, no output schema), the description is adequate but lacks details about return structure, ordering of trades, or error handling. It doesn't clarify the distinction from similar market data tools. More context would improve agent understanding.

    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% as both parameters (symbol, count) have descriptions in the schema. The tool description itself does not add any parameter semantics beyond what the schema already provides. Baseline 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 it queries recent trade history ('최근 체결 내역 조회') and specifies it's for today ('당일'). This verb+resource combination is specific enough to identify the tool's purpose, though it does not explicitly differentiate from sibling tools like getCandles or getOrderbook.

    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 explicit guidance on when to use this tool versus alternatives. It does not mention prerequisites, when not to use, or contrast with sibling tools. The only context is the rate limits group, which is not enough to guide selection.

    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?

    Annotations indicate readOnlyHint=false and destructiveHint=false, but the description does not elaborate on effects (e.g., invalidating previous tokens, permission requirements, rate limits). It adds only that the token string is not returned, which is minimal beyond annotations.

    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?

    Two concise sentences, front-loaded with the key action. Every word is informative with no redundancy.

    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 zero-parameter tool, the description covers core purpose and return value. However, it lacks specifics on the expiration info structure, which for a complete picture would be helpful.

    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?

    No parameters exist, so baseline is 4. The description adds meaning about the return behavior (only expiration info, not token string), compensating for the lack of an output schema.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the tool reissues an access token and explicitly mentions it returns only expiration info, not the token string. The verb 'refresh auth' matches sibling naming, but it does not explicitly distinguish from 'tossinvest_auth_status'.

    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 like tossinvest_auth_status. The description does not specify prerequisites, such as requiring a valid token, or when reissuing 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?

    Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds the rate limit group and HTTP method, but no additional behavioral details like error handling or output format.

    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?

    Extremely concise: one explanatory sentence plus minimal metadata (rate limit, endpoint). No wasted words, front-loaded with purpose.

    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?

    Lacks output format description and does not differentiate from similar tools like getHoldings. For a simple read-only query with good annotations, it is adequate but not fully 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?

    Schema description coverage is 100% with detailed parameter descriptions (symbol format, account fallback). The tool description does not add further parameter insights 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 clearly states it queries sellable quantity for a specific stock (종목). The title '판매 가능 수량 조회' matches. It is distinct from sibling tools like getOrders or createOrder.

    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 explicit guidance on when to use this tool vs alternatives such as getHoldings or getBuyingPower. The description only provides the rate limit group, no context on selection criteria.

    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?

    Adds useful details beyond annotations: nullable sessions, all null on holidays, three business days, times in KST, and rate limit group. No contradictions.

    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?

    Concise, front-loaded purpose, and every sentence adds value. Could be slightly more structured but is efficient.

    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?

    Explains output structure (4 sessions, 3 days, nullable) and rate limits, compensating for no output schema. Adequate for a simple 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 covers 100% of the parameter, so baseline is 3. Description does not add much beyond the schema's description of the date parameter but provides response context.

    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 it queries US market hours and returns three business days of session info, effectively distinguishing from the sibling getKrMarketCalendar by name and context.

    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 explicit guidance on when to use this tool over alternatives like getKrMarketCalendar; it only implicitly indicates US market focus.

    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?

    Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, providing safety context. The description adds that it searches specific fields but does not disclose additional traits like pagination or empty result handling. The description adds moderate value beyond annotations.

    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?

    A single, front-loaded sentence that efficiently conveys the tool's purpose without unnecessary words. It earns its place.

    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 lack of an output schema and the tool's search nature, the description could be more complete by mentioning that it returns matching operations or the response format. It is adequate but leaves some 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 coverage is 100%, so the schema already documents both parameters (query and limit) with descriptions. The description does not add additional meaning to the parameters, such as formatting or search syntax. 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 states the tool's purpose: searching operations by operationId, summary, description, path, and tag. This distinguishes it from sibling tools like list_operations (likely listing all) and get_operation (retrieving a specific one).

    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 explicit guidance on when to use this tool versus alternatives. It does not mention that it is for filtering or searching, while list_operations might be for bulk retrieval. No when-not or alternative tool mentions.

    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?

    Annotations already indicate read-only and idempotent. Description adds value by stating return type (array) and rate limits group (ORDER_INFO), which are beyond annotations.

    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?

    Concise and well-structured: title, main action, return detail, rate limit, endpoint. Front-loaded with key information, no wasted sentences.

    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?

    Complete for a simple read tool: explains what it returns (array of commission info by market) and rate limit group. Lacks output schema but mentions return type adequately.

    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 description. Tool description does not add additional parameter semantics beyond schema, so baseline 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 it queries trading commission rates for the current account by market, specifying domestic and foreign stocks. It distinguishes itself from siblings like getBuyingPower or getPrices, but does not explicitly name alternatives.

    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 explicit guidance on when to use this tool versus alternatives. It implies usage for commission rates but lacks exclusion criteria or context for when not to use.

    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?

    Annotations already declare readOnlyHint, idempotentHint, etc. The description adds value by specifying inclusion/exclusion of asset types and behavior for empty holdings. No contradictions. Could mention rate limits in more 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 very concise, using only a few sentences to convey purpose, scope, and edge case behavior. Structure is clear with title, body, rate limit info, and endpoint. No wasted words.

    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-only tool with two optional parameters, the description explains the return structure (summary and items) and the empty case. Lacks details on response fields, but no output schema exists. Rate limits mentioned. Sufficient for its complexity.

    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 descriptions for both parameters. The tool description itself adds no additional meaning beyond the schema, so 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?

    Description clearly states it retrieves holding stock information, specifies scope (KR/US stocks only, excludes options/bonds), and is a distinct resource (holdings). However, it does not explicitly differentiate from the sibling tool 'getStocks', which may cause ambiguity.

    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 explains what the tool does but provides no guidance on when to use it versus alternatives, when not to use it, or what prerequisites exist. Missing 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.

  • Behavior3/5

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

    Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safety profile is clear. The description adds no extra behavioral traits beyond listing what fields are returned, which is useful but not beyond what annotations already imply.

    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 listing many attributes, which is dense but clear. It could be broken into bullet points or structured for easier parsing, but it is efficient and front-loaded.

    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 a single parameter, full schema coverage, and no output schema, the description comprehensively lists all returned fields (method, path, tag, inputs, response schema, etc.), making the tool's behavior fully understandable without additional information.

    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 a clear description for operationId. The tool description does not add further meaning to the parameter itself; it only describes the output. 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 states it returns detailed information for a specific operationId, including method, path, tag, inputs, etc. This distinguishes it from sibling tools like tossinvest_list_operations and tossinvest_search_operations, which list or search operations without returning full details.

    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 scenarios where detailed operation info is needed, nor does it exclude cases where other tools are more appropriate.

    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?

    Annotations include destructiveHint=true, and the description adds critical behavioral details: the dry-run safety default, the requirement for TOSSINVEST_ENABLE_CONDITIONAL_ORDERS and confirmation, and the rate limits group. This goes beyond annotation-only disclosure.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is structured with title, explanation, rate limits, endpoint, and warning, but the sentence about tags and the warning section could be more concise. It front-loads the purpose but includes some redundancy.

    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?

    Lacking an output schema, the description does not explain the response format or error handling. It covers the effect (cancellation) and safety precautions, but omits return value details, which is a gap for complete agent understanding.

    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% and schema descriptions are comprehensive for all 4 parameters. The description adds minimal extra meaning (e.g., dryRun default, confirmation requirement), but does not significantly improve understanding 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 clearly states '조건주문 취소' (cancel conditional order) and explains the action using conditionalOrderId. It differentiates from sibling tools like createConditionalOrder, getConditionalOrder, modifyConditionalOrder.

    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 explains the dryRun default and required environment variables for execution, but does not explicitly state when to use or avoid this tool compared to alternatives like cancelOrder for spot orders.

    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?

    Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, which cover safety and idempotency. The description adds that it queries '당일' (today's) limits and includes a rate limits group, which provides useful context beyond what annotations offer.

    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 relatively concise, with only a few lines of text. It front-loads the title and purpose, but the inclusion of the endpoint path and tags is somewhat unnecessary and could be omitted for brevity.

    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-only query tool with strong annotations and full schema coverage, the description adequately covers the purpose and return type (upper/lower limits). It lacks details about pagination or error cases, but given the tool's simplicity, this is sufficient.

    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 has 100% description coverage for the symbol parameter, explaining the required format (e.g., 6-digit KRX, alphabetic US tickers). The description does not add additional meaning beyond the schema, 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 clearly states that the tool retrieves the daily upper and lower price limits for a stock. It uses specific verbs (조회/조회합니다) and resource (상/하한가). Among sibling tools, only this one provides price limits, so it is well-differentiated.

    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 does not provide explicit guidance on when to use this tool versus alternatives, nor does it mention preconditions or limitations. However, the tool's function is self-evident, and the context is simple enough that an agent can infer usage from 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.

  • Behavior4/5

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

    Annotations already declare readOnlyHint and idempotentHint. The description adds useful behavioral details: rate limits group (MARKET_DATA), HTTP method (GET), and the 200-item batch constraint. No contradiction with annotations.

    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 concise at three lines, front-loaded with the main action, and includes essential details (batch limit, rate limits, endpoint) without unnecessary text.

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

    Completeness4/5

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

    For a simple read-only tool with one parameter and no output schema, the description adequately covers purpose, constraints, and rate limits. It lacks response format details, but given the tool's simplicity, it is reasonably 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 coverage is 100% and the schema description for 'symbols' already covers the format, allowed characters, and separator. The description's main text does not add new parameter meaning beyond what is in 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 clearly states the tool retrieves current price information for stocks, supports batch queries up to 200 items separated by commas, and includes the HTTP endpoint. This distinguishes it from sibling tools like getCandles (historical data) and getOrderbook (order book depth).

    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 does not provide guidance on when to use this tool versus alternatives. For example, it doesn't contrast with getCandles for historical data or getMarketIndicatorPrices for index prices. Only a batch size limit is given, not usage context.

    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?

    Annotations indicate read-only, idempotent, and non-destructive behavior. The description adds context by specifying a maximum of 200 bars and the rate limit group, which supplements the annotations without contradiction.

    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 short and includes the key purpose, rate limit group, and endpoint. While efficient, it could be better structured with explicit usage guidance. Minor lack of structure.

    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 complexity (nested parameter but well-described in schema) and lack of output schema, the description is adequate but does not explain return value format or pagination details beyond the schema. Slightly incomplete for an agent.

    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 each parameter described in the input schema. The tool description does not add new information beyond what is in the schema, 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 clearly states it retrieves OHLCV candle data for a stock symbol, with a maximum of 200 bars. This effectively distinguishes it from sibling tools like getMarketIndicatorCandles, which focus on market indicators.

    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 stock candle data but does not explicitly contrast with alternatives (e.g., getMarketIndicatorCandles) or provide guidance on when to use this tool vs others. No exclusions are mentioned.

    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?

    Annotations already indicate readOnlyHint and destructiveHint. Description adds that both ongoing and terminated orders can be retrieved, but no further behavioral details (e.g., rate limits beyond group name).

    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?

    Description is concise and well-structured with title, action, and details. Includes rate limit group and HTTP method. Minor whitespace but no fluff.

    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 operation with no output schema, the description adequately covers purpose, identification, scope, and rate limit group. No major 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?

    Input schema has 100% description coverage, so description adds marginal extra meaning (e.g., clarifies conditionalOrderId role). 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 states it retrieves details of a single conditional order (조건주문 상세 조회) and distinguishes from sibling tools like getConditionalOrders (list), createConditionalOrder, etc.

    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 for retrieving single order details, but does not explicitly state when not to use or alternative tools. However, sibling context makes it clear.

    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?

    Annotations already indicate read-only and idempotent behavior. The description adds valuable context: it returns orders from all channels, supports cursor-based paging, mentions rate limits, and explains status values beyond what annotations provide.

    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 well-structured with clear sections (types, status values, paging, rate limits) and no unnecessary words. It is concise yet informative.

    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?

    The description covers key aspects: purpose, parameters, paging, and response fields like 'type' and 'nextCursor'. Without an output schema, it provides sufficient context for an agent to use the tool, though a full response structure would be ideal.

    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% with detailed descriptions. The tool description adds extra context about the 'type' field in responses and clarifies symbol usage across statuses, which supplements the schema.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states it lists conditional orders and specifies that it returns all types from all channels, which helps distinguish from related tools like getConditionalOrder. However, it does not explicitly name sibling tools or contrast with them.

    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 explains when to use the tool (listing conditional orders) and provides details on parameters like status and symbol. It does not explicitly state when not to use it or mention alternatives (e.g., getConditionalOrder for a single order).

    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?

    Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds valuable behavioral context: client ID is masked, and client secret/access token are never returned. This goes beyond annotations and helps the agent understand safety constraints.

    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?

    Two efficient sentences, front-loaded with the core purpose. Every word adds value; no redundancy or fluff.

    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 no parameters and no output schema, the description explains what is returned (auth settings, token readiness) and crucially what is not returned (secrets). It is complete for a status-check tool, though the exact fields of the response are not described.

    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?

    No parameters exist, so schema coverage is 100%. Baseline is 4. The description does not add parameter details 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 it returns authentication settings and token readiness status, with specific behavior on masking client ID and not returning secrets. The verb '반환합니다' and resource '인증 설정과 토큰 준비 상태' are specific. It distinguishes from siblings like tossinvest_refresh_auth.

    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 such as tossinvest_refresh_auth or other auth-related tools. No context on prerequisites, timing, or exclusions.

    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?

    Annotations already indicate destructiveHint=true and readOnlyHint=false. The description adds critical behavioral details: dryRun defaults to true, actual execution requires TOSSINVEST_ENABLE_TRADING and confirmation, and it affects real assets. Rate limits group is also mentioned.

    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 well-structured with line breaks, headers, and a warning. It is front-loaded with purpose. Minor redundancy (first line repeats title) but overall efficient for the information conveyed.

    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 destructive tool with no output schema, the description covers key aspects: purpose, constraint on executed orders, dryRun behavior, and required environment variables. Lacks details on response/error handling but sufficient for safe usage.

    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% with detailed parameter descriptions. The description itself reinforces the dryRun default and confirmation requirement, adding value beyond the schema. No parameter information is missing.

    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 cancels an existing order, with the specific verb '취소합니다' (cancels) and resource '기존 주문' (existing order). It distinguishes from siblings like cancelConditionalOrder by specifying it cancels general orders, not conditional ones.

    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 indicates the tool is for canceling existing orders and notes that executed orders cannot be canceled, but does not explicitly compare to alternatives like modifyOrder or cancelConditionalOrder. Usage guidance 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.

  • Behavior5/5

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

    Beyond annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds behavioral traits: returns 3 business days, excludes special sessions, uses KST, integrated mode, and rate limit group. No contradictions.

    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?

    Concise, front-loaded with purpose, and each sentence adds value. No redundancy.

    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?

    Lacks description of response structure and does not clarify the optional date parameter's behavior (e.g., default to current day). Some gaps remain for a tool with no output schema.

    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 the date parameter already described. The description adds no additional meaning or usage context for the parameter, such as default behavior or output structure. 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 states the tool retrieves Korean market trading hours, specifies scope (integrated mode, excludes special sessions, returns 3 days), and distinguishes from sibling getUsMarketCalendar by explicitly mentioning KR and 'domestic market'.

    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 through the description of 'domestic market' and sibling tool names, but no explicit guidance is given on when to use this tool versus alternatives (e.g., getUsMarketCalendar) or when not to use it.

    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?

    Annotations already indicate read-only and idempotent behavior. The description adds batch limit (200), delimiter (comma), error code (400), and rate limit group, providing useful context beyond annotations. No contradictions.

    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 compact with a clear structure: title, purpose, batch limit, symbol constraints, error note, rate limit, and tag. Information is front-loaded. Minor markdown verbosity does not detract significantly.

    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 retrieval tool with one parameter and no output schema, the description covers key aspects: purpose, supported symbols, limits, error handling, and rate limits. It does not detail the response structure, but the output is likely obvious price data given the name and 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 has 100% description coverage for the single parameter, already specifying symbol format, limit, and example. The description adds the symbol catalog reference and error handling, but these are minor extensions to the schema's own description.

    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 '조회' (retrieve) and the resource '시장 지표 현재가' (current prices of market indicators). It specifies domestic indices and government bonds, distinguishing it from sibling tools like getPrices (stocks) and getExchangeRate.

    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?

    Explicitly states supported symbols come from a catalog of 8 types and that unsupported symbols return a 400 error. This guides when to use the tool. However, it does not explicitly contrast with other market indicator tools like getMarketIndicatorCandles.

    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?

    Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, indicating a safe read operation. The description adds the rate limit group and HTTP method, but no additional behavioral traits beyond confirming it queries all statuses. The annotations carry most of the transparency burden.

    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 front-loaded with a clear title and a concise two-sentence explanation, followed by relevant metadata (rate limits, HTTP method, tags). Every piece serves a purpose with no redundancy.

    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?

    For a read-only, single-order retrieval tool with full schema coverage and informative annotations, the description covers the core functionality, status scope, and rate limit group. No output schema is present, but the return format is not critical for tool selection. The description is contextually 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 coverage is 100%, so the schema already documents both parameters (orderId and account) with descriptions. The description does not add any further parameter-specific meaning or usage details beyond what the schema 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 states the tool retrieves detailed information for a specific order (주문 상세 조회) and explicitly mentions it can query orders in any status. This distinguishes it from sibling tools like getOrders (which lists orders) and cancelOrder/modifyOrder (which mutate 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 description implies the tool should be used when you need details of a specific order, but does not provide explicit guidance on when not to use it or cite alternatives. However, the context of sibling tools makes the use case fairly clear.

    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?

    Annotations indicate read-only, idempotent, non-destructive. The description adds behavioral details: response count may be less than requested, empty rankings on no aggregation, and nuanced price.basePrice behavior. It does not contradict annotations.

    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 structured with bullet points, front-loaded with the main purpose. While somewhat lengthy, every sentence adds value without redundancy.

    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 tool complexity, the description covers major edge cases (unsupported duration, missing data, price behavior). No output schema exists, but description partially addresses return structure. Sufficiently complete for most use cases.

    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 baseline is 3. The description adds context on aggregation logic and price semantics, but the schema already describes each parameter adequately.

    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 queries stock rankings by marketCountry, duration, and type, providing top 100. It distinguishes itself from siblings by focusing on rankings and includes detailed type and duration explanations.

    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 explains when to use the tool (get rankings) and highlights that TOP_GAINERS and TOP_LOSERS do not support realtime duration, guiding against invalid usage. It does not explicitly mention alternatives but the context makes it clear.

    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?

    The description adds behavioral context beyond annotations by revealing the mutation guard, dryRun defaulting to true, and that it cannot bypass order safety policies. Annotations only indicate destructive and readOnly=false.

    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?

    Two sentences, front-loaded with core action, no wasted words. Highly concise and clear.

    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 7 parameters, no output schema, and nested objects, the description is short. It lacks guidance on finding operationId (sibling tool exists) and handling responses. Adequate for a wrapper but could be more 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 coverage is 100%, so baseline 3. The description does not add meaningful parameter details beyond what the schema already provides, such as the dryRun default which is in 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 clearly states the tool calls any Toss Securities API operation by operationId, acting as a wrapper for unsupported clients. This distinguishes it from sibling tools which are specific 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 explicitly states it is for clients that do not support direct tool registration, providing context for when to use it. However, it does not explicitly exclude usage when a specific tool exists, though implied.

    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?

    Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint. The description adds value by specifying it returns cash-based buying power (excluding margin) and includes the rate limits group. This provides useful behavioral context beyond the annotations.

    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 concise, front-loaded with the Korean title, then a clear purpose, rate limits group, and endpoint. Every sentence adds value without redundancy.

    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?

    The description is mostly complete for a simple read-only tool. However, it lacks an explanation of the return value format or structure, which would be helpful given there is no output schema. Still, the core functionality is well communicated.

    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 both parameters having descriptions. The description does not add any additional meaning beyond what the schema provides, 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 clearly states the tool retrieves '매수 가능 금액' (buying power) and specifies it's for cash-only (no margin) orders. The verb '조회' (retrieve) and resource are clear. Unlike siblings like getSellableQuantity or getOrders, this tool is specifically for available funds for buy 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 description implies using this tool before placing buy orders to check available funds, but does not explicitly state when not to use it or mention alternatives. However, the context is clear enough for an AI agent to infer appropriate usage.

    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?

    Annotations already mark destructiveHint=true and readOnlyHint=false. The description adds context about real asset impact, dryRun safety, confirmation requirement, rate limit group, and type-specific behaviors (e.g., OCO/OTO only LIMIT). No contradictions.

    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 detailed but well-structured with headings and bullet points. It front-loads the core purpose and type explanations. Some redundancy exists (e.g., repeating trigger behavior), but overall efficient for a complex 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?

    Given the tool's complexity (nested objects, multiple types), the description covers key aspects: types, constraints, real-asset impact, safety features (dryRun, confirmation), and rate limits. No output schema exists, so return values are not explained; but the description is fairly complete for usage.

    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 baseline is 3. The description adds meaning beyond schema by explaining type-specific constraints (e.g., OCO first/second both SELL, OTO first BUY second SELL) and clarifying that quantity is shared across conditions in OCO/OTO.

    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 creates conditional orders that monitor prices for specific stocks and automatically execute trades when conditions are met. It distinguishes itself from siblings like `createOrder` by focusing on conditional order creation, and explains the three types (SINGLE, OCO, OTO).

    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 guidance on when to use each type (SINGLE, OCO, OTO) with specific side and price constraints. It also mentions the default dryRun behavior and required confirmation for real execution. However, it does not explicitly contrast with `createOrder` for immediate orders.

    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?

    Annotations already indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering safety and idempotency. The description adds specifics about the returned fields (version, server URL, tags, etc.), which is additional context beyond annotations.

    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 first states the primary purpose and then lists the specific items included. It is extremely concise with no wasted words.

    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?

    With no parameters and no output schema, the description sufficiently explains what the tool returns. No additional details are necessary.

    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 no parameters, so the description does not need to explain them. The schema coverage is 100%, and the baseline for zero parameters is 4.

    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 it returns a summary of the Toss Securities OpenAPI spec, listing specific elements like version, server URL, tags, operation count, etc. This distinguishes it from sibling tools that deal with market data, orders, or accounts.

    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 explains what the tool returns but does not explicitly guide when to use it versus alternatives. It is implied as an initial overview tool, but no explicit 'when not to use' or exclusions are provided.

    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?

    Annotations already mark as read-only and idempotent. Description adds valuable context: provisional data until market close, updatedAt field, breakdown consistency, and balance of buy/sell sums.

    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?

    Concise, well-structured with bullet points. Every sentence adds value; no waste.

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

    Completeness4/5

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

    With no output schema, description covers data types, pagination, currency, balance, and provisional nature. Nearly complete; could mention if response includes breakdown only for institutions.

    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 covers 100% of parameters. Description adds meaning: interval units, count limits, until format/pagination usage, and symbol restriction beyond enum values.

    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?

    Description clearly states the tool queries investor trading amounts for KOSPI/KOSDAQ markets, distinguishes from sibling tools like getMarketIndicatorPrices and getMarketIndicatorCandles.

    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?

    Explicitly lists supported symbols, pagination mechanism, and data interpretation notes. Lacks explicit when-not-to-use compared to alternatives, but sibling context makes it clear.

    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?

    The description adds significant behavioral details beyond the annotations (readOnlyHint, etc.), such as pagination nuances, status lifecycle group mapping, and rate limit group. These traits are not captured in annotations and are crucial for agent decision-making.

    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 well-structured with clear sections (introduction, status values, pagination, rate limits). Every sentence adds value; no fluff. It is appropriately sized and front-loaded with the core purpose.

    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 no output schema, the description does not explain return values. However, it covers input behavior comprehensively, including edge cases (e.g., limit ignored in OPEN). The agent can infer the response shape from typical list endpoints. Slightly incomplete but strong overall.

    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?

    Although schema description coverage is 100%, the description adds substantial meaning by explaining how status values map to individual order statuses and how pagination parameters behave differently for OPEN vs CLOSED. This goes beyond the schema's syntactic description.

    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 '주문 목록 조회' (order list inquiry) with explicit filtering by status and symbol. It distinguishes itself from sibling tools like getOrder (single order) and createOrder by focusing on listing, making the purpose precise 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 Guidelines4/5

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

    The description provides detailed context on when to use OPEN vs CLOSED status, including pagination behavior differences. While it doesn't explicitly state when not to use the tool versus alternatives, the usage context is clear and sufficient for an AI agent to decide correctly.

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

  • Behavior5/5

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

    Annotations confirm read-only, idempotent, non-destructive behavior. The description adds critical details: active time criteria, sorting order, data latency (seconds for VI, daily batch for others), and response differences (404 vs empty array). No contradictions.

    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 well-structured with paragraphs and bullet points, covering necessary details efficiently. Slightly verbose with some internal references (e.g., full enum reference) but overall concise.

    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 no output schema, the description thoroughly explains the response format (empty array vs 404), active definition, sorting, and timeliness. This is complete and actionable for an AI agent.

    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 single parameter 'symbol' is fully described in the input schema with pattern and examples. The description does not add extra parameter semantics beyond what the schema provides, so baseline score 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 retrieves buy warnings and VI activation information for a stock. It lists specific warning types and provides distinct error handling (404 vs empty array), making its 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 Guidelines4/5

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

    The description explains when results are empty vs when a stock is not found, and notes data timeliness for different warning types. However, it does not explicitly contrast with sibling tools or state when to use it over alternatives.

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

  • Behavior5/5

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

    Annotations include destructiveHint=true and openWorldHint=true. Description adds that it affects real assets, dryRun default is true, and confirmation is required for actual execution. Also mentions rate limits and error conditions beyond what annotations provide.

    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?

    Description is well-structured with sections, bullet points, and warnings. It front-loads the purpose. Slightly verbose but each sentence adds value; could be trimmed slightly without loss.

    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 complexity (multiple modes, constraints, no output schema), the description covers usage, parameters, and safety warnings well. Missing return value explanation, but the schema is comprehensive and sibling tools for further details exist.

    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 baseline is 3. Description adds value by summarizing the two order creation methods (quantity-based vs amount-based) and their differences, which helps the agent choose correctly.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description states '주문 생성' and '매수 또는 매도 주문을 생성합니다.' which clearly indicates the verb (create) and resource (orders). It distinguishes from sibling tools like 'cancelOrder' and 'modifyOrder' by being the primary order creation endpoint.

    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 explicit guidance on when to use 'quantity' vs 'orderAmount', constraints on orderAmount (US MARKET only, regular hours), and mentions dryRun and confirmation requirements. Does not explicitly state when not to use this tool but context is clear from sibling names.

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

  • Behavior5/5

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

    Beyond annotations (destructiveHint=true, readOnlyHint=false), the description reveals critical behavioral details: the modification cancels and recreates the order, resulting in a new conditionalOrderId and invalidation of the old one. It also warns about real asset impact, dryRun default, required confirmation and environment variable, and specifies rate limits group.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is moderately concise but includes some repetition (e.g., explaining the reset behavior in multiple places). While every sentence adds value, the structure could be tightened. The caution and rate limits sections are well-placed, but overall length is acceptable given the complexity.

    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 the tool's complexity, no output schema, and annotations that do not fully explain side effects, the description is comprehensive. It covers the cancellation-and-recreation behavior, new ID issuance, required fields, dryRun mode, confirmation, environment variable, rate limits, and real asset impact. An agent can safely invoke this tool with the provided information.

    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% with descriptions for all parameters. The description adds value by explaining that type is the result type and transitions are allowed, that expireDate is required here unlike creation, and that symbol is not needed. However, there is a potential contradiction: the description states quantity is inside first/second conditions, but schema shows quantity as a top-level field. This could cause confusion, slightly reducing the score.

    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 modifying a conditional order ('조건주문 수정') and distinguishes it from creation (expireDate required) and cancellation (new ID issued). It specifies that the entire order is reset, leaving no ambiguity about the operation's scope.

    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 explains when to use the tool (to modify a conditional order) and provides explicit guidance: send all fields (type, expireDate, first, second if needed), and notes that symbol is unnecessary. It contrasts with creation by stating expireDate is required here. However, it does not explicitly state when to use alternatives like cancelConditionalOrder or createConditionalOrder instead.

    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?

    Annotations already declare readOnlyHint, idempotentHint, destructiveHint. Description adds behavioral details: max 200 candles, pagination mechanism, rate limit group, and error responses. No contradictions.

    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?

    Well-structured with line breaks and bullet points. Front-loaded with main purpose, then detailed constraints. Every sentence adds value. No wasted words.

    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?

    Covers key aspects: purpose, supported symbols, intervals, pagination, error handling, rate limits. However, does not describe the response format or structure beyond 'OHLCV', which could be improved for completeness.

    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?

    Despite 100% schema description coverage, the description adds valuable context not in the schema (e.g., URL encoding for '+' in 'before' parameter, clarification of interval restrictions per symbol type). Adds meaning 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 clearly states it queries market indicator candle chart data (OHLCV) with a max of 200 candles. It distinguishes from the sibling 'getCandles' tool by explicitly stating to use that for individual stocks.

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

    Usage Guidelines5/5

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

    Provides explicit when-to-use guidance: which tool to use for individual stocks, which intervals are supported per symbol type, and mentions rate limit group. Also covers error responses for unsupported symbols and invalid requests.

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

  • Behavior5/5

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

    Extensive behavioral context beyond annotations: dryRun default, confirmation requirement, market-specific rules (KR quantity required, US quantity not allowed), rate limits group, and specific error codes. No contradictions with annotations (destructiveHint=true, readOnlyHint=false).

    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?

    Concise and well-structured with clear sections for KR stocks, US stocks, and important warnings. No unnecessary sentences; every part adds information.

    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?

    No output schema, so description should cover return behavior. It provides many error codes and prerequisites, but does not describe the success response format. Still, it is comprehensive enough for safe invocation.

    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%, baseline 3. Description adds value by summarizing market-specific parameter constraints (KR vs US) and mentioning the rate limits group, which is not in the schema. It also provides context for dryRun and confirmation, though these are already in 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 clearly states the tool modifies existing orders (price or quantity) and differentiates between KR and US markets. It distinguishes itself from sibling tools like createOrder or cancelOrder by specifying its action on existing 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?

    Usage is implied for modifying orders, but no explicit comparison to alternatives like cancelOrder. However, it provides critical guidelines: default dryRun=true, requirement of TOSSINVEST_ENABLE_TRADING=true and confirmation for actual execution, and market-specific constraints, which are highly useful for correct usage.

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

  • Behavior5/5

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

    Annotations already indicate readOnly, idempotent, and non-destructive. The description adds significant context: only BROKERAGE accounts are returned, child accounts are excluded, and the accountType enum meaning is referenced. No contradictions with annotations.

    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 well-structured with bullet points, each sentence adds value. It is concise yet informative, covering purpose, limitations, and usage context without redundancy.

    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?

    While the description explains the important accountSeq field and references the enum schema, it does not fully describe the response structure. Given no output schema, a bit more detail on response fields would improve completeness, but it is adequate for a simple list tool.

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

    Parameters5/5

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

    There are no parameters, so the description does not need to add parameter semantics. The schema coverage is 100%, and the description effectively addresses the tool's usage without mentioning parameters.

    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 a list of accounts, specifically noting it currently returns only BROKERAGE accounts. It distinguishes itself from siblings by focusing on account listing, which is a prerequisite for other account-related APIs.

    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 explains when to use (to get account list) and provides context that accountSeq is used in other APIs, implying this tool should be called first. It notes limitations (only BROKERAGE, no child accounts). However, it does not explicitly state when not to use or mention alternatives.

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

  • Behavior5/5

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

    The description adds substantial behavioral context beyond the annotations (readOnlyHint, idempotentHint, etc.): it discloses the 1-minute refresh cycle, the reference nature of the rate, and the validFrom/validUntil time window. No contradiction with annotations is present.

    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 concise and well-structured with bullet points. Each sentence adds meaningful information: update frequency, reference vs actual rate, dateTime behavior, response window, and rate limit group. No redundant or verbose content.

    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 the tool's simplicity (single parameter, no output schema), the description covers all necessary aspects: purpose, parameter behavior, return value semantics (validFrom/Until), rate limits, and usage caveats. It is complete for an agent to correctly invoke the tool.

    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 by explaining the behavior of the dateTime parameter and noting the reference rate nature, which is not fully captured in the schema. It does not need to re-document base/quote currencies since those are already well described.

    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 querying KRW ↔ USD exchange rates. It uses a specific verb (조회) and resource (환율), and the scope is explicitly limited to the KRW/USD pair, which distinguishes it from sibling tools like getMarketIndicatorPrices or getOrderbook.

    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 useful context: the rate is a reference rate with a 1-minute update interval, not the actual transaction rate, and if dateTime is omitted, the current rate is returned. However, it does not explicitly state when not to use this tool or suggest alternatives like the actual trading rate source.

    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

tossinvest-api-mcp MCP server

Copy to your README.md:

Score Badge

tossinvest-api-mcp 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/Kuco-dev/tossinvest-api-mcp'

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