monerometrics
Server Details
Live Monero network metrics: reorgs, orphans, pool centralization and the Haveno order book.
- Status
- Healthy
- Uptime
- 100.0% over 38 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- nowi333/monerometrics
- GitHub Stars
- 1
TDQS
Scored across 19 tools
Tools cluster into related groups (reorgs/orphans, pool attribution, block retrieval, Haveno market data) but several have overlapping boundaries: get_block vs search_block both return block details, and price duplicates much of haveno_book. The descriptions are detailed enough to disambiguate with effort, but misselection is plausible.
Most tools follow a descriptive snake_case pattern with domain prefixes (network_, pool_, haveno_, chain_, reorg_). However, there is a mix of verb-led names (get_block, lookup_transaction, search_block) and noun-led names (network_info, pool_distribution), plus a bare 'price' outlier.
19 tools is on the heavier side but justified by the breadth of Monero network data: chain structure, reorgs, pools, network time series, and market data. Each tool covers a distinct metric, and the count is within a reasonable range for a comprehensive metrics server.
The tool set covers network state, historical time series, block and transaction lookup, reorg/orphan analysis, pool attribution, and market pricing. A few minor gaps exist (e.g., no direct fee or difficulty time series), but the core workflows are fully supported with no obvious dead ends.
Available Tools
19 toolschain_fork_windowBInspect
Canonical chain plus any competing orphan blocks around a height. 'to' is the highest height in the window (defaults to the current tip); lower it to browse older history down to the genesis block. limit 10..500.
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry full behavioral disclosure. It explains the semantics of 'to' (highest height, defaults to current tip, can be lowered) and the range for 'limit', but it does not describe the return value structure, ordering, or how orphan blocks are identified. This leaves significant ambiguity for an agent.
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, with the first stating the core purpose and the second explaining both parameters. It is concise, front-loaded, and every word 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?
This is a moderately complex tool with two optional parameters and no output schema. The description gives the purpose and parameter behavior but omits the return value format, ordering, and any edge cases. Given no annotations or output schema, more detail is needed for full completeness.
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 0%, so the description must compensate. It does so effectively: 'to' is explained as the highest height in the window with a default of the current tip and the ability to browse older history; 'limit' is given a range of 10..500. These add meaning beyond the schema's simple types and defaults.
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 defines what the tool returns: 'Canonical chain plus any competing orphan blocks around a height.' It distinguishes itself from siblings like get_block and recent_orphans by focusing on a window of blocks around a height. However, it lacks an explicit verb like 'retrieves' or 'returns,' making the purpose slightly implicit.
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 provides usage details for parameters ('lower it to browse older history') but gives no guidance on when to use this tool versus alternatives such as recent_orphans or reorgs. It does not mention any exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
chain_provenanceAInspect
How mining-pool attribution was established over a window: share proven by view key, claimed by pool API, inferred from coinbase, or unattributed. window in 1h,6h,24h,48h,7d.
| Name | Required | Description | Default |
|---|---|---|---|
| window | No | 24h |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden. It discloses the four attribution categories and the valid window options, which adds useful behavioral context. However, it does not mention output format, data freshness, or any limitations, leaving some behavioral aspects undocumented.
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 that is front-loaded with the core purpose and wastes no words. It packs the attribution methods and window options efficiently 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?
For a simple one-parameter tool with no output schema, the description provides the key conceptual information: what attribution provenance means and the available windows. It is nearly complete, though it could add a note about the return type or data structure to be fully self-contained.
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?
The schema only defines 'window' as a string with a default, but the description enriches it by listing the exact valid values (1h,6h,24h,48h,7d). Since schema coverage is 0%, this description effectively compensates and gives the agent the necessary enumeration.
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 explains that the tool shows how mining-pool attribution was established, listing the four attribution methods. It distinguishes itself from sibling tools like pool_distribution or pool_sources by focusing on provenance methodology, though it lacks an explicit verb like 'returns' or 'shows'.
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 guidance is given on when to use this tool versus alternatives such as pool_distribution or pool_sources. The description implies that it is used to understand attribution provenance, but does not state explicit use cases, prerequisites, or alternative comparisons.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_blockAInspect
Full detail for one block by its 64-character block hash: height, previous hash, size, difficulty, reward, coinbase, transaction list and merge-mining tags.
| Name | Required | Description | Default |
|---|---|---|---|
| hash | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It transparently discloses the return content and the 64-character hash constraint, giving clear expectations. It does not mention edge cases like invalid hash handling, but no critical behavior is hidden.
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, well-structured sentence that front-loads the function and packs all essential facts without redundancy or extraneous detail.
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?
For a simple read-only tool with one parameter and no output schema, the description fully covers purpose, parameter constraint, and return content. It is complete enough for an 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?
With 0% schema coverage, the description compensates by specifying that the hash must be 64 characters, which adds crucial validation context not present in the schema. It does not specify encoding or case-sensitivity, but the core requirement is established.
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 specifically states 'Full detail for one block by its 64-character block hash' and lists the exact fields returned, distinguishing it from sibling tools like search_block. It clearly identifies the resource (block) and the selecting argument (hash).
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 clearly implies use when you have a 64-character block hash and need full block details. It does not explicitly name alternatives or exclusions, but the scope is unambiguous enough for an agent to select it appropriately.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
haveno_bookAInspect
The live Haveno XMR/USD order book, both sides, priced against centralized spot.
Each price level carries its cumulative depth, offer count, payment methods and a
reversible flag. asks are makers selling XMR, so taking one means buying; bids
are makers buying, so taking one means selling. Offers are advertisements with
differing payment methods rather than a matched book, so nothing executes on its own
and the best bid can sit at or above the best ask.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does an excellent job. It discloses that asks/bids represent maker direction, that taking one flips the side, that each level includes cumulative depth and payment methods, and that nothing executes automatically. The warning that the best bid can sit at or above the best ask is especially valuable.
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 well-structured: the first sentence states exactly what the tool provides, and the second paragraph adds necessary interpretive detail. Every sentence earns its place, and there is no fluff or repetition.
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?
For a zero-parameter tool with no output schema, this description is complete. It names the market, the sides, the fields available at each price level, the meaning of asks and bids, and the unusual non-executing nature of the order book. An agent can select and interpret the tool correctly without further information.
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?
The tool has zero parameters, so the baseline is 4 and there is no input schema gap to compensate for. The description instead clarifies the meaning of output fields like asks, bids, depth, and reversible flag, which is useful context beyond the empty 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 clearly identifies the resource: the live Haveno XMR/USD order book, both sides, priced against centralized spot. It differentiates from all siblings by naming a unique resource and scope, and the implicit verb 'returns' is obvious from context.
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 gives clear context for when this tool is relevant: whenever live Haveno XMR/USD order book data is needed. It also explains that offers are advertisements, not a matched book, which manages expectations. It does not explicitly exclude alternatives, but among the siblings this is the only order-book tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
haveno_payment_methodsAInspect
Executed Haveno trades grouped by payment method, with the premium over spot.
window in 30d,90d,180d,1y,all. currency in USD,EUR. The premium tracks how reversible and convenient the payment rail is, not privacy: every one of these trades is equally non-KYC. The reversible flag is our own classification, not a Haveno field.
| Name | Required | Description | Default |
|---|---|---|---|
| window | No | 180d | |
| currency | No | USD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden and adds valuable non-obvious context: the premium tracks reversibility and convenience, not privacy; all trades are equally non-KYC; and the reversible flag is a custom classification, not a Haveno field. This helps prevent misinterpretation, though it does not explicitly state read-only behavior 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences with no waste: the first states the core purpose, the second gives parameter constraints, and the third provides an essential caveat about interpretation. It is front-loaded and every sentence earns its place.
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?
For a simple two-parameter tool with no output schema and no annotations, this description covers the main purpose, parameter values, and an important interpretation caveat. A minor gap is that it does not distinguish itself from closely related siblings like haveno_premium or describe the expected output shape.
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?
The schema has 0% description coverage, so the description must compensate, and it does by listing explicit valid values: window in 30d,90d,180d,1y,all and currency in USD,EUR. It does not explain the meaning of window or currency beyond their names, but the allowed values are the most critical missing information.
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 executed Haveno trades grouped by payment method with the premium over spot, which identifies the resource, grouping, and metric. It does not explicitly differentiate from siblings like haveno_premium, so it falls just short of a 5.
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 provides clear interpretive context about what the premium means and lists accepted window and currency values, which implies when the tool might be useful. However, it never explicitly states when to use this tool versus related siblings such as haveno_premium or haveno_book, nor does it provide exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_transactionAInspect
Look up a transaction by its 64-character hash: whether it is in the mempool or mined, its block, confirmations, whether it is spendable yet, the pool that mined its block, and whether that height was ever contested by a reorg. No amounts, senders or recipients: the protocol encrypts them.
| Name | Required | Description | Default |
|---|---|---|---|
| tx_hash | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden. It discloses that the tool returns transaction status, block info, confirmations, spendability, pool, and reorg contest, and explicitly states it omits amounts/senders/recipients due to encryption. This gives the agent a clear picture of behavior. It doesn't mention error handling for invalid hashes, but for a read-only lookup this is acceptable.
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, dense sentence that front-loads the action and lists the return fields in a clear sequence. It includes a caveat about missing fields, all without redundancy. It is concise, though slightly long.
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 tool has one parameter and no output schema, so the description must explain what the agent gets back. It lists the returned fields (mempool/mined, block, confirmations, spendable, pool, reorg contest) and notes the exclusion of sensitive data. It lacks details on output format or not-found behavior, but given the simplicity, it is reasonably complete.
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?
The schema only defines tx_hash as a string with no description (0% coverage). The description adds essential semantic meaning by specifying it must be a 64-character hash, which constrains the format and clarifies what value to pass. This compensates well for the schema gap.
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?
States it looks up a transaction by its 64-character hash and enumerates the exact data returned (mempool/mined status, block, confirmations, spendability, pool, reorg contest). This clearly distinguishes it from sibling tools like get_block or search_block which deal with blocks, not transactions.
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 makes the tool's purpose obvious for transaction lookups, and it explicitly notes what it does NOT return (amounts, senders, recipients) due to encryption, which helps an agent decide it's the right tool. However, it doesn't explicitly name alternatives or state when not to use it, though the siblings are all block/network focused.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
network_blocktimeCInspect
Block-time variance time series (seconds between blocks). window in 1h,24h,7d,30d,90d,1y,5y.
| Name | Required | Description | Default |
|---|---|---|---|
| window | No | 24h |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the behavioral disclosure burden. It discloses the time-series nature and available windows, but does not describe the return format, aggregation method, or whether the data is point-in-time or historical. The ambiguous use of 'variance' adds confusion rather than clarity.
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 that packs the essential purpose and window options without unnecessary words. It is front-loaded and efficient.
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 tool is simple with one parameter and no output schema, but the description still leaves ambiguity around 'variance' and omits any description of the return shape. For a focused tool, the missing behavioral detail makes the description incomplete.
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?
The schema provides no description for the 'window' parameter and no enum. The description lists the valid window values (1h,24h,7d,30d,90d,1y,5y), which adds meaning beyond the schema. It does not explain the semantics of each window, but it partially compensates for the 0% schema 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 names the specific resource (block-time variance) and clarifies the unit (seconds between blocks), distinguishing it from sibling network tools. However, 'variance' is ambiguously used, leaving some doubt about whether the output is a statistical variance or a time series of block times.
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 guidance is given on when to use this tool versus alternatives like network_hashrate or network_mempool. The only usage-related info is the list of valid window values, which is more parameter semantics than strategic tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
network_emissionAInspect
Block reward / emission time series (XMR per block). window in 1h,24h,7d,30d,90d,1y,5y.
| Name | Required | Description | Default |
|---|---|---|---|
| window | No | 30d |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the unit and available windows but does not describe the response format, whether data is aggregated, or any other behavioral traits such as pagination or rate limits. This leaves some ambiguity for a time-series 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?
The description is a single, concise sentence that conveys the tool's purpose, unit, and valid parameter values with zero redundancy. Every phrase adds valuable 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?
This is a simple tool with one parameter and no output schema. The description covers purpose, unit, and window validation, which is adequate for basic usage. However, it does not specify the structure of the returned time series (e.g., fields like timestamp and emission), which would improve completeness.
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?
The schema only defines 'window' with a default and type, but no description or enum. The tool description compensates fully by listing all accepted values (1h, 24h, 7d, 30d, 90d, 1y, 5y), providing essential semantics 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 clearly states the tool provides a 'Block reward / emission time series (XMR per block)' with valid window options. It lacks an explicit verb but the resource and scope are specific, and no sibling tool covers emission data, distinguishing it effectively.
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 implies usage by listing time windows (1h, 24h, etc.) and the unit (XMR per block), but it does not explicitly state when to use this tool versus alternatives. No sibling tools are referenced as alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
network_hashrateBInspect
Network hashrate time series. window in 1h,24h,7d,30d,90d,1y,5y.
| Name | Required | Description | Default |
|---|---|---|---|
| window | No | 30d |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only mentions the valid windows ('1h,24h,7d,30d,90d,1y,5y'), which is useful but minimal. Since no annotations are provided, the description carries the full burden of disclosing behavior, yet it doesn't explain the return format, units, or whether it's a read-only operation. It implies a time series but omits important details.
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 extremely concise, with two short sentences that immediately state the purpose and the parameter options. There is no wasted wording, and the key information is front-loaded.
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 of the tool (1 parameter, no annotations, no output schema), the description is adequate but not complete. It explains what the tool returns (a time series) and the window options, but doesn't describe the response shape, units, or any behavior like pagination. This is a clear gap but not critical for such a simple 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?
The schema has a single parameter 'window' with a default but no enum values. The description explicitly lists all valid window values ('1h,24h,7d,30d,90d,1y,5y'), providing essential information that the schema lacks. This fully compensates for the 0% schema description 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 states 'Network hashrate time series', which clearly identifies the resource and the fact that it provides data over time. It distinguishes itself from sibling tools like network_blocktime and network_emission by focusing specifically on hashrate. However, it lacks a verb, so it's not explicitly saying 'get' or 'return'.
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 guidance is provided on when to use this tool versus alternatives. It does not mention any exclusions, prerequisites, or scenarios where another tool might be more appropriate. The description simply states what it does without situational context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
network_infoBInspect
Current Monero network state: latest indexed height, difficulty, network hashrate and mempool size.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden for behavioral disclosure. It implies a read-only operation and lists the intended data, but does not explain potential nuances like indexing lag, whether the data is a snapshot, or error conditions. It is adequate but not rich.
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, front-loaded sentence that uses a colon to enumerate the key information. Every word earns its place without redundancy or fluff.
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 tool is simple with no output schema, so the description must explain what is returned. It lists the metrics, but it is a fragment rather than a complete sentence and does not specify the return structure or how it relates to sibling tools. It covers the essentials but leaves some gaps.
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, so the baseline is 4. The description adds no parameter-level meaning, but none is needed since the schema has no properties.
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 that the tool provides the current Monero network state, listing specific metrics (height, difficulty, hashrate, mempool size). It is not a tautology and differentiates from siblings like network_hashrate and network_mempool by presenting a combined snapshot, though it lacks a strong verb.
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 gives no guidance on when to use this tool versus alternatives such as network_hashrate or network_mempool. It does not mention any exclusions or prerequisites, leaving the agent to infer use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
network_mempoolAInspect
Mempool size time series (number of pending transactions). window in 1h,24h,7d,30d,90d,1y,5y.
| Name | Required | Description | Default |
|---|---|---|---|
| window | No | 24h |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full burden of behavioral disclosure. It states the output is a time series of pending transaction counts, but does not mention return format, aggregation details, or any operational constraints like rate limits or data availability.
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 that leads with the core purpose and then lists the window options. Every word earns its place with no unnecessary filler.
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?
For a simple one-parameter read tool, the description provides the essential output type and parameter options. It lacks a bit of detail on response shape, but the complexity is low and the description is generally 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?
Although the schema has 0% description coverage, the description explicitly enumerates all valid window values ('1h,24h,7d,30d,90d,1y,5y'), which fully compensates for the schema's lack of parameter details and adds clear meaning beyond the generic 'string' type.
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 identifies the resource ('Mempool size time series') and metric ('number of pending transactions'), distinguishing it from sibling network stats. However, it lacks an explicit verb like 'get' or 'returns', so it falls short of a perfect score.
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 provides no guidance on when to use this tool versus alternatives. It only lists valid window values, not the context for selecting this tool or excluding others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pool_distributionAInspect
Mining-pool distribution over a window: block share per pool, largest-pool share and the Nakamoto coefficient (minimum pools controlling >50% of blocks). window in 1h,6h,24h,48h,7d.
| Name | Required | Description | Default |
|---|---|---|---|
| window | No | 24h |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It communicates the key outputs (block share, largest-pool share, Nakamoto coefficient) and accepted windows, but omits details like return format, whether data is live or historical, and how the largest-pool share is expressed. This is adequate but not exhaustive.
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 that covers purpose, outputs, and parameters without redundancy. It is front-loaded with the main purpose and every clause adds value, making it an exemplar of concise, informative tool documentation.
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?
For a tool with one parameter and no output schema, the description explains the output components and parameter options. However, it does not specify the exact structure of the per-pool share list or whether shares are percentages, leaving minor ambiguity about the return format. Overall, it is nearly complete for the tool's simplicity.
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?
The input schema only declares 'window' as a string with default '24h' and no description. The description compensates fully by listing the valid window values (1h,6h,24h,48h,7d), effectively providing an enum and clarifying the unit of the parameter, which is essential for correct invocation.
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 exactly what the tool does: it provides mining-pool distribution over a window, including block share per pool, largest-pool share, and the Nakamoto coefficient. It names a specific resource and metrics, clearly distinguishing it from siblings like pool_sources.
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?
There is no guidance on when to use this tool versus alternatives such as pool_sources or other network tools. The description does not mention use cases, exclusions, or selection criteria, leaving the agent without context for choosing this tool over siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pool_sourcesBInspect
Reachability status of each mining-pool API used for block attribution.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It states only that the tool provides reachability status, without mentioning whether it is a read-only operation, what it does with external APIs, or any potential side effects or requirements. This is minimal additional value beyond the tool name.
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, concise sentence that directly communicates the tool's purpose without extraneous information. Every word earns its place, making it highly 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 absence of an output schema and annotations, the description should explain what the tool returns, but it only says 'Reachability status' without specifying the format or structure (e.g., list, object, per-pool fields). The tool is simple, but the lack of return-value detail leaves the agent under-informed.
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?
The tool has zero parameters, so schema coverage is complete. Per the baseline for 0-parameter tools, the description need not add parameter semantics to be valuable. The description doesn't contradict or confuse any parameter information.
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 provides 'Reachability status of each mining-pool API used for block attribution,' which is a specific resource and scope. While it lacks an explicit verb like 'get' or 'list,' the intent is clear and it distinguishes from sibling tools like pool_distribution by focusing on API reachability rather than distribution.
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 guidance is given on when to use this tool versus alternatives. It does not mention any prerequisites, exclusions, or context in which this tool is appropriate, leaving the agent to infer usage from the description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
priceAInspect
Current Monero (XMR) price: centralized spot plus both sides of the Haveno peer-to-peer book.
Returns the best offer and the amount-weighted average on each side, resting depth, offer counts, and round_trip_cost_pct: the cost of buying XMR and selling it straight back, which is far larger than the headline premium.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It discloses the key returned fields, including best offer, weighted averages, depth, offer counts, and round_trip_cost_pct, and adds a valuable caveat that the round-trip cost is far larger than the headline premium. This gives the agent useful expectations beyond the tool name.
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 compact, front-loaded with the main purpose, and uses a clear list to enumerate return values. Every sentence contributes meaningful detail without repetition or fluff.
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?
As a zero-argument tool with no output schema, the description sufficiently enumerates what the agent can expect in the response and provides important context about the round-trip cost caveat. It could be slightly stronger by explicitly stating the quote currency or units, but the overall picture is complete enough for safe invocation.
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?
The tool has zero parameters and an empty input schema, so there is no parameter semantics burden on the description. The baseline for zero-parameter tools is 4, and the description does not need to explain any arguments.
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 that the tool returns the current Monero price with metrics from centralized spot and both sides of the Haveno order book. The scope is specific enough to distinguish it from sibling tools like haveno_book and haveno_premium.
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 implies its use for getting aggregate price and depth information, but it does not explicitly state when to prefer this tool over alternatives such as haveno_premium or haveno_book. Usage context is inferable but not directly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recent_orphansAInspect
Most recent orphan blocks with their canonical counterpart at the same height, newest first. limit 1..50; window in 24h,48h,7d,30d,90d,180d,1y,all (default all, so the last N orphans are returned however old they are).
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| window | No | all |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It clearly states ordering (newest first), result composition (orphan blocks plus canonical counterpart), and the meaning of the default 'all' window (last N orphans regardless of age). It does not mention side effect potential, but as a read-only query this is less critical.
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 entire description is a single dense sentence that front-loads the core purpose before detailing parameter constraints. There is no filler, and every clause contributes either to what the tool returns or how it behaves.
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?
For a read-only list tool with two optional parameters, the description covers purpose, ordering, parameter ranges, and default behavior. The main gap is the lack of an explicit output shape beyond 'orphan blocks with canonical counterpart', but that may be sufficient given the simple resource and absence of an output schema.
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 0%, so the description compensates by explaining limit range (1..50) and the accepted window values (24h,48h,7d,30d,90d,180d,1y,all), including the important default behavior. It does not explain the semantics of each window beyond the labels, but it adds substantial meaning that the bare schema lacks.
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 identifies the resource (orphan blocks), the operation (returning the most recent ones), and the distinguishing feature (paired with their canonical counterpart at the same height, newest first). It does not explicitly name or differentiate from sibling tools like reorgs or chain_fork_window, but the resource and pairing are specific enough to avoid major ambiguity.
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 provides helpful parameter usage context, such as the valid limit range Economies and the window options including the default 'all' behavior. However, it does not state when to prefer this tool over siblings like reorgs, reorg_stats, or chain_fork_window, leaving the selection logic implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reorgsAInspect
Detected Monero chain reorganizations, most recent first, with fork point, depth and affected transactions.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the output ordering (most recent first) and the included fields (fork point, depth, affected transactions), giving useful behavioral context. It doesn't specify pagination or limits, but the description adds meaningful transparency beyond a bare 'shows reorgs'.
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, information-dense sentence. It front-loads the core resource (Monero chain reorganizations), then specifies the ordering and key fields, with 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 tool has no parameters and no output schema, the description provides a clear picture of what is returned: reorgs with fork point, depth, and affected transactions, in reverse chronological order. It is a simple read-only list; it could be more explicit about the return type (e.g., array) but is adequate 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?
The tool has zero parameters, so the baseline is 4. There is nothing for the description to explain about parameters, and the schema is wholly empty without any property definitions. The description correctly focuses on the output rather than inputs.
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 identifies the tool's purpose: listing detected Monero chain reorganizations with specific fields (fork point, depth, affected transactions) and ordering (most recent first). This distinguishes it from siblings like reorg_stats and recent_orphans by focusing on individual reorg events with their details.
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 implies usage when one needs reorg details, but it does not explicitly state when to use this tool instead of alternatives like reorg_stats for aggregated statistics or recent_orphans for orphaned blocks. No exclusions or comparative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reorg_statsBInspect
Aggregate reorg statistics over windows: counts, average and maximum depth, affected transactions.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for behavioral disclosure. It does not state that the tool is read-only or non-mutating, nor does it clarify how 'windows' are defined or selected given the absence of parameters. The description lists metrics but leaves window semantics and side-effect profile unclear.
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 that front-loads the primary action and packs relevant metrics into a readable list. No unnecessary words; every segment adds meaningful detail.
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 tool has no annotations, no output schema, and zero parameters, so the description is the only source of information. While it explains what metrics are computed, it fails to clarify the meaning of 'windows', the output format, or whether the operation is read-only. This leaves significant gaps for an agent deciding to invoke the 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?
The schema has zero parameters and thus covers all parameter behavior vacuously (100% coverage). The description mentions 'over windows' but does not explain how windows are configured, so it adds no concrete parameter semantics. Baseline 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 clearly states the tool's function as aggregating reorg statistics and enumerates specific metrics (counts, average and maximum depth, affected transactions). This distinguishes it from sibling tools like 'reorgs' or 'recent_orphans' that likely list events rather than aggregate them.
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 phrase 'over windows' implies the tool is for windowed aggregation, but it does not explicitly state when to use this tool over siblings or provide exclusion criteria. Guidance is only implied, not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_blockAInspect
Find a block by height (a number) or by 64-character hash, anywhere in the chain down to the genesis block (height 0). Returns the block detail plus whether it is canonical or an orphan.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It does add that the result includes canonical/orphan status, which is useful, but it does not mention error handling, return format boundaries, or whether the operation is read-only. The description is informative but incomplete.
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-loaded with the main action, and every clause adds useful information. There is no fluff or 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?
For a single-parameter tool with no output schema and no annotations, the description covers the essentials: what query to provide and what the response contains. It lacks explicit error behavior, but overall it is reasonably complete for this 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 coverage is 0%, so the description must explain the query parameter. It does this well by specifying that it can be a height (a number) or a 64-character hash, adding meaning beyond the raw schema. A 5 would require more detail on exact string formatting, but this is sufficient.
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 finds a block by height or 64-character hash, down to genesis, and returns detail plus canonical/orphan status. This is a specific verb and resource, but it does not explicitly distinguish itself from the sibling tool 'get_block', so it stops short of a 5.
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 implies when to use it (when searching by height or hash and needing canonical/orphan status) but does not explicitly mention alternatives or exclusions. Since siblings like 'get_block' exist, the lack of direct comparison leaves usage guidance 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.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- Added
lookup_transaction - Changed
recent_orphans1 field changed- added
Input schema / properties / windowAdded value: +{ + "default": "all", + "title": "Window", + "type": "string" +}
3 tool updates
- Added
haveno_book - Added
haveno_payment_methods - Added
haveno_premium
15 tool updates
- First observed
chain_fork_window - First observed
chain_provenance - First observed
get_block - First observed
network_blocktime - First observed
network_emission - First observed
network_hashrate - First observed
network_info - First observed
network_mempool - First observed
pool_distribution - First observed
pool_sources - First observed
price - First observed
recent_orphans - First observed
reorg_stats - First observed
reorgs - First observed
search_block
Related MCP Connectors
Live crypto market data: prices, funding, OI, liquidations, regimes, GEX, whales, sentiment, macro.
Live crypto data: why a coin or the market is moving (funding, OI, positioning, flow).
Monero/Zcash payment webhooks + DeFi liquidation & Ethereum builder data over MCP. Free tier; x402.
Read-only chain intelligence (25 tools) for BTC, KAS, ZEC, RVN, LTC and DOGE.
Related MCP Servers
- AlicenseAqualityBmaintenanceReal-time DEX token momentum, orderbook liquidity depth, and whale flows on Base Mainnet gated with gasless x402 micropayments.3MIT
- AlicenseNot gradedqualityCmaintenanceDelivers real-time crypto market microstructure, derivatives, order flow CVD/OI regime classification, fear & greed sentiment, and whale tracking context, enabling traders to assess market regimes and complement charting tools.28 npmMIT

echoledger-mcpofficial
AlicenseNot gradedqualityCmaintenanceAnalyzes live Uniswap V2/V3, Balancer, and Curve stableswap pools for positions, price moves, pool health, rug signals, slippage, and depeg risk, and builds portable State Twins for offline analysis.Apache 2.0- AlicenseNot gradedqualityBmaintenanceRead-only XRP Ledger analytics — signed snapshots, AMM pools, token volume, whale activity, NFT tracking. Proof-annotated. Public beta 2026-09.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.