idxpro
Server Details
Data saham Indonesia (IDX) untuk AI: harga, teknikal, screener, deteksi bandar, sektor, earnings.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.2/5 across 16 of 16 tools scored. Lowest: 3.6/5.
Most tools have distinct purposes clearly described, especially the broker-related ones (activity, chart, distribution, detector, top brokers). However, the proliferation of broker flow tools could cause some confusion, though descriptions help differentiate them.
All tools follow a consistent 'get_' prefix with snake_case naming, e.g., get_broker_activity, get_financial_statements. There is no mixing of styles, and the names accurately reflect the retrieved data.
With 16 tools, the count is slightly above the recommended range but still reasonable given the breadth of Indonesian stock market data (prices, financials, broker flow, etc.). Each tool serves a specific purpose without being excessive.
The tool set covers core areas: prices, financial statements, broker activity, and earnings. However, it lacks tools for historical corporate actions, sector performance, or stock screening. The calendar tool only shows today's events, leaving gaps for backtesting or broader analysis.
Available Tools
16 toolsget_analyst_ratingsARead-onlyInspect
Returns analyst rating summary: Buy/Hold/Sell count, consensus recommendation, and price target range (average/high/low vs current price). Use when you need analyst sentiment or target price for a stock.
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | Stock symbol, e.g. BBCA |
Output Schema
| Name | Required | Description |
|---|---|---|
| total_buy | Yes | |
| total_hold | Yes | |
| total_sell | Yes | |
| last_updated | Yes | |
| price_target | Yes | |
| total_analyst | Yes | |
| recommendation | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and destructiveHint=false. Description adds that it returns a summary but does not disclose any further behavioral traits like pagination or data freshness. Still clear enough for a simple read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-load the core functionality and usage hint. No superfluous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 param, output schema present), the description covers all necessary information completely.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with only one parameter (symbol) well-described. Description does not add 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states it returns analyst rating summary with Buy/Hold/Sell count, consensus recommendation, and price target range. This clearly distinguishes it from sibling tools that provide different stock data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description advises using the tool when needing analyst sentiment or target price for a stock. However, it does not explicitly state when not to use it or compare to alternatives like get_stock_info.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_broker_activityARead-onlyInspect
Returns all stocks traded by a specific broker. Use when you want to see what stocks a broker is buying/selling. period: 1d, 7d, 1m, 3m, 6m, 1y. transaction_type: net, buy, sell. market_board: all, regular. investor_type: all, foreign, domestic.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number | |
| limit | No | Results per page, default 20 | |
| period | No | Time period | 1d |
| broker_code | Yes | Broker code, e.g. BK | |
| market_board | No | Market board filter | regular |
| investor_type | No | Investor type filter | all |
| transaction_type | No | Transaction type filter | net |
Output Schema
| Name | Required | Description |
|---|---|---|
| brokers_buy | Yes | |
| brokers_sell | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and destructiveHint=false. The description adds no behavioral details beyond the filter options (period, transaction_type, etc.) which are already in the schema. It does not disclose pagination behavior, data freshness, or rate limits, but the safety profile is already covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: two sentences plus a list of parameter options. It is front-loaded with the purpose and usage. The parameter list is somewhat redundant with the schema but helps quick reference.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 parameters, an output schema exists, and there are sibling tools, the description covers the core purpose and filter options. It does not explain result ordering, output structure, or pagination behavior, but the output schema fills some gaps. Adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description repeats enum values for period, transaction_type, market_board, and investor_type, which adds minor redundancy but does not deepen semantic understanding beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns all stocks traded by a specific broker, using a specific verb and resource. It distinguishes from siblings like 'get_broker_activity_chart' implicitly, but does not explicitly differentiate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly tells when to use the tool: 'Use when you want to see what stocks a broker is buying/selling.' It provides clear context but lacks exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_broker_activity_chartARead-onlyInspect
Returns a broker's net buy/sell values as a time series. Use when you need to see a broker's activity trend over time, not the list of stocks they traded. from/to in YYYY-MM-DD. period: 1d, 7d, 1m, 3m, 6m, 1y. investor_type: all, foreign, domestic. market_board: regular, all.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | End date YYYY-MM-DD | |
| from | No | Start date YYYY-MM-DD | |
| period | No | Time period | 1d |
| broker_code | Yes | Broker code, e.g. BK | |
| market_board | No | Market board | regular |
| investor_type | No | Investor type filter | all |
Output Schema
| Name | Required | Description |
|---|---|---|
| to | Yes | |
| from | Yes | |
| chart_data | Yes | |
| data_last_updated | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the description's statement about returning time series data adds minor behavioral context. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph of ~50 words, front-loaded with purpose, then usage, then parameter details. Every sentence adds necessary information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists, the description adequately covers purpose, usage, and parameter format. It does not mention data range limits, but for a read-only time series tool with annotations, this is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but description adds value by specifying date format (YYYY-MM-DD) and listing enum values for period, investor_type, market_board, which clarifies parameter usage beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Returns a broker's net buy/sell values as a time series,' which is a specific verb+resource. It distinguishes from siblings like get_broker_activity (list of trades) and get_daily_chart (price chart).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use when you need to see a broker's activity trend over time, not the list of stocks they traded,' providing clear when-to-use and when-not. It also gives example values for parameters but does not name alternative tools explicitly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_broker_distributionARead-onlyInspect
Returns top buyer/seller broker pairs for a stock (who traded with whom). Use when you need to see the broker flow network for a specific stock on a specific date. date in YYYY-MM-DD. investor_type: all, foreign, domestic. market_board: all, regular. period: 1d, 7d, 1m, 3m, 6m, 1y.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | Date YYYY-MM-DD | |
| period | No | Period | 1d |
| symbol | Yes | Stock symbol | |
| market_board | No | Market board | regular |
| investor_type | No | Investor type | all |
Output Schema
| Name | Required | Description |
|---|---|---|
| symbol | Yes | |
| by_value | Yes | |
| end_date | Yes | |
| date_info | Yes | |
| start_date | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safe-read nature is known. The description adds value by specifying the output context (top buyer/seller pairs) and enumerating allowed values for date, period, investor_type, and market_board, which goes beyond the schema's default descriptions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences: first states purpose, second lists parameter options. It is front-loaded and efficient, though the list format could be slightly more integrated. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the completeness of the input schema (100% coverage), annotations (readOnly), and existence of an output schema, the description adequately covers the essential information for selecting and invoking the tool. No gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so all parameters are described in the input schema. The description reiterates allowed enum values but does not add new context beyond what the schema already provides. Baseline assessment of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Returns top buyer/seller broker pairs for a stock (who traded with whom).' This is a specific verb-resource combination that clearly distinguishes the tool from siblings like get_top_brokers (which likely lists broker names) and get_broker_activity (activity over time).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use when you need to see the broker flow network for a specific stock on a specific date.' This provides clear context for when to use the tool but does not explicitly mention when not to use it or suggest alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_daily_chartARead-onlyInspect
Returns daily OHLCV candle data. Use when you need historical price analysis over days/months/years. NOTE: API uses reversed convention — from=more recent date, to=older date (e.g. from=2024-12-31, to=2024-01-01). limit=0 means no limit.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Older date YYYY-MM-DD, e.g. 2024-01-01 | |
| from | No | More recent date YYYY-MM-DD, e.g. 2024-12-31 | |
| limit | No | Max candles, 0=no limit | |
| symbol | Yes | Stock symbol |
Output Schema
| Name | Required | Description |
|---|---|---|
| candles | Yes | |
| last_data | Yes | |
| allow_decimal | Yes | |
| previous_timestamp | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and destructiveHint=false; description adds crucial non-obvious behavioral details: reversed date convention (from=recent, to=older) and limit=0 meaning no limit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three compact sentences, front-loaded with purpose, each sentence adding distinct value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers main use case, date reversal quirk, and limit semantics. With an output schema present, no need to describe return values. Complete for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema already has 100% coverage, but description adds essential semantic clarification for the reversed date convention and limit=0 behavior, which is critical for correct usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns daily OHLCV candle data for historical price analysis over days/months/years, distinguishing it from siblings like get_intraday_chart.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says when to use it (historical price analysis over days/months/years) and notes the reversed date convention. Lacks explicit when-not-to-use or listing alternatives, but the context is clear from sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_earnings_recapARead-onlyInspect
Returns quarterly EPS recap for all IDX stocks. 50 items per page, ~878-919 total rows. Use for earnings season analysis, finding top/bottom EPS performers, or YoY growth comparison across the market.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number, 1-based (default 1) | |
| year | Yes | Year, e.g. 2025 or 2026 | |
| order | No | Sort order: "desc" (default) or "asc" | |
| quarter | Yes | Quarter (1-4) | |
| sort_by | No | Sort field: "eps_change_pct" (default, YoY % change), "eps_actual" (absolute EPS this quarter), "eps_prev_year" (EPS same quarter prior year), "symbol" (alphabetical) |
Output Schema
| Name | Required | Description |
|---|---|---|
| page | Yes | |
| year | Yes | |
| items | Yes | |
| quarter | Yes | |
| total_rows | Yes | |
| next_period | Yes | |
| prev_period | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate read-only; description adds pagination details (50 per page, total rows ~878-919). 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, then details on pagination and use cases. Efficient and no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers purpose, pagination, and use cases. Output schema exists. Minor omission of error handling, but sufficient for a read-only tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline 3. Description adds context about number of rows but doesn't significantly enhance parameter meaning beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it returns quarterly EPS recap for all IDX stocks, with specific verb and resource. Distinguishes from sibling tools like get_analyst_ratings or get_stock_info.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit use cases (earnings season analysis, top/bottom performers, YoY comparison). Lacks explicit 'when not to use' but context is clear given sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_financial_statementsARead-onlyInspect
Returns detailed financial statement data. Use when you need income statement, balance sheet, or cashflow by period. data_type: 1=annual 2=quarterly. report_type: 1=income 2=balance_sheet 3=cashflow. statement_type: 1=consolidated 2=parent.
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | Stock symbol | |
| data_type | Yes | 1=annual, 2=quarterly | |
| report_type | Yes | 1=income, 2=balance_sheet, 3=cashflow | |
| statement_type | Yes | 1=consolidated, 2=parent |
Output Schema
| Name | Required | Description |
|---|---|---|
| rows | Yes | |
| unit | Yes | |
| symbol | Yes | |
| periods | Yes | |
| currency | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so description's behavioral contribution is clarifying data context by period and type. No contradictions. Adds value by specifying what financial data is returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, then parameter mapping. No wasted words. Efficient and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 4 parameters with full schema documentation and existence of output schema, the description sufficiently covers purpose, when to use, and parameter meanings. No gaps identified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with detailed parameter explanations. Description repeats these mappings but does not add new semantic meaning beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Returns detailed financial statement data' with specific types (income, balance sheet, cashflow). Distinguishes from sibling tools like get_stock_prices and get_analyst_ratings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit usage guidance: 'Use when you need income statement, balance sheet, or cashflow by period.' Does not explicitly mention when not to use, but sibling tools cover other data types, so context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_foreign_domestic_flowARead-onlyInspect
Returns foreign vs domestic buy/sell breakdown by value, volume, and frequency. Works for market-wide (symbol=IHSG) or per stock. Includes net foreign (regular + all markets). period: 1d (default), 1w, 1m.
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Period: 1d (default), 1w, 1m | |
| symbol | Yes | Stock ticker (e.g. BBCA) or IHSG for market-wide flow |
Output Schema
| Name | Required | Description |
|---|---|---|
| to | Yes | |
| from | Yes | |
| value | Yes | |
| period | Yes | |
| symbol | Yes | |
| volume | Yes | |
| frequency | Yes | |
| date_range | Yes | |
| all_markets_net_foreign | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already show readOnly. Description adds that it includes net foreign and period options. No contradiction. Adequate for a read tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two efficient sentences with period note. Front-loaded main purpose, no waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Complete given tool simplicity and presence of output schema. Covers purpose, scope, parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers both params fully. Description adds use of IHSG for market-wide, enhancing beyond schema. Baseline 3 raised.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it returns foreign vs domestic buy/sell breakdown by value, volume, and frequency. Specifies scope (market-wide or per stock) and includes net foreign. Distinct from siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage when foreign/domestic flow needed. Describes valid symbols and period options. No explicit alternatives but context clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_intraday_chartARead-onlyInspect
Returns TODAY's intraday 1-minute OHLCV candles for one stock (newest-first). Use for minute-level price movement within the current trading session. Only today's session is available; outside market hours the result may be empty. limit caps the number of candles (0 = all).
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Deprecated/ignored — endpoint always returns today's session | |
| from | No | Deprecated/ignored — endpoint always returns today's session | |
| limit | No | Max candles, 0=no limit | |
| symbol | Yes | Stock symbol |
Output Schema
| Name | Required | Description |
|---|---|---|
| candles | Yes | |
| allow_decimal | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, indicating a safe read operation. The description adds valuable behavioral details: temporal restriction to today's session, newest-first ordering, and the possibility of empty results outside market hours.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three concise sentences with no redundant information. The first sentence delivers the core action and result, the second explains use, and the third covers constraints. Every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema, the description adequately covers all relevant aspects: purpose, granularity (1-minute), ordering, temporal scope, and limit behavior. No critical gaps remain for an agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameters have descriptions. The description adds meaning beyond the schema by clarifying that 'limit' controls the count (0 = all), and that 'to'/'from' are deprecated. This enhances interpretation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Returns'), identifies the resource ('intraday 1-minute OHLCV candles for one stock'), and specifies scope ('TODAY's' and 'newest-first'). It clearly distinguishes from the sibling tool get_daily_chart by focusing on minute-level data for the current session.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description advises using the tool for 'minute-level price movement within the current trading session' and notes that outside market hours results may be empty. While it does not explicitly name alternatives, the context implies that get_daily_chart is for daily data.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_market_detectorARead-onlyInspect
Returns broker buy/sell flow for a stock (bandar detector). Use when you want to identify which brokers are accumulating or distributing a specific stock. from/to in YYYY-MM-DD. tx_type: net, buy, sell. market_board: regular, nego, cash. investor_type: all, foreign, domestic.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | End date YYYY-MM-DD | |
| from | No | Start date YYYY-MM-DD | |
| limit | No | Max results, default 25 | |
| symbol | Yes | Stock symbol | |
| tx_type | No | Transaction type | net |
| market_board | No | Market board | regular |
| investor_type | No | Investor type | all |
Output Schema
| Name | Required | Description |
|---|---|---|
| to | Yes | |
| from | Yes | |
| bandar | Yes | |
| buyers | Yes | |
| symbol | Yes | |
| sellers | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds useful behavioral details like date format and enum options but does not significantly extend 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the main purpose. It uses clear sentences, but could benefit from bullet points for enums.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers purpose, usage, parameter formats, and output concept. Given the existence of an output schema and annotations, it is fairly complete, though it could mention output structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are well-documented. The description adds a slight summary of enum options and clarifies date format, but this is minimal added value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it returns broker buy/sell flow for a stock, clearly identifying the purpose. However, it does not explicitly differentiate from sibling tools like get_broker_activity or get_broker_distribution, so it lacks strong distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It specifies when to use ('when you want to identify which brokers are accumulating or distributing'), providing clear context. However, it offers no guidance on when not to use or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_orderbookARead-onlyInspect
Returns live bid/ask orderbook for a stock. Use when you need real-time order depth, not just the last price.
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | Stock symbol |
Output Schema
| Name | Required | Description |
|---|---|---|
| ask | Yes | |
| bid | Yes | |
| average | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false; description adds 'live' implying real-time data but no further behavioral details 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no redundancy. Purpose and usage guidance are front-loaded and concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Simple tool with one parameter and output schema; description covers purpose and when-to-use. No missing critical context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the description does not add any extra meaning for the 'symbol' parameter beyond what the schema already provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states verb 'Returns', resource 'live bid/ask orderbook', and specifies stock. It differentiates from 'last price' tools, and among siblings, orderbook is unique.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use when you need real-time order depth, not just the last price', providing clear context. No alternative tool named, but contrast is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_stock_infoARead-onlyInspect
Returns basic stock information (price, change, exchange, followers). Use when you need current price for a single symbol. For real-time or multi-symbol quotes, use get_live_prices.
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | Stock symbol, e.g. BBCA |
Output Schema
| Name | Required | Description |
|---|---|---|
| date | Yes | |
| last | Yes | |
| name | Yes | |
| change | Yes | |
| symbol | Yes | |
| average | Yes | |
| percent | Yes | |
| exchange | Yes | |
| followers | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true (safe read). The description adds what data is returned (price, change, exchange, followers), which is useful 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, then usage guidance. No wasted words; every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity (one param, output schema exists), the description fully covers purpose, usage, and differentiation. No gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear description of the symbol parameter. The tool description does not add additional parameter meaning, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns basic stock info (price, change, exchange, followers) for a single symbol, differentiating from get_live_prices for real-time or multi-symbol quotes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly specifies when to use (need current price for single symbol) and when not to (use get_live_prices for real-time or multi-symbol quotes), providing clear guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_stock_pricesARead-onlyInspect
Returns closing price history for one or more symbols. Use when you need historical close prices for multiple stocks at once. Pass multiple symbols to batch-fetch.
| Name | Required | Description | Default |
|---|---|---|---|
| symbols | Yes | List of stock symbols, e.g. ["BBCA","BBRI"] |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds no new behavioral traits beyond stating it returns data, which is consistent with annotations but does not provide additional context like date range or data limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loading the core function, with no redundant or unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (1 parameter, no enums, has output schema), the description sufficiently covers purpose and usage. No further detail is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 minor usage guidance (batch-fetch) but does not enhance semantic meaning beyond the schema's parameter description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it returns closing price history for one or more symbols, with a specific verb and resource. It distinguishes from sibling tools like get_stock_info or get_stock_profile by focusing on price history.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly advises using the tool for historical close prices and supports batch-fetching by passing multiple symbols. However, it does not mention when not to use it or compare to alternatives like get_intraday_chart.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_stock_profileARead-onlyInspect
Returns company profile (background, website, address, phone, NPWP). Use when you need company background info, not stock price or financial data.
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | Stock symbol |
Output Schema
| Name | Required | Description |
|---|---|---|
| fax | Yes | |
| npwp | Yes | |
| Yes | ||
| phone | Yes | |
| office | Yes | |
| symbol | Yes | |
| website | Yes | |
| background | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description doesn't need to restate that. It adds value by listing specific data fields returned (background, website, address, phone, NPWP). However, it could mention if any data is rate-limited or requires authentication, but given the simplicity, it's sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the key purpose, and contains no extraneous information. Every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has only one simple parameter, has an output schema (context signals indicate true), and the description clearly states what data is returned and when to use it, it is fully complete for an AI agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (only parameter 'symbol' with description 'Stock symbol'). The description does not add additional parameter context beyond what the schema already provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it returns company profile data (background, website, etc.) and explicitly distinguishes itself from tools that return stock price or financial data. It uses a specific verb 'Returns' and resource 'company profile'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Use when you need company background info, not stock price or financial data.' This provides clear context for when to use this tool versus alternatives like get_stock_prices.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_today_calendarARead-onlyInspect
Returns all corporate action events happening today.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| today | Yes | |
| ipo_count | Yes | |
| rups_count | Yes | |
| bonus_count | Yes | |
| tender_count | Yes | |
| warrant_count | Yes | |
| dividend_count | Yes | |
| economic_count | Yes | |
| rightissue_count | Yes | |
| stocksplit_count | Yes | |
| reversesplit_count | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the description does not need to restate safety. It adds minimal context beyond stating the scope (today). No disclosure of behavior like time zone handling or empty results, which is acceptable for a simple read-only tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no filler, perfectly front-loaded. Every word is necessary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters, safe annotations, and an output schema present, the description is sufficient for a simple list tool. It could be slightly more descriptive about what constitutes a corporate action event, but overall complete for its complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters and schema coverage is 100% (vacuous). Per guidelines, 0 parameters earns a baseline of 4. The description adds no parameter info, but none is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns corporate action events happening today. The verb 'Returns' and resource 'corporate action events' with temporal scope 'today' is specific and distinct from all sibling tools, which cover other financial data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, but the purpose is self-evident and no sibling tool serves a similar function, so usage is implied. The lack of explicit when-not or alternative suggestions brings it down.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_top_brokersARead-onlyInspect
Returns top IDX brokers ranked by trading activity. sort: total_value (default), net_value, buy_value, sell_value, frequency. order: desc/asc. period: 1d, 7d, 1m, 3m, 6m, 1y. market_type: all, regular. stock_code: filter by symbol (optional).
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort field | total_value |
| order | No | Sort order | desc |
| period | No | Time period | 1d |
| stock_code | No | Optional: filter by stock symbol | |
| market_type | No | Market type filter | all |
Output Schema
| Name | Required | Description |
|---|---|---|
| list | Yes | |
| date_to | Yes | |
| date_from | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint=true) already indicate a safe read operation. The description adds behavioral context like ranking by trading activity and available sort/period options, which is consistent and helpful. However, it does not disclose pagination or result limits, but annotations reduce the burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence followed by parameter details in a compact colon format. It is efficient and front-loaded with the core purpose, though slightly dense. Minor improvements in readability could be made.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present and high schema coverage, the description covers all parameters and key behavioral aspects (ranking, sort options). It could mention the expected number of results or the ranking logic (e.g., by total value as default), but overall it is complete enough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all 5 parameters. The description mainly restates the enum options (sort, period, market_type) and mentions stock_code as optional, adding little meaning beyond the schema. Baseline is 3 due to high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns top IDX brokers ranked by trading activity, a specific verb-resource pair that distinguishes it from siblings like get_broker_activity (which likely returns activity for a single broker) and get_broker_activity_chart (which is chart-specific).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the description (use when you need ranked brokers), but no explicit guidance is given on when not to use or alternatives among siblings. For example, if detailed per-broker activity is needed, get_broker_activity would be more appropriate, but this is not mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!