Skip to main content
Glama

snowsignals

Server Details

Market-phase classifications over a metered API — phase events per currency and timeframe.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Available Tools

8 tools
compose_phasesA
Read-only
Inspect

Get phases for several coins and timeframes in one paid call. Set kind to 'boundary' for the settled last-closed-bar reading or 'updates' for the still-forming one. The cost scales with how many readings come back, which is your coins times your timeframes.

ParametersJSON Schema
NameRequiredDescriptionDefault
tfsYes
kindYes'boundary' = the settled reading from the last closed bar; 'updates' = the live reading still forming in the current bar.
currenciesYes

TDQS

A4.4/5.0
Behavior4/5

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

Annotations only declare readOnlyHint=true; the description adds a useful cost model ('cost scales with how many readings come back'), a notable behavioral trait for a paid endpoint. It also clarifies the two data-freshness modes (last closed bar vs forming bar). No contradiction with the readOnly annotation.

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

Conciseness5/5

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

Three sentences with no filler: the main purpose is front-loaded, kind semantics are grouped in the second sentence, and the cost caveat is last. Every sentence adds value.

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

Completeness4/5

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

With three required parameters and no output schema, the description covers the main invocation concerns: what to pass, what the modes mean, and that cost varies. It lacks an explicit return-shape note, but the term 'phases' and the sibling tools give enough context for selecting and calling the tool.

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

Parameters4/5

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

Schema description coverage is low (33%), so the description carries the burden for currencies and tfs. It maps 'coins' to currencies and 'timeframes' to tfs, and explains the kind enum values. It does not specify currency string formats or limits, but the schema already shows they are string arrays.

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

Purpose5/5

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

The description states a specific verb and resource: 'Get phases for several coins and timeframes in one paid call.' It clearly distinguishes itself from likely sibling get_phase by emphasizing the batch/plural nature ('several coins and timeframes') and the paid-call model.

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

Usage Guidelines4/5

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

The description gives explicit context for when to use this tool: when multiple coins/timeframes are needed in one paid call. It also explains the kind modes, which guides correct invocation. It does not explicitly name get_phase as the single-item alternative, but the contrast is strongly implied and the cost-scaling note helps with batching decisions.

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

deposit_pollAInspect

Call this right after you send a stablecoin deposit to have it picked up sooner: it tells the system to check your deposit addresses now. It moves no money and is free. If it comes back with nothing, you don't have a deposit address yet, so add one from the web dashboard.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.9/5.0
Behavior5/5

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

The description adds meaningful context beyond the annotations: it is free, moves no money, triggers an immediate address check, and explains what an empty result means. The readOnlyHint: false annotation is not contradicted; the tool still triggers a server-side poll, and the description clarifies there are no financial side effects.

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

Conciseness5/5

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

Three sentences, each earning its place: when to call, what it does, and how to handle an empty result. The most important usage guidance is front-loaded, and there is no unnecessary verbosity.

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

Completeness5/5

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

For a no-parameter tool with no output schema, the description is complete. It covers timing, behavior, cost, result interpretation, and the fallback action. Nothing an agent needs to invoke this tool correctly is missing.

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

Parameters4/5

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

There are zero parameters and the schema coverage is trivially 100%, so the baseline is 4. The description adds value by explaining what a response of 'nothing' means, which helps interpret the outcome even though no parameters need documentation.

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

Purpose5/5

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

The description clearly states the specific action ('check your deposit addresses now') and the context ('right after you send a stablecoin deposit'). It distinguishes this tool from balance/notification siblings by focusing on deposit detection and explicitly noting it moves no money.

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

Usage Guidelines5/5

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

Explicitly tells the agent when to call (immediately after sending a stablecoin deposit) and provides a conditional fallback: if nothing comes back, no deposit address exists yet, so add one via the web dashboard. This gives clear routing and usage context.

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

get_balanceA
Read-only
Inspect

