Skip to main content
Glama

get_fee_histogram

Who is transacting on-chain right now — X-Ray's raw read (free key).

The mempool fee curve shape: FLAT_WIDE means patient accumulation, STEEP_TALL means urgency or panic, BIMODAL means whale activity.

Returns: - curve_type: FLAT_WIDE (accumulation), STEEP_TALL (retail panic), BIMODAL (whale activity), etc. - actor_profile: Inferred actor behavior from fee distribution - skewness, kurtosis: Statistical shape of fee distribution - gini_coefficient: Inequality of fee spending (low = uniform, high = whales dominating) - entropy: Diversity of fee usage (high = diverse activity, low = single-actor dominance) - tx_count: Number of transactions analyzed

FLAT_WIDE fee curves indicate accumulation (whales being patient). STEEP_TALL fee curves indicate urgency/panic (retail rushing transactions).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral burden, and it does well: it calls itself a raw read, identifies the free-key access tier, and explains every returned field's meaning and interpretation. It conveys that this is a non-mutating analytical read. It could add caveats about data freshness or edge cases, but it is substantially transparent for a zero-parameter 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.

Conciseness3/5

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

The description is front-loaded with a strong purpose statement and organizes return fields clearly. However, the final paragraph repeats curve-type interpretations already listed in the Returns section, adding redundancy. It is not bloated, but a couple of sentences do not earn their place.

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

Completeness4/5

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

For a tool with no input parameters and no annotations, the description is largely complete: it explains the access tier, the output fields, and the interpretive meaning of each curve type. It omits any note on data recency or limitations, but an agent can call and interpret the tool correctly from the provided information.

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

Parameters4/5

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

The tool has zero parameters, so there is nothing for the description to explain about invocation arguments. The baseline for a zero-parameter tool is 4, and the description appropriately focuses on output semantics instead of trying to document nonexistent inputs.

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

Purpose4/5

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

The description clearly identifies the tool as a raw read of the mempool fee histogram and summarizes who is transacting on-chain right now. It names concrete output concepts like curve_type and actor_profile, going well beyond a restatement of the tool name. It does not explicitly differentiate itself from siblings such as get_mempool_fees, but the core purpose is unambiguous.

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

Usage Guidelines3/5

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

The description implies usage context: use it to understand current on-chain actor behavior and fee-curve shape. It offers rich interpretation of curve types, which helps an agent decide what the result means. However, it never states when to prefer this tool over siblings like get_mempool_fees or get_mempool_stats, leaving some selection ambiguity.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4/5.0
Disambiguation4/5

Tools like get_convergence, get_directional_bias, and get_dashboard are related but clearly scoped: convergence checks sensor agreement, directional_bias gives the trade call, dashboard bundles everything. Mempool fees vs stats are distinct (rates vs pending tx). Some overlap exists between convergence/regime_current, but descriptions disambiguate well.

Naming Consistency5/5

All tools follow a consistent get_verb_noun pattern (get_block_tip, get_funding_divergence, get_system_health). The only exception is query_db, which uses 'query' instead of 'get', but it still follows the verb_noun structure and same snake_case style. No mixed conventions.

Tool Count4/5

15 tools is at the high end of the ideal range, but each serves a distinct function in a complex domain: sensor convergence, regime, funding, gamma, mempool, system health, audit. The Pro/free tier adds some apparent duplication (get_convergence vs get_directional_bias), but they address different questions.

Completeness5/5

The tool set covers the full workflow: convergence check, directional call, regime context, specialized indicators (funding, gamma, stablecoin flows, fee histogram), mempool data, system health, audit trail, and a queryable database. No obvious dead ends; public signal history and counters support verification.

Resources