Check your prepaid balance before a paid call. Shows the credit you have left to spend, anything on hold, any bonus credit and when it expires, whether the account is paused, the current pricing, and the deposit addresses on your account. It's free. If you run out, paid calls are turned away until you top up. To add a deposit address, sign in to the web dashboard.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already carry readOnlyHint=true, so the bar is lower. The description adds value beyond that by disclosing the operation is free, enumerating the account details surfaced, and explaining the consequence of running out of credit. The description is fully consistent with the read-only annotation.

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

Conciseness4/5

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

Four sentences, each earning its place: the trigger, the response contents, the cost/consequence, and the boundary for deposit addresses. It is slightly longer than necessary, but the field enumeration is informative rather than padding.

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

Completeness4/5

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

For a zero-parameter tool with no output schema, the description covers purpose, response contents, cost, and the consequence of a zero balance. It stops short of describing value formatting or data freshness, which would push it to a 5.

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 with 100% schema coverage, so the baseline of 4 applies. The description compensates by documenting the meaning of the returned information (spendable credit, hold, bonus credit, expiry, pause status, pricing, deposit addresses), which is the next most useful thing for an agent.

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

Purpose5/5

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

States a specific verb-resource pair ('Check your prepaid balance') and enumerates the exact contents: spendable credit, held credit, bonus credit and expiry, pause status, current pricing, and deposit addresses. This is clearly distinct from siblings like get_usage and get_phase, which concern usage statistics and phase data.

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

Usage Guidelines4/5

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

Gives an explicit trigger context ('before a paid call'), notes the call is free, and warns that paid calls are turned away when credit is exhausted. It also draws a boundary by directing deposit-address creation to the web dashboard, preventing misuse. It does not explicitly name a sibling alternative, though no sibling is a true substitute.

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

get_notificationsA
Read-only
Inspect

Read your account messages: support, billing, and account notices. With no arguments you get the ten most recent in each group, each with a cursor; pass a category and cursor to page further back. It's read-only and free, and it never marks anything as read. Security alerts aren't available here, and any group you've switched off for API access won't show up.

ParametersJSON Schema
NameRequiredDescriptionDefault
cursorNoOpaque pagination cursor from a previous nextCursor (requires category).
categoryNoDrill into one category.

TDQS

A5/5.0
Behavior5/5

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

Goes well beyond the readOnlyHint annotation by confirming the operation is free, never marks anything as read, and has specific pagination behavior. This is especially valuable for a notifications tool, where side effects like marking messages read would be a real concern.

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

Conciseness5/5

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

Four sentences, each earns its place: purpose, default behavior, pagination, and exclusions. The most important information is front-loaded and there is no filler or repetition of schema details.

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

Completeness5/5

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

Despite having no output schema, the description sufficiently explains return shape (ten per group with cursors), pagination mechanics, side-effect guarantees, and access limitations. An agent has everything needed to invoke the tool correctly.

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

Parameters5/5

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

The schema only describes an opaque cursor and category enum, but the description explains the default no-argument behavior, how category and cursor combine to page, and that each group returns cursors for further paging. This adds meaningful usage semantics beyond the schema.

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

Purpose5/5

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

Description opens with a specific verb and resource ('Read your account messages') and enumerates exact content groups: support, billing, and account notices. It also states an exclusion (no security alerts), making the tool's scope unambiguous relative to siblings about phases, balance, and usage.

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

Usage Guidelines5/5

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

Gives concrete calling instructions: no arguments returns the ten most recent in each group, while passing a category and cursor pages further back. It also says when not to use it, noting security alerts aren't available and disabled groups won't appear.

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

get_phaseA
Read-only
Inspect

Get the current market phase for one coin, across a timeframe. This is a paid call. Set kind to 'boundary' for the reading from the last closed bar, which is settled and won't change, or 'updates' for the live reading still forming inside the current bar. Leave tf off, or set it to 'all', for every timeframe.

ParametersJSON Schema
NameRequiredDescriptionDefault
tfNoTimeframe; omit or 'all' for every enabled timeframe.
kindYes'boundary' = the settled reading from the last closed bar; 'updates' = the live reading still forming in the current bar.
currencyYesThe currency to classify. Call list_phase_meta for the enabled set.

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the readOnlyHint annotation, the description discloses that this is a paid call and explains the stability difference between the settled 'boundary' reading and the still-forming 'updates' reading. This is valuable behavioral context that annotations alone do not provide.

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

Conciseness5/5

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

Three tightly written sentences with no filler. The main purpose is front-loaded, followed by the most important behavioral caveat (paid call) and then precise parameter instructions.

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

Completeness5/5

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

For a low-complexity read-only tool, the description covers the essential decisions: which kind to request, how to select timeframes, and that the call is paid. With annotations carrying the read-only safety profile and the schema covering parameters, nothing critical is missing for correct invocation.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents currency, kind, and tf. The description repeats and reinforces the kind and tf semantics, but does not add substantial new meaning beyond what the schema provides.

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

Purpose5/5

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

The description clearly states a specific verb ('Get') and resource ('current market phase for one coin, across a timeframe'), and the scope 'one coin' distinguishes it from sibling list tooling like list_phase_meta and compose_phases. The kind/tf semantics further pin down exactly what the tool returns.

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

Usage Guidelines4/5

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

The description gives detailed operational guidance: when to use 'boundary' versus 'updates', and how to handle 'tf' for all timeframes. It does not explicitly name alternatives or say when not to use this tool, but the context is clear 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.

get_usageA
Read-only
Inspect

Your history of paid calls, newest first. For each one it shows which tool you used, the coins and timeframes, how much data came back, and what it cost. Free. Page back through older calls with before, using the cursor the previous page returned.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoRows per page (1–200, default 50).
beforeNoid cursor from a previous page's nextBefore (older rows).

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, and the description adds meaningful behavioral context: newest-first ordering, the returned fields, the free cost, and the cursor-based pagination mechanism. This goes beyond the structured annotation information.

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

Conciseness5/5

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

Three compact sentences, each adding value: what the history contains, the free nature, and how pagination works. Nothing is wasted or redundant with the schema.

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

Completeness5/5

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

For a low-complexity, read-only paginated listing tool with a fully self-documenting schema, the description is sufficient. It states what the output shows, the ordering, the cost, and how to page through older results, so nothing an agent needs to call it correctly is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents limit and before. The description restates the pagination cursor concept but adds no new parameter-level details beyond what the schema provides, so the baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly identifies the resource ('your history of paid calls') and the ordering ('newest first'), and it enumerates the useful output fields. This is enough to distinguish it from sibling tools like get_balance or get_notifications without needing to inspect their schemas.

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

Usage Guidelines4/5

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

It gives clear context on when this tool is relevant: checking paid-call history, with free access and pagination. It doesn't explicitly name alternatives or exclusions, but the sibling tools are clearly in different domains, so no strong alternative-routing is needed.

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

list_phase_metaA
Read-only
Inspect

The tool to call first, and it's free with no account. Lists the phases the model can report, the timeframes and currencies covered, and a short card for each phase explaining what it means and what tends to come next. Also returns the current pricing, so you can work out what a paid call costs before you make one.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already carry readOnlyHint=true; the description adds genuinely useful behavior beyond that: no account required, free execution, and a pricing payload that enables cost estimation before paid calls. The return contents (phases, timeframes, currencies, cards) are also disclosed.

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

Conciseness5/5

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

Three compact sentences with no waste: the first front-loads the ordering directive and free/no-account facts, the second enumerates the returned content, and the third explains the pricing utility. Every sentence earns its place.

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

Completeness4/5

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

For a zero-parameter read-only tool with no output schema, the description covers what the call returns and why to call it, which is nearly complete. The only gap is the concrete response structure, and no output schema exists to compensate.

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

Parameters4/5

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

The tool has zero parameters, so the schema trivially covers 100% and the baseline is 4. The description's note that the call is free with no account reinforces that no authentication or arguments are prerequisites.

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

Purpose5/5

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

States a specific verb (lists) and resource (phase metadata: phases, timeframes, currencies, per-phase explanation cards, and pricing). The 'tool to call first' framing positions it as the metadata entry point, distinguishing it from siblings like get_phase and compose_phases.

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

Usage Guidelines4/5

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

Explicitly instructs the agent to call it first and notes it is free with no account, and positions pricing as the way to estimate paid-call costs before spending. It gives clear ordering context but never names alternatives or states when not to use it.

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

phase_resolution_statsA
Read-only
Inspect

Free, and how you read meaning into a phase. For each one it shows what usually happens next, how often a trend keeps running, and how the typical move rewarded you against how far it drew down first. Every figure comes with the number of past cases behind it. It's a behavior model built from years of Bitcoin history, not live per-coin data, so pair it with get_phase.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/5.0
Behavior4/5

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

With readOnlyHint=true, the description still adds meaningful behavioral context by disclosing that the statistics are derived from years of Bitcoin history rather than live data, and that every figure includes a case count. This helps the agent interpret the results appropriately. No contradiction with the annotation is present.

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

Conciseness3/5

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

Most sentences earn their place by describing output semantics, data source, and pairing guidance. However, the first sentence 'Free, and how you read meaning into a phase' is unclear and adds noise. The rest is reasonably compact, but the opener prevents a higher structure score.

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 read-only, zero-parameter tool, the description covers the essential context: what each statistic represents, the historical basis, the distinction from live data, and the recommendation to pair it with get_phase. It does not describe an exact return format, but since there is no output schema and no parameters, this is a minor gap rather than a blocking one.

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 no parameter burden for the description to carry. Schema coverage is 100%, and the baseline for a zero-parameter tool is 4. The description appropriately focuses on behavior and output meaning instead.

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 lists concrete outputs: what usually happens next, trend continuation frequency, reward vs. drawdown, and sample sizes, which makes the tool's purpose specific and more than a tautology. It also positions it as a phase behavior model rather than live per-coin data. However, the opening phrase 'Free, and how you read meaning into a phase' is awkward and does not crisply differentiate it from siblings like list_phase_meta or compose_phases.

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

Usage Guidelines4/5

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

The description gives clear usage context: it is a historical behavior model, not live per-coin data, and should be paired with get_phase. This tells the agent when to rely on it and what complementary tool to use. It does not explicitly list exclusions or compare against all sibling tools, so it stops short of a 5.

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. Dates show when Glama detected each change.

  1. 8 tool updates
    • First observedcompose_phases
    • First observeddeposit_poll
    • First observedget_balance
    • First observedget_notifications
    • First observedget_phase
    • First observedget_usage
    • First observedlist_phase_meta
    • First observedphase_resolution_stats

Frequently Asked Questions

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Hourly news sentiment and typed market events (hack, regulation, listing, delisting, legal) for 30 crypto pairs, with source links on every signal. Four tools cover the latest score per symbol, history, classified events and the symbol list, and a free API key works out of the box
    4
    27
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Provides live cryptocurrency market data including spot prices, OHLCV candles, order books, funding rates, and technical indicators via public exchange APIs.
    8
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.4/5.0
Disambiguation5/5

Each tool has a distinct role: account/billing tools (balance, usage, notifications, deposit poll) are clearly separated from market-data tools (single phase, batch phases, phase metadata, phase stats). Even get_phase and compose_phases are differentiated by single-coin/single-timeframe vs multi-coin/multi-timeframe, and the descriptions make that boundary explicit.

Naming Consistency4/5

Most tools follow a get_ or verb_noun pattern (get_balance, get_phase, get_usage, compose_phases, deposit_poll), but 'phase_resolution_stats' breaks the pattern by lacking a verb, and 'compose_phases' vs 'get_phase' uses different verbs for closely related operations. The naming is still readable and predictable overall.

Tool Count5/5

Eight tools is well-scoped for this server: four handle the paid signal-reading workflow and four handle account/billing support around it. There are no redundant or throwaway tools, and each one earns its place.

Completeness5/5

The server covers the full workflow: discover what phases exist and pricing (list_phase_meta), get current readings (get_phase/compose_phases), interpret them (phase_resolution_stats), and manage the prepaid account (get_balance, get_usage, get_notifications, deposit_poll). No obvious dead ends or missing operations for the stated purpose.

Resources